コード例 #1
0
ファイル: analyzer.py プロジェクト: ThomasBollmeier/hackeme
 def _group_varargs_in_list(self, args, arity):
     num_fixed_params = arity.get_min_num_params()
     arguments = args.get_children()
     args.remove_children()
     for fixed_argument in arguments[:num_fixed_params]:
         args.add_child(fixed_argument)
     var_args = Ast("list")
     args.add_child(var_args)
     for var_argument in arguments[num_fixed_params:]:
         var_args.add_child(var_argument)
コード例 #2
0
 def _trans_connection(self, ast):
     ret = Ast('connection')
     lhs = Ast('pin')
     ret.add_child(lhs)
     lhs.set_attr("name", ast.find_children_by_id('param')[0].value)
     from_ = ast.find_children_by_id('from')
     if from_:
         from_ = from_[0].value
         to = ast.find_children_by_id('to')[0].value
         lhs.set_attr("from", from_)
         lhs.set_attr("to", to)
     value = ast.get_children()[-1]
     ret.add_child(value)
     return ret