6.9.3.5. kernelsoflalr1items

6.9.3.5. kernelsoflalr1items

Start python section to interscript/parsers/lalr1.py[17]
   419: #line 587 "lalr1_parser.ipk"
   420:   def kernelsoflalr1items(self):
   421:     res = [[(0, 0)]]
   422:     todo = [[(0, 0)]]
   423:     while 1:
   424:       newtodo = []
   425:       for items in todo:
   426:         for s in self.terms + self.nonterms + [EOF]:
   427:           g = self.goto(items, s)
   428:           if g and g not in res:
   429:             newtodo.append(g)
   430:       if not newtodo:
   431:         break
   432:       else:
   433:         if self.verbosity>1:
   434:           print "found %d more kernels" % (len(newtodo))
   435:         res = res + newtodo
   436:         todo = newtodo
   437:     res.sort()
   438:     return res
   439: 
   440: 
End python section to interscript/parsers/lalr1.py[17]