示例#1
0
 public virtual void VisitForStatement(ForStatement node)
 {
     this.Visit(node.get_Initializer());
     this.Visit(node.get_Condition());
     this.Visit(node.get_Increment());
     this.Visit(node.get_Body());
     return;
 }
 public virtual ICodeNode VisitForStatement(ForStatement node)
 {
     node.set_Initializer((Expression)this.Visit(node.get_Initializer()));
     node.set_Condition((Expression)this.Visit(node.get_Condition()));
     node.set_Increment((Expression)this.Visit(node.get_Increment()));
     node.set_Body((BlockStatement)this.Visit(node.get_Body()));
     return(node);
 }
示例#3
0
 private ForStatement CreateForStatement(Statement initializer, WhileStatement theWhile)
 {
     V_0 = theWhile.get_Body().get_Statements().get_Count() - 1;
     V_1 = theWhile.get_Body().get_Statements().get_Item(V_0).get_Label();
     V_2 = new ForStatement((initializer as ExpressionStatement).get_Expression(), theWhile.get_Condition(), (theWhile.get_Body().get_Statements().get_Item(V_0) as ExpressionStatement).get_Expression(), new BlockStatement());
     V_3 = 0;
     while (V_3 < V_0)
     {
         V_2.get_Body().AddStatement(theWhile.get_Body().get_Statements().get_Item(V_3));
         V_3 = V_3 + 1;
     }
     if (!String.IsNullOrEmpty(V_1))
     {
         stackVariable42 = new EmptyStatement();
         stackVariable42.set_Label(V_1);
         V_2.get_Body().AddStatement(stackVariable42);
     }
     return(V_2);
 }
 public override void VisitForStatement(ForStatement node)
 {
     this.expressions.Push(1);
     this.Visit(node.get_Initializer());
     dummyVar0 = this.expressions.Pop();
     this.Visit(node.get_Condition());
     this.Visit(node.get_Increment());
     this.Visit(node.get_Body());
     return;
 }
示例#5
0
 public override void VisitForStatement(ForStatement node)
 {
     this.TryProcessConditionStatement(node);
     this.Visit(node.get_Initializer());
     this.states.Push(2);
     this.Visit(node.get_Condition());
     dummyVar0 = this.states.Pop();
     this.Visit(node.get_Increment());
     this.Visit(node.get_Body());
     return;
 }