Exemple #1
0
 public virtual object VisitForEachStatement(ForEachStatementAst forEachStatementAst)
 {
     VisitElement(forEachStatementAst.Variable);
     VisitElement(forEachStatementAst.Condition);
     VisitElement(forEachStatementAst.Body);
     return(forEachStatementAst);
 }
        public object VisitForEachStatement(ForEachStatementAst forEachStatementAst)
        {
            var newVariable  = VisitElement(forEachStatementAst.Variable);
            var newCondition = VisitElement(forEachStatementAst.Condition);
            var newBody      = VisitElement(forEachStatementAst.Body);

            return(new ForEachStatementAst(forEachStatementAst.Extent, forEachStatementAst.Label, ForEachFlags.None,
                                           newVariable, newCondition, newBody));
        }
        public override AstVisitAction VisitForEachStatement(ForEachStatementAst forEachStatementAst)
        {
            var body      = VisitSyntaxNode(forEachStatementAst.Body);
            var condition = VisitSyntaxNode(forEachStatementAst.Condition);
            var variable  = VisitSyntaxNode(forEachStatementAst.Variable);

            _currentNode = new ForEachStatement(variable as IdentifierName, condition, body);

            return(AstVisitAction.SkipChildren);
        }
 public virtual StatementAst VisitForEachStatement(ForEachStatementAst forEachStatementAst)
 {
     return(new ForEachStatementAst(
                forEachStatementAst.Extent,
                forEachStatementAst.Label,
                forEachStatementAst.Flags,
                forEachStatementAst.Variable.Rewrite(this, SyntaxKind.Variable),
                forEachStatementAst.Condition.Rewrite(this, SyntaxKind.Pipeline),
                forEachStatementAst.Body.Rewrite(this, SyntaxKind.StatementBlock)));
 }
        public object VisitForEachStatement(ForEachStatementAst forEachStatementAst)
        {
            var throttleLimit = VisitAst(forEachStatementAst.ThrottleLimit);
            var variable      = VisitAst(forEachStatementAst.Variable);
            var expression    = VisitAst(forEachStatementAst.Condition);
            var body          = VisitAst(forEachStatementAst.Body);

            return(new ForEachStatementAst(forEachStatementAst.Extent, forEachStatementAst.Label, forEachStatementAst.Flags,
                                           throttleLimit, variable, expression, body));
        }
Exemple #6
0
        public override AstVisitAction VisitForEachStatement(ForEachStatementAst forEachStatementAst)
        {
            explanations.Add(
                new Explanation()
            {
                Description     = $"Executes the code in the script block for each element '{forEachStatementAst.Variable.Extent.Text}' in '{forEachStatementAst.Condition}'",
                CommandName     = "foreach statement",
                HelpResult      = HelpTableQuery("about_foreach"),
                TextToHighlight = "foreach"
            }.AddDefaults(forEachStatementAst, explanations));

            return(base.VisitForEachStatement(forEachStatementAst));
        }
Exemple #7
0
 public override object VisitForEachStatement(ForEachStatementAst forEachStatementAst)
 {
     if (forEachStatementAst.Label != null)
     {
         script_.Write(":" + forEachStatementAst.Label + " ");
     }
     script_.Write("foreach(");
     VisitElement(forEachStatementAst.Variable);
     script_.Write(" in ");
     VisitElement(forEachStatementAst.Condition);
     script_.Write("){");
     VisitElement(forEachStatementAst.Body);
     script_.Write("}");
     return(forEachStatementAst);
 }
 public static ForEachStatementAst Update(
     this ForEachStatementAst ast,
     VariableExpressionAst variable        = null,
     PipelineBaseAst expression            = null,
     IEnumerable <StatementAst> statements = null,
     string label       = null,
     ForEachFlags?flags = null)
 {
     return(new ForEachStatementAst(
                ast.Extent,
                label ?? ast.Label,
                flags ?? ast.Flags,
                variable?.Clone() ?? ast.Variable.Clone(),
                expression?.Clone() ?? ast.Condition.Clone(),
                ast.Body.Update(statements)));
 }
Exemple #9
0
 /// <summary/>
 public virtual AstVisitAction VisitForEachStatement(ForEachStatementAst forEachStatementAst) => DefaultVisit(forEachStatementAst);
 public object VisitForEachStatement(ForEachStatementAst forEachStatementAst)
 {
     throw PSTraceSource.NewArgumentException("ast");
 }
Exemple #11
0
 public override AstVisitAction VisitForEachStatement(ForEachStatementAst forEachStatementAst)
 {
     throw new NotImplementedException(); //VisitForEachStatement(forEachStatementAst);
 }
 public override AstVisitAction VisitForEachStatement(ForEachStatementAst forEachStatementAst)
 {
     return(Visit(forEachStatementAst));
 }
 public virtual TResult VisitForEachStatement(ForEachStatementAst forEachStatementAst) => default(TResult);
Exemple #14
0
 public object VisitForEachStatement(ForEachStatementAst forEachStatementAst)
 {
     Console.WriteLine("Visited an ForEachStatementAst.");
     return(forEachStatementAst);
 }
Exemple #15
0
 public object VisitForEachStatement(ForEachStatementAst forEachStatementAst)
 {
     throw new NotImplementedException();
 }
Exemple #16
0
 public object VisitForEachStatement(ForEachStatementAst forEachStatementAst)
 {
     throw new UnexpectedElementException();
 }
 object ICustomAstVisitor.VisitForEachStatement(ForEachStatementAst forEachStatementAst)
 => ProcessRewriter(VisitForEachStatement, forEachStatementAst);
 public object VisitForEachStatement(ForEachStatementAst forEachStatementAst) => null;
Exemple #19
0
 public override AstVisitAction VisitForEachStatement(ForEachStatementAst ast)
 {
     return(AstVisitAction.Continue);
 }
 public object VisitForEachStatement(ForEachStatementAst forEachStatementAst)
 {
     return(false);
 }
Exemple #21
0
 public override AstVisitAction VisitForEachStatement(ForEachStatementAst forEachStatementAst)
 {
     Console.WriteLine("Visited an ForEachStatementAst.");
     Console.WriteLine("    " + forEachStatementAst.ToString().Replace(Environment.NewLine, Environment.NewLine + "    "));
     return(AstVisitAction.Continue);
 }
Exemple #22
0
 // ForStatementAst Extension Methods
 // New Methods Available:
 // - CreateNodeFromAST(NodeDepth, NodePosition, Parent) => Creates a Node
 // - GetChildAst() => retourne only ASTs we are looking for ...
 public static ForeachNode CreateNodeFromAst(this ForEachStatementAst _ast, int _depth, int _position, Node _parent, Tree _tree)
 {
     return(new ForeachNode(_ast, _depth, _position, _parent, _tree));
 }
Exemple #23
0
 public override AstVisitAction VisitForEachStatement(ForEachStatementAst ast)
 {
     return(DoNextAction(ast));
 }
 object ICustomAstVisitor.VisitForEachStatement(ForEachStatementAst forEachStatementAst) => VisitForEachStatement(forEachStatementAst);
Exemple #25
0
 public override AstVisitAction VisitForEachStatement(ForEachStatementAst forEachStatementAst)
 {
     return(AstVisitAction.SkipChildren);
 }
Exemple #26
0
 public override StatementAst VisitForEachStatement(ForEachStatementAst forEachStatementAst)
 => VisitStatement(base.VisitForEachStatement(forEachStatementAst));
Exemple #27
0
 public static IEnumerable <Ast> GetChildAst(this ForEachStatementAst _ast)
 {
     return(_ast.Body.FindAll(Args => Args is Ast && Args.Parent == _ast.Body, false));
 }
Exemple #28
0
 public override AstVisitAction VisitForEachStatement(ForEachStatementAst forEachStatementAst) => VisitAst(forEachStatementAst);