Home | History | Annotate | Download | only in ply

Lines Matching refs:terminals

1296 def rightmost_terminal(symbols, terminals):
1299 if symbols[i] in terminals:
1315 def __init__(self,terminals):
1326 self.Terminals = { } # A dictionary mapping the names of terminal symbols to a
1329 for term in terminals:
1330 self.Terminals[term] = []
1332 self.Terminals['error'] = []
1392 if prodname in self.Terminals:
1406 if not c in self.Terminals:
1407 self.Terminals[c] = []
1430 precname = rightmost_terminal(syms,self.Terminals)
1445 # Add the production number to Terminals and Nonterminals
1447 if t in self.Terminals:
1448 self.Terminals[t].append(pnumber)
1502 for s in list(self.Terminals) + list(self.Nonterminals):
1515 # to derive a string of only terminals).
1521 # Terminals:
1522 for t in self.Terminals:
1566 if not s in self.Prodnames and not s in self.Terminals and s != 'error':
1589 if not s in self.Prodnames and not s in self.Terminals and s != 'error':
1596 # Find all terminals that were defined, but not used by the grammar. Returns
1601 for s,v in self.Terminals.items():
1634 if not (termname in self.Terminals or termname in self.UsedPrecedence):
1685 # Terminals:
1686 for t in self.Terminals:
2089 # Creates a dictionary containing all of the non-terminals that might produce
2137 # Returns a list of terminals.
2149 if a in self.grammar.Terminals:
2241 if p.prod[li] in self.grammar.Terminals: break # No forget it
2458 Terminals:
2916 terminals = {}
2918 if n in terminals:
2920 terminals[n] = 1
3110 # Set precedence level for terminals
3151 debuglog.info("Unused terminals:")
3165 # Find unused non-terminals
3182 debuglog.info("Terminals, with rules where they appear")
3184 terms = list(grammar.Terminals)
3187 debuglog.info("%-20s : %s", term, " ".join([str(s) for s in grammar.Terminals[term]]))