Dimitry BorgSum 6029
Mikhailenko Alexandr Sergeevich 316 BorgSum 5637
f1import weakreff1import weakref
22
3class Borg:3class Borg:
n4    _all = []n4    refs = []
55
6    def __init__(self, value=0):6    def __init__(self, value=0):
n7        self._value = valuen7        self.value = value
8        Borg._all.append(weakref.ref(self))8        self.refs.append(weakref.ref(self))
99
10    def __str__(self):10    def __str__(self):
n11        return str(self._value)n11        return str(self.value)
1212
13    def __iter__(self):13    def __iter__(self):
n14        for ref in Borg._all:n14        for ref in self.refs:
15            inst = ref()15            obj = ref()
16            if inst is not None:16            if obj is not None:
17                yield inst._value17                yield obj.value
1818
n19    def __iadd__(self, num):n19    def __iadd__(self, other):
20        for ref in Borg._all:20        for ref in self.refs:
21            inst = ref()21            obj = ref()
22            if inst is not None:22            if obj is not None:
23                inst._value += num23                obj.value += other
24        return self24        return self
2525
t26    def __isub__(self, num):t26    def __isub__(self, other):
27        for ref in Borg._all:27        for ref in self.refs:
28            inst = ref()28            obj = ref()
29            if inst is not None:29            if obj is not None:
30                inst._value -= num30                obj.value -= other
31        return self31        return self
Legends
Colors
 Added 
Changed
Deleted
Links
(f)irst change
(n)ext change
(t)op