|
|
@@ -28,4 +28,64 @@ The features marked with `YES` are supported, and the features marked with `NO`
|
|
|
| Context Block | `with <expr> as <id>:` | YES |
|
|
|
| Type Annotation | `def f(a:int, b:float=1)` | YES |
|
|
|
| Generator | `yield i` | YES |
|
|
|
-| Decorator | `@cache` | YES |
|
|
|
+| Decorator | `@cache` | YES |
|
|
|
+
|
|
|
+## Supported magic methods
|
|
|
+
|
|
|
+#### Unary operators
|
|
|
+
|
|
|
++ `__repr__`
|
|
|
++ `__str__`
|
|
|
++ `__hash__`
|
|
|
++ `__len__`
|
|
|
++ `__iter__`
|
|
|
++ `__next__`
|
|
|
++ `__json__`
|
|
|
++ `__neg__`
|
|
|
++ `__bool__` (unused)
|
|
|
+
|
|
|
+#### Logical operators
|
|
|
+
|
|
|
++ `__eq__`
|
|
|
++ `__lt__`
|
|
|
++ `__le__`
|
|
|
++ `__gt__`
|
|
|
++ `__ge__`
|
|
|
++ `__contains__`
|
|
|
+
|
|
|
+#### Binary operators
|
|
|
+
|
|
|
++ `__add__`
|
|
|
++ `__radd__`
|
|
|
++ `__sub__`
|
|
|
++ `__rsub__`
|
|
|
++ `__mul__`
|
|
|
++ `__rmul__`
|
|
|
++ `__truediv__`
|
|
|
++ `__floordiv__`
|
|
|
++ `__mod__`
|
|
|
++ `__pow__`
|
|
|
++ `__matmul__`
|
|
|
++ `__lshift__`
|
|
|
++ `__rshift__`
|
|
|
++ `__and__`
|
|
|
++ `__or__`
|
|
|
++ `__xor__`
|
|
|
++ `__invert__`
|
|
|
+
|
|
|
+#### Indexer
|
|
|
+
|
|
|
++ `__getitem__`
|
|
|
++ `__setitem__`
|
|
|
++ `__delitem__`
|
|
|
+
|
|
|
+#### Specials
|
|
|
+
|
|
|
++ `__new__`
|
|
|
++ `__init__`
|
|
|
++ `__call__`
|
|
|
++ `__divmod__`
|
|
|
++ `__enter__`
|
|
|
++ `__exit__`
|
|
|
++ `__name__`
|
|
|
++ `__all__`
|