Пример #1
0
 def visitExpressionList(self, expression_list):
     """
     Remove the ExpresionList level from the AST by replacing the contents of the
     owning attribute of its parent.
     """
     expression_list.forEachChild(self.visit)
     elideNode(expression_list, liftFormalTypes=True)
Пример #2
0
 def visitVariableList(self, variable_list):
     """
     Remove the VariableList level from the AST by replacing the contents of the
     owning attribute of its parent.
     """
     variable_list.forEachChild(self.visit)
     elideNode(variable_list, liftFormalTypes=True)
Пример #3
0
 def visitInputList(self, input_list):
     """
     Remove the InputList level from the AST by replacing the contents of the
     owning attribute of its parent.
     """
     input_list.forEachChild(self.visit)
     elideNode(input_list, liftFormalTypes=True)
Пример #4
0
 def visitFormalArgList(self, formal_arg_list):
     """
     Remove the FormalArgList level from the AST by replacing the contents of
     the owning attribute of its parent with the FormalArgList's own list of arguments
     """
     formal_arg_list.forEachChild(self.visit)
     elideNode(formal_arg_list, liftFormalTypes=True)
Пример #5
0
 def visitVduList(self, vdu_list):
     """
     Remove VduList level from the AST by replacing the contents of
     the owning attribute of its parent with the VduList's own list of items 
     """
     vdu_list.forEachChild(self.visit)
     elideNode(vdu_list, liftFormalTypes=True)
Пример #6
0
 def visitIntFunc(self, func):
     self.visit(func.factor)
     if not self.checkSignature(func):
         # TODO: Error?
         return
     if func.factor.actualType == IntegerOwlType():
         elideNode(func)