Esempio n. 1
0
 public override object VisitContinueStatement(ContinueStatementAst continueStatementAst)
 {
     script_.Write("continue");
     if (continueStatementAst.Label != null)
     {
         script_.Write(" ");
     }
     VisitElement(continueStatementAst.Label);
     return(continueStatementAst);
 }
Esempio n. 2
0
        public override AstVisitAction VisitContinueStatement(ContinueStatementAst continueStatementAst)
        {
            explanations.Add(
                new Explanation()
            {
                CommandName = "continue statement",
                HelpResult  = HelpTableQuery("about_continue"),
                Description = $"Skips forward to the next iteration inside a loop."
            }.AddDefaults(continueStatementAst, explanations));

            return(base.VisitContinueStatement(continueStatementAst));
        }
        public void ProcessContinueStatement(ContinueStatementAst continueStatement)
        {
            Guard.Against.Null(continueStatement, nameof(continueStatement));

            if (!IsInWhile)
            {
                throw new SemanticException($"Not in while, cannot continue");
            }

            // jmp CurrentWhile.Start
            Debug.Assert(CurrentWhile.StartLabel != null);

            if (CodeGenerationEnabled)
            {
                CurrentFunction.Builder.Bucket.Add(Instruction.Pack("br", CurrentWhile.StartLabel));
            }
        }
Esempio n. 4
0
 public override StatementAst VisitContinueStatement(ContinueStatementAst continueStatementAst)
 => VisitStatement(base.VisitContinueStatement(continueStatementAst));
Esempio n. 5
0
 public override AstVisitAction VisitContinueStatement(ContinueStatementAst ast)
 {
     return(DoNextAction(ast));
 }
 public override AstVisitAction VisitContinueStatement(ContinueStatementAst continueStatementAst)
 {
     return(Visit(continueStatementAst));
 }
Esempio n. 7
0
 public object VisitContinueStatement(ContinueStatementAst continueStatementAst)
 {
     return(false);
 }
Esempio n. 8
0
 public object VisitContinueStatement(ContinueStatementAst continueStatementAst)
 {
     Console.WriteLine("Visited an ContinueStatementAst.");
     return(continueStatementAst);
 }
Esempio n. 9
0
 /// <summary/>
 public virtual AstVisitAction VisitContinueStatement(ContinueStatementAst continueStatementAst) => DefaultVisit(continueStatementAst);
 public static ContinueStatementAst Update(this ContinueStatementAst ast, ExpressionAst label = null)
 {
     return(new ContinueStatementAst(ast.Extent, label?.Clone() ?? ast.Label?.Clone()));
 }
Esempio n. 11
0
 public object VisitContinueStatement(ContinueStatementAst continueStatementAst)
 {
     throw new UnexpectedElementException();
 }
 object ICustomAstVisitor.VisitContinueStatement(ContinueStatementAst continueStatementAst)
 => ProcessRewriter(VisitContinueStatement, continueStatementAst);
 public virtual StatementAst VisitContinueStatement(ContinueStatementAst continueStatementAst)
 {
     return(new ContinueStatementAst(
                continueStatementAst.Extent,
                continueStatementAst.Label?.Rewrite(this)));
 }
 object ICustomAstVisitor.VisitContinueStatement(ContinueStatementAst continueStatementAst) => VisitContinueStatement(continueStatementAst);
 public virtual TResult VisitContinueStatement(ContinueStatementAst continueStatementAst) => default(TResult);
Esempio n. 16
0
 public override AstVisitAction VisitContinueStatement(ContinueStatementAst continueStatementAst)
 {
     throw new NotImplementedException(); //VisitContinueStatement(continueStatementAst);
 }
 public object VisitContinueStatement(ContinueStatementAst continueStatementAst)
 {
     throw PSTraceSource.NewArgumentException("ast");
 }
 public override AstVisitAction VisitContinueStatement(ContinueStatementAst continueStatementAst)
 {
     _currentNode = new Continue();
     return(AstVisitAction.SkipChildren);
 }
 public object VisitContinueStatement(ContinueStatementAst continueStatementAst) => null;
Esempio n. 20
0
 public object VisitContinueStatement(ContinueStatementAst continueStatementAst)
 {
     throw new NotImplementedException();
 }
Esempio n. 21
0
 public override AstVisitAction VisitContinueStatement(ContinueStatementAst continueStatementAst)
 {
     Console.WriteLine("Visited an ContinueStatementAst.");
     Console.WriteLine("    " + continueStatementAst.ToString().Replace(Environment.NewLine, Environment.NewLine + "    "));
     return(AstVisitAction.Continue);
 }
Esempio n. 22
0
 public override AstVisitAction VisitContinueStatement(ContinueStatementAst ast)
 {
     return(AstVisitAction.Continue);
 }
        public object VisitContinueStatement(ContinueStatementAst continueStatementAst)
        {
            var newLabel = VisitElement(continueStatementAst.Label);

            return(new ContinueStatementAst(continueStatementAst.Extent, newLabel));
        }
Esempio n. 24
0
 public virtual object VisitContinueStatement(ContinueStatementAst continueStatementAst)
 {
     VisitElement(continueStatementAst.Label);
     return(continueStatementAst);
 }
Esempio n. 25
0
 // ContinueStatementAst Extension Methods
 // New Methods Available:
 // - CreateNodeFromAST(NodeDepth, NodePosition, Parent) => Creates a Node
 public static ContinueNode CreateNodeFromAst(this ContinueStatementAst _ast, int _depth, int _position, Node _parent, Tree _tree)
 {
     return(new ContinueNode(_ast, _depth, _position, _parent, _tree));
 }
Esempio n. 26
0
 public override AstVisitAction VisitContinueStatement(ContinueStatementAst continueStatementAst) => VisitAst(continueStatementAst);