Minor improvement to TableStack
Push/pop on the end side, which should be faster.
This commit is contained in:
parent
50d9a44e58
commit
65499c1042
@ -494,11 +494,11 @@ class TableStack:
|
|||||||
def __init__(self):
|
def __init__(self):
|
||||||
self.stack = []
|
self.stack = []
|
||||||
def push(self, table):
|
def push(self, table):
|
||||||
self.stack.insert(0, table)
|
self.stack.append(table)
|
||||||
def pop(self):
|
def pop(self):
|
||||||
self.stack.pop(0)
|
self.stack.pop()
|
||||||
def getTop(self):
|
def getTop(self):
|
||||||
return self.stack[0]
|
return self.stack[-1]
|
||||||
def getValue(self, name):
|
def getValue(self, name):
|
||||||
return self.__findTable(name)[name]
|
return self.__findTable(name)[name]
|
||||||
def storeValue(self, name, value):
|
def storeValue(self, name, value):
|
||||||
@ -508,7 +508,7 @@ class TableStack:
|
|||||||
else:
|
else:
|
||||||
assert table[name] == value, (table[name], value)
|
assert table[name] == value, (table[name], value)
|
||||||
def __findTable(self, name):
|
def __findTable(self, name):
|
||||||
for table in self.stack:
|
for table in reversed(self.stack):
|
||||||
if table.has_key(name):
|
if table.has_key(name):
|
||||||
return table
|
return table
|
||||||
raise KeyError, name
|
raise KeyError, name
|
||||||
|
Loading…
x
Reference in New Issue
Block a user