public iterexpr(ident c0, expr src, iterinit init, params itercase[] cont) { this.binder = c0; this.source = src; this.initializer = init; this.body = new List<itercase>(cont); }
public iterexpr(ident c0, expr src, iterinit init, IEnumerable<itercase> cont) { this.binder = c0; this.source = src; this.initializer = init; this.body = new List<itercase>(cont); }
internal void PushIter(ident binder, iterinit initializer) { this.PushBlock(); // clear names this.RemoveElt(binder.name); foreach (var assgn in initializer.assgns) { this.RemoveElt(assgn.lhs.name); } // re-assign names foreach (var assgn in initializer.assgns) { this.HandleLhs(assgn.lhs, iter_init_visitor.Visit(this, assgn.rhs), true); } this.HandleLhs(binder, BekTypes.CHAR, true); }