Implement Lazy List reading. Update docs according to last changes (in FS too).

Adds a new tree node type, SUBIDX, which hopefully should never appear in actual output. If it does, it's prefixed with the string (MISSING TYPE) as a cue to the programmer.
This commit is contained in:
Sei Lisa 2015-03-13 06:38:35 +01:00
parent 535dc8434c
commit 890e960b57
4 changed files with 135 additions and 61 deletions

View file

@ -1029,6 +1029,19 @@ class foldconst(object):
node['StSw'] = True
return
if nt == 'SUBIDX':
# Recurse to every child. It's SEF if all children are.
idx = 0
issef = True
while idx < len(child):
self.FoldTree(child, idx)
if 'SEF' not in child[idx]:
issef = False
idx += 1
if issef:
node['SEF'] = True
return
if nt == ';':
node['SEF'] = True
return