Esempio n. 1
0
 def parse(tokenstream):
     current_type = None
     body = Body()
     for p in tokenstream:
         new_type = guess_type(p, current_type)
         # if not new_type == None:
         #    print "Guessed %s for %r" % (new_type.__name__,p[:20])
         if new_type is None:
             pass
         elif new_type == Continuation and len(body) > 0:
             # Don't create a new text node, add this text to the last
             # text node created
             para = body.pop()
             para.append(p)
             body.append(para)
         else:
             if new_type == Continuation:
                 new_type = Paragraph
             body.append(new_type([p]))
             current_type = new_type
     return body