diff options
Diffstat (limited to 'modules/language/python/compile.scm')
-rw-r--r-- | modules/language/python/compile.scm | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/modules/language/python/compile.scm b/modules/language/python/compile.scm index e5bc219..fe3533b 100644 --- a/modules/language/python/compile.scm +++ b/modules/language/python/compile.scm @@ -1407,7 +1407,8 @@ ,(C 'clear-warning-data) (fluid-set! (@@ (system base message) %dont-warn-list) '()) ,@(map (lambda (s) `(,(C 'var) ,s)) globs) - ,@(map (g globs exp) x)))))) + ,@(map (g globs exp) x) + (,(C 'export-all))))))) (define-syntax-parameter break (lambda (x) #'(values))) @@ -1932,3 +1933,10 @@ ((_ #t) #t) ((_ #f) #f) ((_ x ) (bool x)))) + +(define (export-all) + (define mod (current-module)) + (if (module-defined? mod '__all__) + (for ((x : (module-ref mod '__all__))) () + (module-export! mod (string->symbol (scm-str x)))))) + |