Ejemplo n.º 1
0
 public virtual void VisitForSyntax(ForSyntax syntax)
 {
     this.Visit(syntax.OpenSquare);
     this.Visit(syntax.ForKeyword);
     this.Visit(syntax.VariableSection);
     this.Visit(syntax.InKeyword);
     this.Visit(syntax.Expression);
     this.Visit(syntax.Colon);
     this.Visit(syntax.Body);
     this.Visit(syntax.CloseSquare);
 }
Ejemplo n.º 2
0
        protected virtual SyntaxBase ReplaceForSyntax(ForSyntax syntax)
        {
            var hasChanges = TryRewriteStrict(syntax.OpenSquare, out var openSquare);

            hasChanges |= TryRewriteStrict(syntax.ForKeyword, out var forKeyword);
            hasChanges |= TryRewrite(syntax.VariableSection, out var itemVariable);
            hasChanges |= TryRewrite(syntax.InKeyword, out var inKeyword);
            hasChanges |= TryRewrite(syntax.Expression, out var expression);
            hasChanges |= TryRewrite(syntax.Colon, out var colon);
            hasChanges |= TryRewrite(syntax.Body, out var body);
            hasChanges |= TryRewrite(syntax.CloseSquare, out var closeSquare);

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

            return(new ForSyntax(openSquare, forKeyword, itemVariable, inKeyword, expression, colon, body, closeSquare));
        }
Ejemplo n.º 3
0
 void ISyntaxVisitor.VisitForSyntax(ForSyntax syntax) => ReplaceCurrent(syntax, ReplaceForSyntax);