示例#1
0
文件: special.py 项目: charyorde/dao
 def tag_loop_label(self, tagger):
   label = tagger.make_label(self.label)
   tagger.push_label('until', label)
   body = tagger.tag_loop_label(self.body)
   tagger.pop_label('until')
   body = body+(if_(not_(self.condition), continue_block(label)), )
   return begin(block(label, *body), None)
示例#2
0
文件: special.py 项目: charyorde/dao
 def tag_loop_label(self, tagger):
   label = tagger.make_label(self.label)
   tagger.push_label('when', label)
   body = tagger.tag_loop_label(self.body)
   tagger.pop_label('when')
   start_condition = [if_(not_(self.condition), exit_block(label))]
   return begin(block(label, *(start_condition+list(body)+[continue_block(label)])), None)