summaryrefslogtreecommitdiff
path: root/tests/basics/class_reverse_op.py
blob: 1a047e448459941c36db13e75cb20815f6e567c7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
import skip_if
skip_if.no_reverse_ops()

class A:

    def __init__(self, v):
        self.v = v

    def __add__(self, o):
        if isinstance(o, A):
            return A(self.v + o.v)
        return A(self.v + o)

    def __radd__(self, o):
        return A(self.v + o)

    def __repr__(self):
        return "A(%s)" % self.v

print(A(3) + 1)
print(2 + A(5))