Esempio n. 1
0
        public void Render(CallStatementSyntax callStatement)
        {
            Render(callStatement.CallKeywordToken);
            WriteSpace();
            Render(callStatement.IdentifierNameNode);
            Render(callStatement.OpenParenthesisSymbol);
            if (callStatement.EmptyArgumentListNode is null)
            {
                Render(callStatement.ArgumentListNode);
            }

            Render(callStatement.CloseParenthesisSymbol);
        }
Esempio n. 2
0
 public override void VisitCallStatement(CallStatementSyntax node)
 {
     LogicalLineCount++;
     base.VisitCallStatement(node);
 }
Esempio n. 3
0
        private InvokedMethod TraverseInvokedMethod(CallStatementSyntax css)
        {
            InvokedMethod invokedMethod = new InvokedMethod();

            InvocationExpressionSyntax invokeInfo = css.Invocation as InvocationExpressionSyntax;
            if (invokeInfo.ArgumentList != null)
            {
                foreach (ArgumentSyntax argSyn in invokeInfo.ArgumentList.Arguments)
                {
                    Variables parameter = new Variables();
                    parameter.Name = argSyn.ToString();
                    invokedMethod.Parameters.Add(parameter);
                }
            }
            ExpressionSyntax es = invokeInfo.Expression;
            if (es is IdentifierNameSyntax)
            {
                invokedMethod.Name = (es as IdentifierNameSyntax).Identifier.ValueText;
            }
            else if(es is MemberAccessExpressionSyntax)
            {
                MemberAccessExpressionSyntax maes = es as MemberAccessExpressionSyntax;
                invokedMethod.Name = (maes.Name as SimpleNameSyntax).Identifier.ValueText;
                //TODO: What about the expression? Is it a variable? I think so!?
            }

            return invokedMethod;
        }