public ProcedureStyleCall(Compiler.Nodes.ProcedureStyleCall node)
     : base(null)
 {
     this.Node = node;
     var statement = (ProcedureStyleCallStatement)Node.CodeElement;
     call = new CallStatement();
     call.ProgramOrProgramEntryOrProcedureOrFunction = new SymbolReferenceVariable(StorageDataType.ProgramName, statement.ProcedureCall.ProcedureName);
     call.InputParameters = new List<CallSiteParameter>(statement.ProcedureCall.Arguments);
     call.OutputParameter = null;
 }
Exemple #2
0
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="node">The AST Node of Procedure Call</param>
 public ProcedureStyleCall(Compiler.Nodes.ProcedureStyleCall node)
     : base(null)
 {
     this.Node = node;
     Statement = (ProcedureStyleCallStatement)Node.CodeElement;
     call      = new CallStatement();
     call.ProgramOrProgramEntryOrProcedureOrFunction = new SymbolReferenceVariable(StorageDataType.ProgramName, Statement.ProcedureCall.ProcedureName);
     call.InputParameters = new List <CallSiteParameter>(Statement.ProcedureCall.Arguments);
     call.OutputParameter = null;
     //Add any optional CALL-END statement
     foreach (var child in node.Children)
     {
         this.Add(child);
         if (child.CodeElement != null && child.CodeElement.Type == TypeCobol.Compiler.CodeElements.CodeElementType.CallStatementEnd)
         {
             HasCallEnd = true;
         }
     }
 }