diff options
Diffstat (limited to '')
-rw-r--r-- | module/hnh/util/path.scm | 1 | ||||
-rw-r--r-- | scripts/all-modules.scm | 12 |
2 files changed, 12 insertions, 1 deletions
diff --git a/module/hnh/util/path.scm b/module/hnh/util/path.scm index ed2d9f24..b0991073 100644 --- a/module/hnh/util/path.scm +++ b/module/hnh/util/path.scm @@ -16,6 +16,7 @@ (define path-absolute? absolute-file-name?) +;; TODO remove intermidiate period components (define (path-append . strings) (fold (lambda (s done) (string-append diff --git a/scripts/all-modules.scm b/scripts/all-modules.scm index 613f9db2..23bbb32d 100644 --- a/scripts/all-modules.scm +++ b/scripts/all-modules.scm @@ -8,7 +8,9 @@ :use-module ((static-util) :select (get-forms)) :export (all-files-and-modules-under-directory all-modules-under-directory - fs-find-base fs-find)) + fs-find-base fs-find + module-file-mapping + )) (define (fs-find dir) (define files '()) @@ -43,3 +45,11 @@ level modules in those files" (values (map car pairs) (filter identity (map cadr pairs)))) + +;; Returns an association list from module names the modules +;; containing filename +(define (module-file-mapping dir) + (filter + car + (map (lambda (pair) (cons (cadr pair) (car pair))) + (all-files-and-modules-under-directory dir)))) |