diff options
| author | 2021-08-22 20:54:14 +0300 | |
|---|---|---|
| committer | 2021-08-22 20:54:14 +0300 | |
| commit | e943ef133b857839bd5d9cdc2197fe7f03a09349 (patch) | |
| tree | ad0cc4ddd3ddd9d237f25f6e9f68bcbbd9049dd1 /srfi | |
| parent | clean up (diff) | |
| parent | typo, -comparator can return #f (diff) | |
merge, add unfold
Diffstat (limited to 'srfi')
| l--------- | srfi/225.scm | 1 | ||||
| -rw-r--r-- | srfi/225.sld | 92 | ||||
| -rw-r--r-- | srfi/alist-impl.scm | 31 | ||||
| -rw-r--r-- | srfi/default-impl.scm | 113 | ||||
| -rw-r--r-- | srfi/externals.scm | 99 | ||||
| -rw-r--r-- | srfi/indexes.scm | 101 | ||||
| -rw-r--r-- | srfi/plist-impl.scm | 29 | ||||
| -rw-r--r-- | srfi/srfi-125-impl.scm | 58 | ||||
| -rw-r--r-- | srfi/srfi-126-impl.scm | 54 | ||||
| -rw-r--r-- | srfi/srfi-146-hash-impl.scm | 82 | ||||
| -rw-r--r-- | srfi/srfi-146-impl.scm | 82 | ||||
| -rw-r--r-- | srfi/srfi-69-impl.scm | 42 |
12 files changed, 394 insertions, 390 deletions
diff --git a/srfi/225.scm b/srfi/225.scm deleted file mode 120000 index 74d5e72..0000000 --- a/srfi/225.scm +++ /dev/null @@ -1 +0,0 @@ -225.sld
\ No newline at end of file diff --git a/srfi/225.sld b/srfi/225.sld index 53bc68f..f44f3ab 100644 --- a/srfi/225.sld +++ b/srfi/225.sld @@ -15,6 +15,7 @@ ;; constructor make-dictionary + dict-unfold ;; predicates dictionary? @@ -82,51 +83,52 @@ dictionary-irritants ;; proc indeces - make-dictionary-index - dictionary?-index - dict-empty?-index - dict-contains?-index - dict-ref-index - dict-ref/default-index - dict-set-index - dict-set!-index - dict-adjoin-index - dict-adjoin!-index - dict-delete-index - dict-delete!-index - dict-delete-all-index - dict-delete-all!-index - dict-replace-index - dict-replace!-index - dict-intern-index - dict-intern!-index - dict-update-index - dict-update!-index - dict-update/default-index - dict-update/default!-index - dict-pop-index - dict-pop!-index - dict-map-index - dict-map!-index - dict-filter-index - dict-filter!-index - dict-remove-index - dict-remove!-index - dict-search-index - dict-search!-index - dict-copy-index - dict-size-index - dict-for-each-index - dict-count-index - dict-any-index - dict-every-index - dict-keys-index - dict-values-index - dict-entries-index - dict-fold-index - dict-map->list-index - dict->alist-index - dict-comparator-index + make-dictionary-id + dict-unfold-id + dictionary?-id + dict-empty?-id + dict-contains?-id + dict-ref-id + dict-ref/default-id + dict-set-id + dict-set!-id + dict-adjoin-id + dict-adjoin!-id + dict-delete-id + dict-delete!-id + dict-delete-all-id + dict-delete-all!-id + dict-replace-id + dict-replace!-id + dict-intern-id + dict-intern!-id + dict-update-id + dict-update!-id + dict-update/default-id + dict-update/default!-id + dict-pop-id + dict-pop!-id + dict-map-id + dict-map!-id + dict-filter-id + dict-filter!-id + dict-remove-id + dict-remove!-id + dict-search-id + dict-search!-id + dict-copy-id + dict-size-id + dict-for-each-id + dict-count-id + dict-any-id + dict-every-id + dict-keys-id + dict-values-id + dict-entries-id + dict-fold-id + dict-map->list-id + dict->alist-id + dict-comparator-id ;; basic DTDs plist-dtd diff --git a/srfi/alist-impl.scm b/srfi/alist-impl.scm index e64dc97..59fac7b 100644 --- a/srfi/alist-impl.scm +++ b/srfi/alist-impl.scm @@ -106,25 +106,22 @@ (alist-copy dtd alist)) (define (alist-comparator dtd dictionary) - (make-comparator (lambda args #t) - key= - #f - #f)) + #f) (make-dtd - make-dictionary-index make-alist - dictionary?-index alist? - dict-map-index alist-map - dict-map!-index alist-map! - dict-filter-index alist-filter - dict-filter!-index alist-filter! - dict-search-index alist-search - dict-search!-index alist-search! - dict-size-index alist-size - dict-for-each-index alist-foreach - dict->alist-index alist->alist - dict-comparator-index alist-comparator - dict-copy-index alist-copy)) + make-dictionary-id make-alist + dictionary?-id alist? + dict-map-id alist-map + dict-map!-id alist-map! + dict-filter-id alist-filter + dict-filter!-id alist-filter! + dict-search-id alist-search + dict-search!-id alist-search! + dict-size-id alist-size + dict-for-each-id alist-foreach + dict->alist-id alist->alist + dict-comparator-id alist-comparator + dict-copy-id alist-copy)) (define alist-eqv-dtd (make-alist-dtd eqv?)) (define alist-equal-dtd (make-alist-dtd equal?)) diff --git a/srfi/default-impl.scm b/srfi/default-impl.scm index dfd3f58..2be8c98 100644 --- a/srfi/default-impl.scm +++ b/srfi/default-impl.scm @@ -15,6 +15,17 @@ (define default-dict-search! (not-implemented "dict-search!")) (define default-dict-for-each (not-implemented "dict-for-each")) + (define (default-dict-unfold dtd comparator stop? mapper successor seed) + (let loop ((dict (make-dictionary dtd comparator)) + (seed seed)) + (if (stop? seed) + dict + (let () + (define-values (key value) (mapper seed)) + (define new-seed (successor seed)) + (loop (dict-set! dtd dict key value) + new-seed))))) + (define (default-dict-empty? dtd dictionary) (= 0 (dict-size dtd dictionary))) @@ -218,17 +229,8 @@ (define (default-dict-remove! dtd pred dictionary) (default-dict-remove* dtd dict-filter! pred dictionary)) - (define (create-fresh-dict-from-existing dtd dictionary) - (call/cc - (lambda (k) - (with-exception-handler - (lambda (err) - (k (make-dictionary dtd #f))) - (lambda () - (make-dictionary dtd (dict-comparator dictionary))))))) - (define (default-dict-copy dtd dictionary) - (define dict (create-fresh-dict-from-existing dtd dictionary)) + (define dict (make-dictionary dtd (dict-comparator dtd dictionary))) (dict-for-each dtd (lambda (key value) (set! dict (dict-set! dtd dict key value))) @@ -324,51 +326,52 @@ (define default-dtd (make-modified-dtd null-dtd - make-dictionary-index default-make-dictionary - dictionary?-index default-dictionary? - dict-empty?-index default-dict-empty? - dict-contains?-index default-dict-contains? - dict-ref-index default-dict-ref - dict-ref/default-index default-dict-ref/default - dict-set-index default-dict-set - dict-set!-index default-dict-set! - dict-adjoin-index default-dict-adjoin - dict-adjoin!-index default-dict-adjoin! - dict-delete-index default-dict-delete - dict-delete!-index default-dict-delete! - dict-delete-all-index default-dict-delete-all - dict-delete-all!-index default-dict-delete-all! - dict-replace-index default-dict-replace - dict-replace!-index default-dict-replace! - dict-intern-index default-dict-intern - dict-intern!-index default-dict-intern! - dict-update-index default-dict-update - dict-update!-index default-dict-update! - dict-update/default-index default-dict-update/default - dict-update/default!-index default-dict-update/default! - dict-pop-index default-dict-pop - dict-pop!-index default-dict-pop! - dict-map-index default-dict-map - dict-map!-index default-dict-map! - dict-filter-index default-dict-filter - dict-filter!-index default-dict-filter! - dict-remove-index default-dict-remove - dict-remove!-index default-dict-remove! - dict-search-index default-dict-search - dict-search!-index default-dict-search! - dict-copy-index default-dict-copy - dict-size-index default-dict-size - dict-for-each-index default-dict-for-each - dict-count-index default-dict-count - dict-any-index default-dict-any - dict-every-index default-dict-every - dict-keys-index default-dict-keys - dict-values-index default-dict-values - dict-entries-index default-dict-entries - dict-fold-index default-dict-fold - dict-map->list-index default-dict-map->list - dict->alist-index default-dict->alist - dict-comparator-index default-dict-comparator)) + make-dictionary-id default-make-dictionary + dict-unfold-id default-dict-unfold + dictionary?-id default-dictionary? + dict-empty?-id default-dict-empty? + dict-contains?-id default-dict-contains? + dict-ref-id default-dict-ref + dict-ref/default-id default-dict-ref/default + dict-set-id default-dict-set + dict-set!-id default-dict-set! + dict-adjoin-id default-dict-adjoin + dict-adjoin!-id default-dict-adjoin! + dict-delete-id default-dict-delete + dict-delete!-id default-dict-delete! + dict-delete-all-id default-dict-delete-all + dict-delete-all!-id default-dict-delete-all! + dict-replace-id default-dict-replace + dict-replace!-id default-dict-replace! + dict-intern-id default-dict-intern + dict-intern!-id default-dict-intern! + dict-update-id default-dict-update + dict-update!-id default-dict-update! + dict-update/default-id default-dict-update/default + dict-update/default!-id default-dict-update/default! + dict-pop-id default-dict-pop + dict-pop!-id default-dict-pop! + dict-map-id default-dict-map + dict-map!-id default-dict-map! + dict-filter-id default-dict-filter + dict-filter!-id default-dict-filter! + dict-remove-id default-dict-remove + dict-remove!-id default-dict-remove! + dict-search-id default-dict-search + dict-search!-id default-dict-search! + dict-copy-id default-dict-copy + dict-size-id default-dict-size + dict-for-each-id default-dict-for-each + dict-count-id default-dict-count + dict-any-id default-dict-any + dict-every-id default-dict-every + dict-keys-id default-dict-keys + dict-values-id default-dict-values + dict-entries-id default-dict-entries + dict-fold-id default-dict-fold + dict-map->list-id default-dict-map->list + dict->alist-id default-dict->alist + dict-comparator-id default-dict-comparator)) ;; sanity check (vector-for-each diff --git a/srfi/externals.scm b/srfi/externals.scm index 34c8450..14c5a4d 100644 --- a/srfi/externals.scm +++ b/srfi/externals.scm @@ -24,10 +24,11 @@ (assume (dtd? dtd)) (apply (dtd-ref-stx dtd index) dtd args))))) -(define/dict-proc make-dictionary make-dictionary-index) -(define/dict-proc dictionary? dictionary?-index) -(define/dict-proc dict-empty? dict-empty?-index) -(define/dict-proc dict-contains? dict-contains?-index) +(define/dict-proc make-dictionary make-dictionary-id) +(define/dict-proc dict-unfold dict-unfold-id) +(define/dict-proc dictionary? dictionary?-id) +(define/dict-proc dict-empty? dict-empty?-id) +(define/dict-proc dict-contains? dict-contains?-id) (define dict-ref (case-lambda @@ -41,21 +42,21 @@ ((dtd dict key failure success) (assume (dtd? dtd)) - ((dtd-ref-stx dtd dict-ref-index) dtd dict key failure success)))) - -(define/dict-proc dict-ref/default dict-ref/default-index) -(define/dict-proc dict-set dict-set-index) -(define/dict-proc dict-set! dict-set!-index) -(define/dict-proc dict-adjoin dict-adjoin-index) -(define/dict-proc dict-adjoin! dict-adjoin!-index) -(define/dict-proc dict-delete dict-delete-index) -(define/dict-proc dict-delete! dict-delete!-index) -(define/dict-proc dict-delete-all dict-delete-all-index) -(define/dict-proc dict-delete-all! dict-delete-all!-index) -(define/dict-proc dict-replace dict-replace-index) -(define/dict-proc dict-replace! dict-replace!-index) -(define/dict-proc dict-intern dict-intern-index) -(define/dict-proc dict-intern! dict-intern!-index) + ((dtd-ref-stx dtd dict-ref-id) dtd dict key failure success)))) + +(define/dict-proc dict-ref/default dict-ref/default-id) +(define/dict-proc dict-set dict-set-id) +(define/dict-proc dict-set! dict-set!-id) +(define/dict-proc dict-adjoin dict-adjoin-id) +(define/dict-proc dict-adjoin! dict-adjoin!-id) +(define/dict-proc dict-delete dict-delete-id) +(define/dict-proc dict-delete! dict-delete!-id) +(define/dict-proc dict-delete-all dict-delete-all-id) +(define/dict-proc dict-delete-all! dict-delete-all!-id) +(define/dict-proc dict-replace dict-replace-id) +(define/dict-proc dict-replace! dict-replace!-id) +(define/dict-proc dict-intern dict-intern-id) +(define/dict-proc dict-intern! dict-intern!-id) (define dict-update (case-lambda @@ -69,7 +70,7 @@ ((dtd dict key updater failure success) (assume (dtd? dtd)) - ((dtd-ref-stx dtd dict-update-index) dtd dict key updater failure success)))) + ((dtd-ref-stx dtd dict-update-id) dtd dict key updater failure success)))) (define dict-update! (case-lambda @@ -83,33 +84,33 @@ ((dtd dict key updater failure success) (assume (dtd? dtd)) - ((dtd-ref-stx dtd dict-update!-index) dtd dict key updater failure success)))) - -(define/dict-proc dict-update/default dict-update/default-index) -(define/dict-proc dict-update/default! dict-update/default!-index) -(define/dict-proc dict-pop dict-pop-index) -(define/dict-proc dict-pop! dict-pop!-index) -(define/dict-proc dict-map dict-map-index) -(define/dict-proc dict-map! dict-map!-index) -(define/dict-proc dict-filter dict-filter-index) -(define/dict-proc dict-filter! dict-filter!-index) -(define/dict-proc dict-remove dict-remove-index) -(define/dict-proc dict-remove! dict-remove!-index) -(define/dict-proc dict-search dict-search-index) -(define/dict-proc dict-search! dict-search!-index) -(define/dict-proc dict-copy dict-copy-index) -(define/dict-proc dict-size dict-size-index) -(define/dict-proc dict-for-each dict-for-each-index) -(define/dict-proc dict-count dict-count-index) -(define/dict-proc dict-any dict-any-index) -(define/dict-proc dict-every dict-every-index) -(define/dict-proc dict-keys dict-keys-index) -(define/dict-proc dict-values dict-values-index) -(define/dict-proc dict-entries dict-entries-index) -(define/dict-proc dict-fold dict-fold-index) -(define/dict-proc dict-map->list dict-map->list-index) -(define/dict-proc dict->alist dict->alist-index) -(define/dict-proc dict-comparator dict-comparator-index) + ((dtd-ref-stx dtd dict-update!-id) dtd dict key updater failure success)))) + +(define/dict-proc dict-update/default dict-update/default-id) +(define/dict-proc dict-update/default! dict-update/default!-id) +(define/dict-proc dict-pop dict-pop-id) +(define/dict-proc dict-pop! dict-pop!-id) +(define/dict-proc dict-map dict-map-id) +(define/dict-proc dict-map! dict-map!-id) +(define/dict-proc dict-filter dict-filter-id) +(define/dict-proc dict-filter! dict-filter!-id) +(define/dict-proc dict-remove dict-remove-id) +(define/dict-proc dict-remove! dict-remove!-id) +(define/dict-proc dict-search dict-search-id) +(define/dict-proc dict-search! dict-search!-id) +(define/dict-proc dict-copy dict-copy-id) +(define/dict-proc dict-size dict-size-id) +(define/dict-proc dict-for-each dict-for-each-id) +(define/dict-proc dict-count dict-count-id) +(define/dict-proc dict-any dict-any-id) +(define/dict-proc dict-every dict-every-id) +(define/dict-proc dict-keys dict-keys-id) +(define/dict-proc dict-values dict-values-id) +(define/dict-proc dict-entries dict-entries-id) +(define/dict-proc dict-fold dict-fold-id) +(define/dict-proc dict-map->list dict-map->list-id) +(define/dict-proc dict->alist dict->alist-id) +(define/dict-proc dict-comparator dict-comparator-id) (define (dtd-ref dtd procindex) (dtd-ref-stx dtd procindex)) @@ -120,11 +121,11 @@ ((null? lst)) (when (null? (cdr lst)) (error "Uneven amount of arguments" lst)) - (let ((proc-index (car lst)) + (let ((proc-id (car lst)) (proc (cadr lst))) (unless (procedure? proc) (error "Not a procedure" proc)) - (vector-set! vec proc-index proc))) + (vector-set! vec proc-id proc))) (make-dtd-private vec)) (define (make-dtd . lst) diff --git a/srfi/indexes.scm b/srfi/indexes.scm index da99b57..958f5a0 100644 --- a/srfi/indexes.scm +++ b/srfi/indexes.scm @@ -1,53 +1,54 @@ ;; procedure index definitions -(define proc-index 0) -(define (proc-index-inc) - (define v proc-index) - (set! proc-index (+ 1 proc-index)) +(define proc-id 0) +(define (proc-id-inc) + (define v proc-id) + (set! proc-id (+ 1 proc-id)) v) -(define make-dictionary-index (proc-index-inc)) -(define dictionary?-index (proc-index-inc)) -(define dict-empty?-index (proc-index-inc)) -(define dict-contains?-index (proc-index-inc)) -(define dict-ref-index (proc-index-inc)) -(define dict-ref/default-index (proc-index-inc)) -(define dict-set-index (proc-index-inc)) -(define dict-set!-index (proc-index-inc)) -(define dict-adjoin-index (proc-index-inc)) -(define dict-adjoin!-index (proc-index-inc)) -(define dict-delete-index (proc-index-inc)) -(define dict-delete!-index (proc-index-inc)) -(define dict-delete-all-index (proc-index-inc)) -(define dict-delete-all!-index (proc-index-inc)) -(define dict-replace-index (proc-index-inc)) -(define dict-replace!-index (proc-index-inc)) -(define dict-intern-index (proc-index-inc)) -(define dict-intern!-index (proc-index-inc)) -(define dict-update-index (proc-index-inc)) -(define dict-update!-index (proc-index-inc)) -(define dict-update/default-index (proc-index-inc)) -(define dict-update/default!-index (proc-index-inc)) -(define dict-pop-index (proc-index-inc)) -(define dict-pop!-index (proc-index-inc)) -(define dict-map-index (proc-index-inc)) -(define dict-map!-index (proc-index-inc)) -(define dict-filter-index (proc-index-inc)) -(define dict-filter!-index (proc-index-inc)) -(define dict-remove-index (proc-index-inc)) -(define dict-remove!-index (proc-index-inc)) -(define dict-search-index (proc-index-inc)) -(define dict-search!-index (proc-index-inc)) -(define dict-copy-index (proc-index-inc)) -(define dict-size-index (proc-index-inc)) -(define dict-for-each-index (proc-index-inc)) -(define dict-count-index (proc-index-inc)) -(define dict-any-index (proc-index-inc)) -(define dict-every-index (proc-index-inc)) -(define dict-keys-index (proc-index-inc)) -(define dict-values-index (proc-index-inc)) -(define dict-entries-index (proc-index-inc)) -(define dict-fold-index (proc-index-inc)) -(define dict-map->list-index (proc-index-inc)) -(define dict->alist-index (proc-index-inc)) -(define dict-comparator-index (proc-index-inc)) -(define dict-procedures-count (proc-index-inc)) +(define make-dictionary-id (proc-id-inc)) +(define dict-unfold-id (proc-id-inc)) +(define dictionary?-id (proc-id-inc)) +(define dict-empty?-id (proc-id-inc)) +(define dict-contains?-id (proc-id-inc)) +(define dict-ref-id (proc-id-inc)) +(define dict-ref/default-id (proc-id-inc)) +(define dict-set-id (proc-id-inc)) +(define dict-set!-id (proc-id-inc)) +(define dict-adjoin-id (proc-id-inc)) +(define dict-adjoin!-id (proc-id-inc)) +(define dict-delete-id (proc-id-inc)) +(define dict-delete!-id (proc-id-inc)) +(define dict-delete-all-id (proc-id-inc)) +(define dict-delete-all!-id (proc-id-inc)) +(define dict-replace-id (proc-id-inc)) +(define dict-replace!-id (proc-id-inc)) +(define dict-intern-id (proc-id-inc)) +(define dict-intern!-id (proc-id-inc)) +(define dict-update-id (proc-id-inc)) +(define dict-update!-id (proc-id-inc)) +(define dict-update/default-id (proc-id-inc)) +(define dict-update/default!-id (proc-id-inc)) +(define dict-pop-id (proc-id-inc)) +(define dict-pop!-id (proc-id-inc)) +(define dict-map-id (proc-id-inc)) +(define dict-map!-id (proc-id-inc)) +(define dict-filter-id (proc-id-inc)) +(define dict-filter!-id (proc-id-inc)) +(define dict-remove-id (proc-id-inc)) +(define dict-remove!-id (proc-id-inc)) +(define dict-search-id (proc-id-inc)) +(define dict-search!-id (proc-id-inc)) +(define dict-copy-id (proc-id-inc)) +(define dict-size-id (proc-id-inc)) +(define dict-for-each-id (proc-id-inc)) +(define dict-count-id (proc-id-inc)) +(define dict-any-id (proc-id-inc)) +(define dict-every-id (proc-id-inc)) +(define dict-keys-id (proc-id-inc)) +(define dict-values-id (proc-id-inc)) +(define dict-entries-id (proc-id-inc)) +(define dict-fold-id (proc-id-inc)) +(define dict-map->list-id (proc-id-inc)) +(define dict->alist-id (proc-id-inc)) +(define dict-comparator-id (proc-id-inc)) +(define dict-procedures-count (proc-id-inc)) diff --git a/srfi/plist-impl.scm b/srfi/plist-impl.scm index dbec747..e283c8e 100644 --- a/srfi/plist-impl.scm +++ b/srfi/plist-impl.scm @@ -103,21 +103,18 @@ (loop (cddr pl)))))) (define (plist-comparator dtd plist) - (make-comparator symbol? - equal? - #f - #f)) + #f) (make-dtd - make-dictionary-index make-plist - dictionary?-index plist? - dict-map-index plist-map - dict-map!-index plist-map! - dict-filter-index plist-filter - dict-filter!-index plist-filter! - dict-search-index plist-search - dict-search!-index plist-search! - dict-copy-index plist-copy - dict-size-index plist-size - dict-for-each-index plist-foreach - dict-comparator-index plist-comparator))) + make-dictionary-id make-plist + dictionary?-id plist? + dict-map-id plist-map + dict-map!-id plist-map! + dict-filter-id plist-filter + dict-filter!-id plist-filter! + dict-search-id plist-search + dict-search!-id plist-search! + dict-copy-id plist-copy + dict-size-id plist-size + dict-for-each-id plist-foreach + dict-comparator-id plist-comparator))) diff --git a/srfi/srfi-125-impl.scm b/srfi/srfi-125-impl.scm index 61863b5..d735f95 100644 --- a/srfi/srfi-125-impl.scm +++ b/srfi/srfi-125-impl.scm @@ -129,32 +129,32 @@ (t125:hash-table-ref/default table key default)) (make-dtd - make-dictionary-index t125:make-hash-table* - dictionary?-index t125:hash-table?* - dict-empty?-index t125:hash-table-empty?* - dict-contains?-index t125:hash-table-contains?* - dict-ref-index t125:hash-table-ref* - dict-ref/default-index t125:hash-table-ref/default* - dict-set!-index t125:hash-table-set!* - dict-delete-all!-index t125:hash-table-delete-all!* - dict-intern!-index t125:hash-table-intern!* - dict-update!-index t125:hash-table-update!* - dict-update/default!-index t125:hash-table-update!/default* - dict-pop!-index t125:hash-table-pop!* - dict-map!-index t125:hash-table-map!* - dict-filter!-index t125:hash-table-filter!* - dict-filter-index t125:hash-table-filter* - dict-remove!-index t125:hash-table-remove!* - dict-remove-index t125:hash-table-remove* - dict-search!-index t125:hash-table-search!* - dict-search-index t125:hash-table-search* - dict-size-index t125:hash-table-size* - dict-for-each-index t125:hash-table-for-each* - dict-keys-index t125:hash-table-keys* - dict-values-index t125:hash-table-values* - dict-entries-index t125:hash-table-entries* - dict-fold-index t125:hash-table-fold* - dict-map->list-index t125:hash-table-map->list* - dict->alist-index t125:hash-table->alist* - dict-comparator-index t125:hash-table-comparator* - dict-copy-index t125:hash-table-copy*))) + make-dictionary-id t125:make-hash-table* + dictionary?-id t125:hash-table?* + dict-empty?-id t125:hash-table-empty?* + dict-contains?-id t125:hash-table-contains?* + dict-ref-id t125:hash-table-ref* + dict-ref/default-id t125:hash-table-ref/default* + dict-set!-id t125:hash-table-set!* + dict-delete-all!-id t125:hash-table-delete-all!* + dict-intern!-id t125:hash-table-intern!* + dict-update!-id t125:hash-table-update!* + dict-update/default!-id t125:hash-table-update!/default* + dict-pop!-id t125:hash-table-pop!* + dict-map!-id t125:hash-table-map!* + dict-filter!-id t125:hash-table-filter!* + dict-filter-id t125:hash-table-filter* + dict-remove!-id t125:hash-table-remove!* + dict-remove-id t125:hash-table-remove* + dict-search!-id t125:hash-table-search!* + dict-search-id t125:hash-table-search* + dict-size-id t125:hash-table-size* + dict-for-each-id t125:hash-table-for-each* + dict-keys-id t125:hash-table-keys* + dict-values-id t125:hash-table-values* + dict-entries-id t125:hash-table-entries* + dict-fold-id t125:hash-table-fold* + dict-map->list-id t125:hash-table-map->list* + dict->alist-id t125:hash-table->alist* + dict-comparator-id t125:hash-table-comparator* + dict-copy-id t125:hash-table-copy*))) diff --git a/srfi/srfi-126-impl.scm b/srfi/srfi-126-impl.scm index 177a835..5e308ba 100644 --- a/srfi/srfi-126-impl.scm +++ b/srfi/srfi-126-impl.scm @@ -120,29 +120,33 @@ (define (t126:hashtable-copy* dtd table) (t126:hashtable-copy table #t)) + (define (t126:hashtable-comparator* dtd table) + #f) + (make-dtd - make-dictionary-index t126:make-hashtable* - dictionary?-index (prep-dtd-arg t126:hashtable?) - dict-empty?-index (prep-dtd-arg t126:hashtable-empty?) - dict-contains?-index (prep-dtd-arg t126:hashtable-contains?) - dict-ref-index t126:hashtable-ref* - dict-ref/default-index t126:hashtable-ref/default* - dict-set!-index t126:hashtable-set!* - dict-delete-all!-index t126:hashtable-delete-all!* - dict-intern!-index t126:hashtable-intern!* - dict-update/default!-index t126:hashtable-update/default!* - dict-pop!-index t126:hashtable-pop!* - dict-map!-index t126:hashtable-update-all!* - dict-filter!-index t126:hashtable-filter!* - dict-filter-index t126:hashtable-filter* - dict-remove!-index t126:hashtable-remove!* - dict-remove-index t126:hashtable-remove* - dict-search!-index t126:hashtable-search!* - dict-search-index t126:hashtable-search* - dict-size-index (prep-dtd-arg t126:hashtable-size) - dict-for-each-index t126:hashtable-for-each* - dict-keys-index t126:hashtable-keys* - dict-values-index t126:hashtable-values* - dict-entries-index t126:hashtable-entries* - dict-map->list-index t126:hashtable-map->lset* - dict-copy-index t126:hashtable-copy*))) + make-dictionary-id t126:make-hashtable* + dictionary?-id (prep-dtd-arg t126:hashtable?) + dict-empty?-id (prep-dtd-arg t126:hashtable-empty?) + dict-contains?-id (prep-dtd-arg t126:hashtable-contains?) + dict-ref-id t126:hashtable-ref* + dict-ref/default-id t126:hashtable-ref/default* + dict-set!-id t126:hashtable-set!* + dict-delete-all!-id t126:hashtable-delete-all!* + dict-intern!-id t126:hashtable-intern!* + dict-update/default!-id t126:hashtable-update/default!* + dict-pop!-id t126:hashtable-pop!* + dict-map!-id t126:hashtable-update-all!* + dict-filter!-id t126:hashtable-filter!* + dict-filter-id t126:hashtable-filter* + dict-remove!-id t126:hashtable-remove!* + dict-remove-id t126:hashtable-remove* + dict-search!-id t126:hashtable-search!* + dict-search-id t126:hashtable-search* + dict-size-id (prep-dtd-arg t126:hashtable-size) + dict-for-each-id t126:hashtable-for-each* + dict-keys-id t126:hashtable-keys* + dict-values-id t126:hashtable-values* + dict-entries-id t126:hashtable-entries* + dict-map->list-id t126:hashtable-map->lset* + dict-copy-id t126:hashtable-copy* + dict-comparator-id t126:hashtable-comparator*))) diff --git a/srfi/srfi-146-hash-impl.scm b/srfi/srfi-146-hash-impl.scm index 8f064dd..40e893f 100644 --- a/srfi/srfi-146-hash-impl.scm +++ b/srfi/srfi-146-hash-impl.scm @@ -6,44 +6,44 @@ (apply proc args))) (make-dtd - make-dictionary-index (prep-dtd-arg hashmap) - dictionary?-index (prep-dtd-arg hashmap?) - dict-empty?-index (prep-dtd-arg hashmap-empty?) - dict-contains?-index (prep-dtd-arg hashmap-contains?) - dict-ref-index (prep-dtd-arg hashmap-ref) - dict-ref/default-index (prep-dtd-arg hashmap-ref/default) - dict-set-index (prep-dtd-arg hashmap-set) - dict-set!-index (prep-dtd-arg hashmap-set!) - dict-adjoin-index (prep-dtd-arg hashmap-adjoin) - dict-adjoin!-index (prep-dtd-arg hashmap-adjoin!) - dict-delete-index (prep-dtd-arg hashmap-delete) - dict-delete!-index (prep-dtd-arg hashmap-delete!) - dict-delete-all-index (prep-dtd-arg hashmap-delete-all) - dict-delete-all!-index (prep-dtd-arg hashmap-delete-all!) - dict-replace-index (prep-dtd-arg hashmap-replace) - dict-replace!-index (prep-dtd-arg hashmap-replace!) - dict-intern-index (prep-dtd-arg hashmap-intern) - dict-intern!-index (prep-dtd-arg hashmap-intern!) - dict-update-index (prep-dtd-arg hashmap-update) - dict-update!-index (prep-dtd-arg hashmap-update!) - dict-update/default-index (prep-dtd-arg hashmap-update/default) - dict-update/default!-index (prep-dtd-arg hashmap-update!/default) - dict-pop-index (prep-dtd-arg hashmap-pop) - dict-pop!-index (prep-dtd-arg hashmap-pop!) - dict-filter-index (prep-dtd-arg hashmap-filter) - dict-filter!-index (prep-dtd-arg hashmap-filter!) - dict-remove-index (prep-dtd-arg hashmap-remove) - dict-remove!-index (prep-dtd-arg hashmap-remove!) - dict-search-index (prep-dtd-arg hashmap-search) - dict-search!-index (prep-dtd-arg hashmap-search!) - dict-copy-index (prep-dtd-arg hashmap-copy) - dict-size-index (prep-dtd-arg hashmap-size) - dict-for-each-index (prep-dtd-arg hashmap-for-each) - dict-count-index (prep-dtd-arg hashmap-count) - dict-keys-index (prep-dtd-arg hashmap-keys) - dict-values-index (prep-dtd-arg hashmap-values) - dict-entries-index (prep-dtd-arg hashmap-entries) - dict-fold-index (prep-dtd-arg hashmap-fold) - dict-map->list-index (prep-dtd-arg hashmap-map->list) - dict->alist-index (prep-dtd-arg hashmap->alist) - dict-comparator-index (prep-dtd-arg hashmap-key-comparator)))) + make-dictionary-id (prep-dtd-arg hashmap) + dictionary?-id (prep-dtd-arg hashmap?) + dict-empty?-id (prep-dtd-arg hashmap-empty?) + dict-contains?-id (prep-dtd-arg hashmap-contains?) + dict-ref-id (prep-dtd-arg hashmap-ref) + dict-ref/default-id (prep-dtd-arg hashmap-ref/default) + dict-set-id (prep-dtd-arg hashmap-set) + dict-set!-id (prep-dtd-arg hashmap-set!) + dict-adjoin-id (prep-dtd-arg hashmap-adjoin) + dict-adjoin!-id (prep-dtd-arg hashmap-adjoin!) + dict-delete-id (prep-dtd-arg hashmap-delete) + dict-delete!-id (prep-dtd-arg hashmap-delete!) + dict-delete-all-id (prep-dtd-arg hashmap-delete-all) + dict-delete-all!-id (prep-dtd-arg hashmap-delete-all!) + dict-replace-id (prep-dtd-arg hashmap-replace) + dict-replace!-id (prep-dtd-arg hashmap-replace!) + dict-intern-id (prep-dtd-arg hashmap-intern) + dict-intern!-id (prep-dtd-arg hashmap-intern!) + dict-update-id (prep-dtd-arg hashmap-update) + dict-update!-id (prep-dtd-arg hashmap-update!) + dict-update/default-id (prep-dtd-arg hashmap-update/default) + dict-update/default!-id (prep-dtd-arg hashmap-update!/default) + dict-pop-id (prep-dtd-arg hashmap-pop) + dict-pop!-id (prep-dtd-arg hashmap-pop!) + dict-filter-id (prep-dtd-arg hashmap-filter) + dict-filter!-id (prep-dtd-arg hashmap-filter!) + dict-remove-id (prep-dtd-arg hashmap-remove) + dict-remove!-id (prep-dtd-arg hashmap-remove!) + dict-search-id (prep-dtd-arg hashmap-search) + dict-search!-id (prep-dtd-arg hashmap-search!) + dict-copy-id (prep-dtd-arg hashmap-copy) + dict-size-id (prep-dtd-arg hashmap-size) + dict-for-each-id (prep-dtd-arg hashmap-for-each) + dict-count-id (prep-dtd-arg hashmap-count) + dict-keys-id (prep-dtd-arg hashmap-keys) + dict-values-id (prep-dtd-arg hashmap-values) + dict-entries-id (prep-dtd-arg hashmap-entries) + dict-fold-id (prep-dtd-arg hashmap-fold) + dict-map->list-id (prep-dtd-arg hashmap-map->list) + dict->alist-id (prep-dtd-arg hashmap->alist) + dict-comparator-id (prep-dtd-arg hashmap-key-comparator)))) diff --git a/srfi/srfi-146-impl.scm b/srfi/srfi-146-impl.scm index bcde849..7d36dc8 100644 --- a/srfi/srfi-146-impl.scm +++ b/srfi/srfi-146-impl.scm @@ -6,44 +6,44 @@ (apply proc args))) (make-dtd - make-dictionary-index (prep-dtd-arg mapping) - dictionary?-index (prep-dtd-arg mapping?) - dict-empty?-index (prep-dtd-arg mapping-empty?) - dict-contains?-index (prep-dtd-arg mapping-contains?) - dict-ref-index (prep-dtd-arg mapping-ref) - dict-ref/default-index (prep-dtd-arg mapping-ref/default) - dict-set-index (prep-dtd-arg mapping-set) - dict-set!-index (prep-dtd-arg mapping-set!) - dict-adjoin-index (prep-dtd-arg mapping-adjoin) - dict-adjoin!-index (prep-dtd-arg mapping-adjoin!) - dict-delete-index (prep-dtd-arg mapping-delete) - dict-delete!-index (prep-dtd-arg mapping-delete!) - dict-delete-all-index (prep-dtd-arg mapping-delete-all) - dict-delete-all!-index (prep-dtd-arg mapping-delete-all!) - dict-replace-index (prep-dtd-arg mapping-replace) - dict-replace!-index (prep-dtd-arg mapping-replace!) - dict-intern-index (prep-dtd-arg mapping-intern) - dict-intern!-index (prep-dtd-arg mapping-intern!) - dict-update-index (prep-dtd-arg mapping-update) - dict-update!-index (prep-dtd-arg mapping-update!) - dict-update/default-index (prep-dtd-arg mapping-update/default) - dict-update/default!-index (prep-dtd-arg mapping-update!/default) - dict-pop-index (prep-dtd-arg mapping-pop) - dict-pop!-index (prep-dtd-arg mapping-pop!) - dict-filter-index (prep-dtd-arg mapping-filter) - dict-filter!-index (prep-dtd-arg mapping-filter!) - dict-remove-index (prep-dtd-arg mapping-remove) - dict-remove!-index (prep-dtd-arg mapping-remove!) - dict-search-index (prep-dtd-arg mapping-search) - dict-search!-index (prep-dtd-arg mapping-search!) - dict-copy-index (prep-dtd-arg mapping-copy) - dict-size-index (prep-dtd-arg mapping-size) - dict-for-each-index (prep-dtd-arg mapping-for-each) - dict-count-index (prep-dtd-arg mapping-count) - dict-keys-index (prep-dtd-arg mapping-keys) - dict-values-index (prep-dtd-arg mapping-values) - dict-entries-index (prep-dtd-arg mapping-entries) - dict-fold-index (prep-dtd-arg mapping-fold) - dict-map->list-index (prep-dtd-arg mapping-map->list) - dict->alist-index (prep-dtd-arg mapping->alist) - dict-comparator-index (prep-dtd-arg mapping-key-comparator)))) + make-dictionary-id (prep-dtd-arg mapping) + dictionary?-id (prep-dtd-arg mapping?) + dict-empty?-id (prep-dtd-arg mapping-empty?) + dict-contains?-id (prep-dtd-arg mapping-contains?) + dict-ref-id (prep-dtd-arg mapping-ref) + dict-ref/default-id (prep-dtd-arg mapping-ref/default) + dict-set-id (prep-dtd-arg mapping-set) + dict-set!-id (prep-dtd-arg mapping-set!) + dict-adjoin-id (prep-dtd-arg mapping-adjoin) + dict-adjoin!-id (prep-dtd-arg mapping-adjoin!) + dict-delete-id (prep-dtd-arg mapping-delete) + dict-delete!-id (prep-dtd-arg mapping-delete!) + dict-delete-all-id (prep-dtd-arg mapping-delete-all) + dict-delete-all!-id (prep-dtd-arg mapping-delete-all!) + dict-replace-id (prep-dtd-arg mapping-replace) + dict-replace!-id (prep-dtd-arg mapping-replace!) + dict-intern-id (prep-dtd-arg mapping-intern) + dict-intern!-id (prep-dtd-arg mapping-intern!) + dict-update-id (prep-dtd-arg mapping-update) + dict-update!-id (prep-dtd-arg mapping-update!) + dict-update/default-id (prep-dtd-arg mapping-update/default) + dict-update/default!-id (prep-dtd-arg mapping-update!/default) + dict-pop-id (prep-dtd-arg mapping-pop) + dict-pop!-id (prep-dtd-arg mapping-pop!) + dict-filter-id (prep-dtd-arg mapping-filter) + dict-filter!-id (prep-dtd-arg mapping-filter!) + dict-remove-id (prep-dtd-arg mapping-remove) + dict-remove!-id (prep-dtd-arg mapping-remove!) + dict-search-id (prep-dtd-arg mapping-search) + dict-search!-id (prep-dtd-arg mapping-search!) + dict-copy-id (prep-dtd-arg mapping-copy) + dict-size-id (prep-dtd-arg mapping-size) + dict-for-each-id (prep-dtd-arg mapping-for-each) + dict-count-id (prep-dtd-arg mapping-count) + dict-keys-id (prep-dtd-arg mapping-keys) + dict-values-id (prep-dtd-arg mapping-values) + dict-entries-id (prep-dtd-arg mapping-entries) + dict-fold-id (prep-dtd-arg mapping-fold) + dict-map->list-id (prep-dtd-arg mapping-map->list) + dict->alist-id (prep-dtd-arg mapping->alist) + dict-comparator-id (prep-dtd-arg mapping-key-comparator)))) diff --git a/srfi/srfi-69-impl.scm b/srfi/srfi-69-impl.scm index 4151dba..ee619e0 100644 --- a/srfi/srfi-69-impl.scm +++ b/srfi/srfi-69-impl.scm @@ -99,24 +99,24 @@ (t69:hash-table-hash-function table))) (make-dtd - make-dictionary-index t69:make-hash-table* - dictionary?-index (prep-dtd-arg t69:hash-table?) - dict-ref-index t69:hash-table-ref* - dict-ref/default-index (prep-dtd-arg t69:hash-table-ref/default) - dict-set!-index t69:hash-table-set!* - dict-delete-all!-index t69:hash-table-delete-all!* - dict-contains?-index (prep-dtd-arg t69:hash-table-exists?) - dict-update/default!-index t69:hash-table-update!/default* - dict-size-index (prep-dtd-arg t69:hash-table-size) - dict-keys-index (prep-dtd-arg t69:hash-table-keys) - dict-values-index (prep-dtd-arg t69:hash-table-values) - dict-map!-index t69:hash-table-map!* - dict-filter!-index t69:hash-table-filter!* - dict-filter-index t69:hash-table-filter* - dict-for-each-index t69:hash-table-foreach* - dict-fold-index t69:hash-table-fold* - dict->alist-index (prep-dtd-arg t69:hash-table->alist) - dict-search-index t69:hash-table-search* - dict-search!-index t69:hash-table-search!* - dict-comparator-index t69:hash-table-comparator* - dict-copy-index (prep-dtd-arg t69:hash-table-copy)))) + make-dictionary-id t69:make-hash-table* + dictionary?-id (prep-dtd-arg t69:hash-table?) + dict-ref-id t69:hash-table-ref* + dict-ref/default-id (prep-dtd-arg t69:hash-table-ref/default) + dict-set!-id t69:hash-table-set!* + dict-delete-all!-id t69:hash-table-delete-all!* + dict-contains?-id (prep-dtd-arg t69:hash-table-exists?) + dict-update/default!-id t69:hash-table-update!/default* + dict-size-id (prep-dtd-arg t69:hash-table-size) + dict-keys-id (prep-dtd-arg t69:hash-table-keys) + dict-values-id (prep-dtd-arg t69:hash-table-values) + dict-map!-id t69:hash-table-map!* + dict-filter!-id t69:hash-table-filter!* + dict-filter-id t69:hash-table-filter* + dict-for-each-id t69:hash-table-foreach* + dict-fold-id t69:hash-table-fold* + dict->alist-id (prep-dtd-arg t69:hash-table->alist) + dict-search-id t69:hash-table-search* + dict-search!-id t69:hash-table-search!* + dict-comparator-id t69:hash-table-comparator* + dict-copy-id (prep-dtd-arg t69:hash-table-copy)))) |
