-
-
Notifications
You must be signed in to change notification settings - Fork 1
/
ts.scm
25 lines (23 loc) · 874 Bytes
/
ts.scm
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
(define-module (ts))
(eval-when (eval load compile)
(begin
(define %public-modules
'((ts init)
(ts util)
(ts parser)
(ts tree)
(ts language)
(ts query)))
(let* ((current-module (current-module))
(current-module-interface (resolve-interface (module-name current-module))))
(for-each
(lambda (submodule)
(let ((submodule-interface (resolve-interface submodule)))
(module-use! current-module submodule-interface)
(module-use! current-module-interface submodule-interface)))
%public-modules)
(set-module-duplicates-handlers!
current-module-interface
(append (lookup-duplicates-handlers 'merge-accessors)
(lookup-duplicates-handlers 'merge-generics)
(module-duplicates-handlers current-module-interface))))))