Lines Matching refs:self

19     def __init__(self, msg, type, value, context):
20 Exception.__init__(self, "%s: type=%r, value=%r, context=%r" %
22 self.msg = msg
23 self.type = type
24 self.value = value
25 self.context = context
27 def __reduce__(self):
28 return type(self), (self.msg, self.type, self.value, self.context)
60 def __init__(self, grammar, convert=None):
89 self.grammar = grammar
90 self.convert = convert or (lambda grammar, node: node)
92 def setup(self, start=None):
106 start = self.grammar.start
111 stackentry = (self.grammar.dfas[start], 0, newnode)
112 self.stack = [stackentry]
113 self.rootnode = None
114 self.used_names = set() # Aliased to self.rootnode.used_names in pop()
116 def addtoken(self, type, value, context):
119 ilabel = self.classify(type, value, context)
122 dfa, state, node = self.stack[-1]
127 t, v = self.grammar.labels[i]
132 self.shift(type, value, newstate, context)
136 self.pop()
137 if not self.stack:
140 dfa, state, node = self.stack[-1]
146 itsdfa = self.grammar.dfas[t]
150 self.push(t, self.grammar.dfas[t], newstate, context)
155 self.pop()
156 if not self.stack:
164 def classify(self, type, value, context):
168 self.used_names.add(value)
170 ilabel = self.grammar.keywords.get(value)
173 ilabel = self.grammar.tokens.get(type)
178 def shift(self, type, value, newstate, context):
180 dfa, state, node = self.stack[-1]
182 newnode = self.convert(self.grammar, newnode)
185 self.stack[-1] = (dfa, newstate, node)
187 def push(self, type, newdfa, newstate, context):
189 dfa, state, node = self.stack[-1]
191 self.stack[-1] = (dfa, newstate, node)
192 self.stack.append((newdfa, 0, newnode))
194 def pop(self):
196 popdfa, popstate, popnode = self.stack.pop()
197 newnode = self.convert(self.grammar, popnode)
199 if self.stack:
200 dfa, state, node = self.stack[-1]
203 self.rootnode = newnode
204 self.rootnode.used_names = self.used_names