export-count.rkt (860B)
1 #lang racket 2 3 (require rackunit 4 "export-lists.rkt") 5 6 (provide module-num-exports 7 module-num-documented-exports 8 module-num-undocumented-exports 9 module-documentation-ratio) 10 11 (define module-num-exports (compose length module->all-exported-names)) 12 (define module-num-documented-exports (compose length module->documented-exported-names)) 13 (define module-num-undocumented-exports (compose length module->undocumented-exported-names)) 14 15 (module+ test 16 (check-eqv? (module-num-exports 'racket/match) 28) 17 (check-eqv? (module-num-documented-exports 'racket/match) 27) 18 (check-eqv? (module-num-undocumented-exports 'racket/match) 1)) 19 20 (define (module-documentation-ratio mod) 21 (/ (module-num-documented-exports mod) 22 (module-num-exports mod))) 23 24 (module+ test 25 (check-eqv? (module-documentation-ratio 'racket/match) (/ 27 28)))