prelude: :<root>
package: gerbil/core
namespace: gerbil/core/expander

(%#begin (%#import :gerbil/core/runtime (phi: 1 :gerbil/core/runtime))
         (%#export
          #t
          (import: (in: #f ExpanderRuntime))
          (import: (in: #f SyntaxCase))
          (import: (in: #f SyntaxSugar)))
         (%#module
          ExpanderRuntime
          (%#begin (%#export #t)
                   (%#extern
                    (raise-syntax-error gx#raise-syntax-error)
                    (syntax-error? gx#syntax-error?)
                    (identifier? gx#identifier?)
                    (identifier-list? gx#identifier-list?)
                    (free-identifier=? gx#free-identifier=?)
                    (bound-identifier=? gx#bound-identifier=?)
                    (datum->syntax gx#datum->syntax)
                    (syntax->datum gx#syntax->datum)
                    (syntax-e gx#syntax-e)
                    (syntax->list gx#syntax->list)
                    (genident gx#genident)
                    (gentemps gx#gentemps)
                    (stx-identifier gx#stx-identifier)
                    (stx-boolean? gx#stx-boolean?)
                    (stx-keyword? gx#stx-keyword?)
                    (stx-char? gx#stx-char?)
                    (stx-number? gx#stx-number?)
                    (stx-fixnum? gx#stx-fixnum?)
                    (stx-string? gx#stx-string?)
                    (stx-null? gx#stx-null?)
                    (stx-pair? gx#stx-pair?)
                    (stx-pair/null? gx#stx-pair/null?)
                    (stx-list? gx#stx-list?)
                    (stx-box? gx#stx-box?)
                    (stx-vector? gx#stx-vector?)
                    (stx-datum? gx#stx-datum?)
                    (stx-eq? gx#stx-eq?)
                    (stx-eqv? gx#stx-eqv?)
                    (stx-equal? gx#stx-equal?)
                    (stx-false? gx#stx-false?)
                    (stx-e gx#stx-e)
                    (stx-source gx#stx-source)
                    (stx-wrap-source gx#stx-wrap-source)
                    (stx-car gx#stx-car)
                    (stx-cdr gx#stx-cdr)
                    (stx-length gx#stx-length)
                    (stx-for-each gx#stx-for-each)
                    (stx-map gx#stx-map)
                    (stx-foldl gx#stx-foldl)
                    (stx-foldr gx#stx-foldr)
                    (stx-reverse gx#stx-reverse)
                    (stx-last gx#stx-last)
                    (stx-last-pair gx#stx-last-pair)
                    (stx-list-tail gx#stx-list-tail)
                    (stx-list-ref gx#stx-list-ref)
                    (stx-andmap gx#stx-andmap)
                    (stx-ormap gx#stx-ormap)
                    (stx-plist? gx#stx-plist?)
                    (stx-getq gx#stx-getq)
                    (macro-expand-syntax gx#macro-expand-syntax)
                    (macro-expand-syntax-case gx#macro-expand-syntax-case)
                    (syntax-pattern? gx#syntax-pattern?)
                    (syntax-local-pattern? gx#syntax-local-pattern?)
                    (make-syntax-pattern gx#make-syntax-pattern)
                    (syntax-pattern-id gx#syntax-pattern-id)
                    (syntax-pattern-depth gx#syntax-pattern-depth)
                    (syntax-check-splice-targets
                     gx#syntax-check-splice-targets)
                    (syntax-split-splice gx#syntax-split-splice)
                    (underscore? gx#underscore?)
                    (ellipsis? gx#ellipsis?)
                    (check-duplicate-identifiers
                     gx#check-duplicate-identifiers)
                    (current-expander-context gx#current-expander-context)
                    (current-expander-marks gx#current-expander-marks)
                    (current-expander-path gx#current-expander-path)
                    (current-expander-phi gx#current-expander-phi)
                    (current-expander-compiling?
                     gx#current-expander-compiling?)
                    (current-module-reader-path gx#current-module-reader-path)
                    (current-module-reader-args gx#current-module-reader-args)
                    (local-context? gx#local-context?)
                    (top-context? gx#top-context?)
                    (module-context? gx#module-context?)
                    (prelude-context? gx#prelude-context?)
                    (core-context-top gx#core-context-top)
                    (expander-context-id gx#expander-context-id)
                    (module-context-ns gx#module-context-ns)
                    (module-context-import gx#module-context-import)
                    (module-context-export gx#module-context-export)
                    (module-context-code gx#module-context-code)
                    (make-local-context gx#make-local-context)
                    (eval-syntax gx#eval-syntax)
                    (core-expand gx#core-expand)
                    (core-expand-head gx#core-expand-head)
                    (core-expand-expression+1 gx#core-expand-expression+1)
                    (import-module gx#import-module)
                    (eval-module gx#eval-module)
                    (core-library-module-path? gx#core-library-module-path?)
                    (core-resolve-library-module-path
                     gx#core-resolve-library-module-path)
                    (core-resolve-module-path gx#core-resolve-module-path)
                    (core-quote-syntax gx#core-quote-syntax)
                    (core-identifier=? gx#core-identifier=?)
                    (core-identifier-key gx#core-identifier-key)
                    (core-apply-expander gx#core-apply-expander)
                    (syntax-local-introduce gx#syntax-local-introduce)
                    (syntax-local-rewrap gx#syntax-local-rewrap)
                    (syntax-local-unwrap gx#syntax-local-unwrap)
                    (syntax-local-e gx#syntax-local-e)
                    (syntax-local-value gx#syntax-local-value)
                    (resolve-identifier gx#resolve-identifier)
                    (core-resolve-identifier gx#core-resolve-identifier)
                    (binding? gx#binding?)
                    (binding-id gx#binding-id)
                    (runtime-binding? gx#runtime-binding?)
                    (top-binding? gx#top-binding?)
                    (module-binding? gx#module-binding?)
                    (extern-binding? gx#extern-binding?)
                    (syntax-binding? gx#syntax-binding?)
                    (syntax-binding-e gx#syntax-binding-e)
                    (alias-binding? gx#alias-binding?)
                    (alias-binding-e gx#alias-binding-e)
                    (import-binding? gx#import-binding?)
                    (import-binding-e gx#import-binding-e)
                    (expander? gx#expander?)
                    (expander-binding? gx#expander-binding?)
                    (expander-e gx#expander-e)
                    (expander-binding-e gx#expander-binding-e)
                    (feature-expander? gx#feature-expander?)
                    (user-expander? gx#user-expander?)
                    (make-user-expander gx#make-user-expander)
                    (user-expander-context gx#user-expander-context)
                    (user-expander-phi gx#user-expander-phi)
                    (import-expander? gx#import-expander?)
                    (make-import-expander gx#make-import-expander)
                    (export-expander? gx#export-expander?)
                    (make-export-expander gx#make-export-expander)
                    (import-export-expander? gx#import-export-expander?)
                    (make-import-export-expander
                     gx#make-import-export-expander)
                    (module-import? gx#module-import?)
                    (make-module-import gx#make-module-import)
                    (module-import-source gx#module-import-source)
                    (module-import-name gx#module-import-name)
                    (module-import-phi gx#module-import-phi)
                    (module-import-weak? gx#module-import-weak?)
                    (module-export? gx#module-export?)
                    (make-module-export gx#make-module-export)
                    (module-export-context gx#module-export-context)
                    (module-export-key gx#module-export-key)
                    (module-export-phi gx#module-export-phi)
                    (module-export-name gx#module-export-name)
                    (module-export-weak? gx#module-export-weak?)
                    (import-set? gx#import-set?)
                    (import-set-source gx#import-set-source)
                    (import-set-phi gx#import-set-phi)
                    (import-set-imports gx#import-set-imports)
                    (export-set? gx#export-set?)
                    (export-set-source gx#export-set-source)
                    (export-set-phi gx#export-set-phi)
                    (export-set-exports gx#export-set-exports)
                    (core-resolve-module-export gx#core-resolve-module-export)
                    (core-module-export->import gx#core-module-export->import)
                    (core-expand-import-source gx#core-expand-import-source)
                    (core-expand-export-source gx#core-expand-export-source))))
         (%#module
          SyntaxCase
          (%#begin (%#export #t)
                   (%#import
                    (in: #f ExpanderRuntime)
                    (phi: 1 (in: #f ExpanderRuntime)))
                   (%#begin (%#begin-syntax
                             (%#call (%#ref load-module)
                                     (%#quote "gerbil/core/expander~1")))
                            (%#define-syntax
                             syntax
                             |gerbil/core/expander~SyntaxCase[:0:]#syntax|))
                   (%#define-syntax
                    syntax-case
                    |gerbil/core/expander~SyntaxCase[:0:]#syntax-case|)))
         (%#module
          SyntaxSugar
          (%#begin (%#export #t)
                   (%#import
                    (in: #f ExpanderRuntime)
                    (in: #f SyntaxCase)
                    (phi: 1 (in: #f ExpanderRuntime))
                    (phi: 1 (in: #f SyntaxCase)))
                   (%#begin (%#begin-syntax
                             (%#call (%#ref load-module)
                                     (%#quote "gerbil/core/expander~2")))
                            (%#define-syntax
                             syntax-rules
                             |gerbil/core/expander~SyntaxSugar[:0:]#syntax-rules|))
                   (%#define-syntax
                    with-syntax
                    |gerbil/core/expander~SyntaxSugar[:0:]#with-syntax|)
                   (%#define-syntax
                    with-syntax*
                    |gerbil/core/expander~SyntaxSugar[:0:]#with-syntax*|)
                   (%#define-syntax
                    syntax/loc
                    |gerbil/core/expander~SyntaxSugar[:0:]#syntax/loc|)))
         (%#import
          (in: #f ExpanderRuntime)
          (in: #f SyntaxCase)
          (in: #f SyntaxSugar)))
