Esempio n. 1
0
 public virtual void VisitFunctionCallSyntax(FunctionCallSyntax syntax)
 {
     this.Visit(syntax.Name);
     this.Visit(syntax.OpenParen);
     this.VisitNodes(syntax.Arguments);
     this.Visit(syntax.CloseParen);
 }
Esempio n. 2
0
        protected virtual SyntaxBase ReplaceFunctionCallSyntax(FunctionCallSyntax syntax)
        {
            var hasChanges = TryRewriteStrict(syntax.Name, out var name);

            hasChanges |= TryRewriteStrict(syntax.OpenParen, out var openParen);
            hasChanges |= TryRewriteStrict(syntax.Arguments, out var arguments);
            hasChanges |= TryRewriteStrict(syntax.CloseParen, out var closeParen);

            if (!hasChanges)
            {
                return(syntax);
            }

            return(new FunctionCallSyntax(name, openParen, arguments, closeParen));
        }
Esempio n. 3
0
        public static ForSyntax CreateRangedForSyntax(string indexIdentifier, SyntaxBase count, SyntaxBase body)
        {
            // generates "range(0, <count>)"
            var rangeSyntax = new FunctionCallSyntax(
                CreateIdentifier("range"),
                LeftParenToken,
                new FunctionArgumentSyntax[] {
                new FunctionArgumentSyntax(
                    new IntegerLiteralSyntax(CreateToken(TokenType.Integer, "0"), 0),
                    CommaToken),
                new FunctionArgumentSyntax(count, null),
            },
                RightParenToken);

            return(CreateForSyntax(indexIdentifier, rangeSyntax, body));
        }
Esempio n. 4
0
 void ISyntaxVisitor.VisitFunctionCallSyntax(FunctionCallSyntax syntax) => ReplaceCurrent(syntax, ReplaceFunctionCallSyntax);
Esempio n. 5
0
 public static bool NameEquals(this FunctionCallSyntax funcSyntax, string compareTo)
 => LanguageConstants.IdentifierComparer.Equals(funcSyntax.Name.IdentifierName, compareTo);