summaryrefslogtreecommitdiffstats
path: root/srfi/225.sld
blob: 84d17cfe0a46ad0c19bcfac35c6ac832ae45a33b (plain) (blame)
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
(define-library
  (srfi 225)

  (import 
    (scheme base)
    (srfi 1)
    (srfi 128)
    (srfi 225 core)
    (srfi 225 default-impl)
    (srfi 225 indexes))

  (include-library-declarations "225/core-exports.scm")
  (include-library-declarations "225/indexes-exports.scm")
  (export make-dto)

  ;; common implementations
  (import (srfi 225 alist-impl))
  (export
    make-alist-dto
    eqv-alist-dto
    equal-alist-dto)

  ;; library-dependent DTO exports
  ;; and implementations
  ;;
  ;;srfi-69-dto
  ;;hash-table-dto
  ;;srfi-126-dto
  ;;mapping-dto
  ;;hash-mapping-dto

  (cond-expand
    ((library (srfi 69))
     (import (srfi 225 srfi-69-impl))
     (export srfi-69-dto))
    (else))

  (cond-expand
    ((library (srfi 125))
     (import (srfi 225 srfi-125-impl))
     (export hash-table-dto))
    (else))

  (cond-expand
    ((library (srfi 126))
     (import (srfi 225 srfi-126-impl))
     (export srfi-126-dto))
    (else))

  (cond-expand
    ((and (library (srfi 146))
          (library (srfi 146 hash)))
     (import (srfi 225 srfi-146-impl)
             (srfi 225 srfi-146-hash-impl))
     (export mapping-dto
             hash-mapping-dto))
    (else)))