1.1 --- a/micropython/common.py Mon Nov 10 21:38:58 2008 +0100
1.2 +++ b/micropython/common.py Mon Nov 10 23:57:05 2008 +0100
1.3 @@ -145,4 +145,54 @@
1.4
1.5 pass
1.6
1.7 +# Useful data.
1.8 +
1.9 +comparison_methods = {
1.10 + "==" : ("__eq__", "__ne__"),
1.11 + "!=" : ("__ne__", "__eq__"),
1.12 + "<" : ("__lt__", "__gt__"),
1.13 + "<=" : ("__le__", "__ge__"),
1.14 + ">=" : ("__ge__", "__le__"),
1.15 + ">" : ("__gt__", "__lt__"),
1.16 + "is" : None,
1.17 + "is not" : None,
1.18 + "in" : None,
1.19 + "not in" : None
1.20 + }
1.21 +
1.22 +augassign_methods = {
1.23 + "+=" : ("__iadd__", ("__add__", "__radd__")),
1.24 + "-=" : ("__isub__", ("__sub__", "__rsub__")),
1.25 + "*=" : ("__imul__", ("__mul__", "__rmul__")),
1.26 + "/=" : ("__idiv__", ("__div__", "__rdiv__")),
1.27 + "%=" : ("__imod__", ("__mod__", "__rmod__")),
1.28 + "**=" : ("__ipow__", ("__pow__", "__rpow__")),
1.29 + "<<=" : ("__ilshift__", ("__lshift__", "__rlshift__")),
1.30 + ">>=" : ("__irshift__", ("__rshift__", "__rrshift__")),
1.31 + "&=" : ("__iand__", ("__and__", "__rand__")),
1.32 + "^=" : ("__ixor__", ("__xor__", "__rxor__")),
1.33 + "|=" : ("__ior__", ("__or__", "__ror__"))
1.34 + }
1.35 +
1.36 +binary_methods = {
1.37 + "Add" : ("__add__", "__radd__"),
1.38 + "Bitand" : ("__and__", "__rand__"),
1.39 + "Bitor" : ("__or__", "__ror__"),
1.40 + "Bitxor" : ("__xor__", "__rxor__"),
1.41 + "Div" : ("__div__", "__rdiv__"),
1.42 + "FloorDiv" : ("__floordiv__", "__rfloordiv__"),
1.43 + "LeftShift" : ("__lshift__", "__rlshift__"),
1.44 + "Mod" : ("__mod__", "__rmod__"),
1.45 + "Mul" : ("__mul__", "__rmul__"),
1.46 + "Power" : ("__pow__", "__rpow__"),
1.47 + "RightShift" : ("__rshift__", "__rrshift__"),
1.48 + "Sub" : ("__sub__", "__rsub__")
1.49 + }
1.50 +
1.51 +unary_methods = {
1.52 + "Invert" : "__invert__",
1.53 + "UnaryAdd" : "__pos__",
1.54 + "UnarySub" : "__neg__"
1.55 + }
1.56 +
1.57 # vim: tabstop=4 expandtab shiftwidth=4