예제 #1
0
        public override void visit(loop_stmt loop)
        {
            // тут возможно ошибка более глубокая - в semantic_check_sugared_statement_node(asstup) возможно остаются во вложенных лямбдах другие assign_tuple
            var sl = new statement_list();

            sl.Add(new semantic_check_sugared_statement_node(typeof(loop_stmt), new List <syntax_tree_node> {
                loop.count
            }, loop.source_context));

            var tname = "#loop_var" + UniqueNumStr();
            var fn    = new for_node(new ident(tname), new int32_const(1), loop.count, loop.stmt, loop.source_context);

            sl.Add(fn);

            ReplaceUsingParent(loop, sl);

            visit(fn);
        }
예제 #2
0
 public override void visit(loop_stmt _loop_stmt)
 {
 }
예제 #3
0
 public virtual void visit(loop_stmt _loop_stmt)
 {
     DefaultVisit(_loop_stmt);
 }
예제 #4
0
		public override void visit(loop_stmt _loop_stmt)
		{
			DefaultVisit(_loop_stmt);
			pre_do_visit(_loop_stmt);
			visit(loop_stmt.stmt);
			post_do_visit(_loop_stmt);
		}
예제 #5
0
		public virtual void post_do_visit(loop_stmt _loop_stmt)
		{
		}
예제 #6
0
 public virtual void visit(loop_stmt _loop_stmt)
 {
 }
예제 #7
0
 public override void visit(loop_stmt _loop_stmt)
 {
     throw new NotImplementedException();
 }
 public override void visit(loop_stmt ln)
 {
     LoopsCount++;
     base.visit(ln);
 }
예제 #9
0
		public virtual void visit(loop_stmt _loop_stmt)
		{
		}
		public virtual void visit(loop_stmt _loop_stmt)
		{
			DefaultVisit(_loop_stmt);
		}
예제 #11
0
 public override void visit(loop_stmt _loop_stmt)
 {
     prepare_node(_loop_stmt.stmt, "stmt");
 }
예제 #12
0
		public override void visit(loop_stmt _loop_stmt)
		{
			executer.visit(_loop_stmt);
			if (_loop_stmt.stmt != null)
				this.visit((dynamic)_loop_stmt.stmt);
			if (_loop_stmt.attributes != null)
				this.visit((dynamic)_loop_stmt.attributes);
		}