Lines Matching refs:self
34 def __init__(self, parent = {}, **kwargs):
35 self.local = dict(**kwargs)
36 self.parent = parent
37 self.deleted = {}
39 def __str__(self):
40 return str(dict(self.items()))
42 def __repr__(self):
43 return repr(dict(list(self.items())))
45 def __contains__(self, key):
46 return key in self.local or key in self.parent
48 def __delitem__(self, key):
50 del self.local[key]
52 if key in self.parent:
53 self.deleted[key] = True
57 def __setitem__(self, key, value):
58 self.deleted.pop(key, False)
59 self.local[key] = value
61 def __getitem__(self, key):
63 return self.local[key]
65 if not self.deleted.get(key, False) and key in self.parent:
66 return self.parent[key]
70 def __len__(self):
71 return len(self.local) + len(self.parent)
73 def next(self):
74 for key,value in self.local.items():
77 if self.parent:
78 for key,value in self.parent.next():
79 if key not in self.local and key not in self.deleted:
82 def has_key(self, key):
83 return key in self
85 def items(self):
86 for item in self.next():
89 def keys(self):
90 for key,value in self.next():
93 def values(self):
94 for key,value in self.next():
97 def get(self, key, default=None):
99 return self[key]
103 def setdefault(self, key, default):
105 return self[key]
107 self.deleted.pop(key, False)
108 self.local[key] = default
111 def _dump(self):
113 node = self
118 def _dumpkey(self, key):
120 node = self