summaryrefslogtreecommitdiff
path: root/modules/language/python/exceptions.scm
diff options
context:
space:
mode:
Diffstat (limited to 'modules/language/python/exceptions.scm')
-rw-r--r--modules/language/python/exceptions.scm43
1 files changed, 24 insertions, 19 deletions
diff --git a/modules/language/python/exceptions.scm b/modules/language/python/exceptions.scm
index 60b850e..99e8b97 100644
--- a/modules/language/python/exceptions.scm
+++ b/modules/language/python/exceptions.scm
@@ -7,28 +7,11 @@
SyntaxError SystemException
OSError ProcessLookupError PermissionError
None NotImplemented NotImplementedError
- RunTimeError AssertionError))
+ RunTimeError AssertionError
+ ModuleNotFoundError BlockingIOError))
(define-syntax-rule (aif it p x y) (let ((it p)) (if it x y)))
-(define StopIteration 'StopIteration)
-(define GeneratorExit 'GeneratorExit)
-(define SystemException 'SystemException)
-(define RuntimeError 'RuntimeError)
-(define IndexError 'IndexError)
-(define ValueError 'ValueError)
-(define None 'None)
-(define KeyError 'KeyError)
-(define TypeError 'TypeError)
-(define AttributeError 'AttributeError)
-(define SyntaxError 'SyntaxError)
-(define OSError 'OSError)
-(define ProcessLookupError 'ProcessLookupError)
-(define PermissionError 'PermissionError)
-(define NotImplementedError 'NotImplementedError)
-(define RunTimeError 'RunTimeError)
-(define AssertionError 'AssertionError)
-
(define-python-class Exception ()
(define __init__
(case-lambda
@@ -45,6 +28,28 @@
(format #f "~a"
(ref self '__name__))))))
+(define-syntax-rule (define-er nm k)
+ (define-python-class nm (Exception)))
+
+(define StopIteration 'StopIteration)
+(define GeneratorExit 'GeneratorExit)
+(define-er SystemException 'SystemException)
+(define-er RuntimeError 'RuntimeError)
+(define-er IndexError 'IndexError)
+(define-er ValueError 'ValueError)
+(define None 'None)
+(define-er KeyError 'KeyError)
+(define-er TypeError 'TypeError)
+(define-er AttributeError 'AttributeError)
+(define-er SyntaxError 'SyntaxError)
+(define-er OSError 'OSError)
+(define-er ProcessLookupError 'ProcessLookupError)
+(define-er PermissionError 'PermissionError)
+(define-er NotImplementedError 'NotImplementedError)
+(define-er RunTimeError 'RunTimeError)
+(define AssertionError 'AssertionError)
+(define-er ModuleNotFoundError 'ModuleNotFoundError)
+(define-er BlockingIOError 'BlockingIOError)
(define NotImplemented (list 'NotImplemented))