X-Git-Url: https://git.ctpug.org.za/?p=koperkapel.git;a=blobdiff_plain;f=koperkapel%2Fworld.py;h=a07b719a41a79e5882d8fcb7b2da03dfdb8bb7b9;hp=14746f530760e6a092345b7f78abf834430a7598;hb=ea01c5200f06149c3ece055c576308601341144e;hpb=a50936015a6c10bdacccee074e432fa0bdfbc831 diff --git a/koperkapel/world.py b/koperkapel/world.py index 14746f5..a07b719 100644 --- a/koperkapel/world.py +++ b/koperkapel/world.py @@ -66,6 +66,11 @@ class World: obj, key = self._get_obj(name) obj.append(value) + def _apply_pop(self, action, updates): + for name, pos in updates.items(): + obj, key = self._get_obj(name) + obj.pop(pos) + def _apply_reset(self, action): self._state = self._build_initial_state() @@ -156,3 +161,6 @@ class WorldListProxy(WorldBaseProxy): def append(self, value): self._top._record_change(self._prefix, value, action="append") + + def pop(self, pos=0): + self._top._record_change(self._prefix, pos, action="pop")