From c94826dddb66c576cb929894fd9010b2d507d2e3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dominik=20Pant=C5=AF=C4=8Dek?= Date: Wed, 29 Mar 2023 20:37:30 +0200 Subject: [PATCH] Move more into dir. --- Makefile | 5 +++-- members-base.scm | 15 +++------------ members-dir.scm | 15 ++++++++++++++- 3 files changed, 20 insertions(+), 15 deletions(-) diff --git a/Makefile b/Makefile index 3d01976..44ac26b 100644 --- a/Makefile +++ b/Makefile @@ -218,8 +218,9 @@ member-fees.so: member-fees.o member-fees.o: member-fees.import.scm member-fees.import.scm: $(MEMBER-FEES-SOURCES) -MEMBERS-DIR-SOURCES=members-dir.scm testing.import.scm \ - dictionary.import.scm utils.import.scm +MEMBERS-DIR-SOURCES=members-dir.scm testing.import.scm \ + dictionary.import.scm utils.import.scm \ + member-record.import.scm member-parser.import.scm members-dir.so: members-dir.o members-dir.o: members-dir.import.scm diff --git a/members-base.scm b/members-base.scm index f08612a..b51e2b6 100644 --- a/members-base.scm +++ b/members-base.scm @@ -64,15 +64,6 @@ table members-dir) - ;; Returns a dictionary containing file-name, symlinks, id and info - ;; keys. The info key contains whatever load-member-file from the - ;; member-file module returns. The id key contains whatever is the - ;; first 4-digit symbol in (cons fname aliases) list. - (define (members-base-load-member mdir fname symlinks) - (let* ((mr0 (make-member-record fname - (make-pathname mdir (symbol->string fname)) - symlinks))) - (load-member-file mr0))) ;; Loads members database, if the second argument is true, shows ;; progress. Members database is a dictionary with id being the key @@ -87,9 +78,9 @@ (lambda (symfn symlinks) (when progress? (progress-advance ".")) - (members-base-load-member dn - symfn - symlinks)) + (members-dir-load-member dn + symfn + symlinks)) fss)) (mb1 (dict-reduce (make-dict) (lambda (acc symfn mr) diff --git a/members-dir.scm b/members-dir.scm index e59ee9b..cb4d72d 100644 --- a/members-dir.scm +++ b/members-dir.scm @@ -29,6 +29,7 @@ members-dir ( load-members-dir + members-dir-load-member members-dir-tests! ) @@ -41,7 +42,9 @@ (chicken irregex) testing dictionary - utils) + utils + member-record + member-parser) ;; Gets all files and symbolic links from given directory. The ;; symbolic links are represented by cons cells with car being the @@ -141,6 +144,16 @@ (files+symlinks->files-dictionary (get-files+symlinks dn)))) + ;; Returns a dictionary containing file-name, symlinks, id and info + ;; keys. The info key contains whatever load-member-file from the + ;; member-file module returns. The id key contains whatever is the + ;; first 4-digit symbol in (cons fname aliases) list. + (define (members-dir-load-member mdir fname symlinks) + (let* ((mr0 (make-member-record fname + (make-pathname mdir (symbol->string fname)) + symlinks))) + (load-member-file mr0))) + ;; Performs self-tests of this module. (define (members-dir-tests!) (run-tests