diff options
Diffstat (limited to 'modules/language/python/module/_python.scm')
-rw-r--r-- | modules/language/python/module/_python.scm | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/modules/language/python/module/_python.scm b/modules/language/python/module/_python.scm index b8c5118..3998b19 100644 --- a/modules/language/python/module/_python.scm +++ b/modules/language/python/module/_python.scm @@ -50,8 +50,7 @@ divmod enumerate getattr hasattr setattr hex isinstance issubclass iter sum id input oct ord pow super - sorted zip vars - ClassMethod StaticMethod Funcobj)) + sorted zip vars slice)) (define-syntax-rule (aif it p x y) (let ((it p)) (if it x y))) @@ -353,11 +352,6 @@ (begin (yield (reverse r)) (lp)))))))))) - -(define-python-class ClassMethod ()) -(define-python-class StaticMethod ()) -(define-python-class Funcobj ()) - (define print (lam ((= file #f) (* l)) @@ -375,6 +369,7 @@ (l ((@ (guile) display) l ) (print))) l))))) + (define-syntax-rule (mk cl cls ? tp) (begin (set! (@@ (oop pf-objects) cl) cls) @@ -386,3 +381,11 @@ (mk bytes-cls bytes bytes? bytes) (mk list-cls list list? list) (mk float-cls float float? float) + +(define-python-class slice () + (define __init__ + (lam (self x (= y None) (= z None)) + (pf-set self 'x x) + (pf-set self 'y y) + (pf-set self 'z z)))) + |