public static IEnumerable<iterassgn> AllUpdates(itercase ic, Symtab stab=null) { foreach (iterassgn ia in assign_filter.Apply(ic)) { yield return ia; } }
public static IEnumerable<iterassgn> CharUpdates(itercase ic, Symtab stab) { foreach (iterassgn ia in assign_filter.Apply(ic)) { if (stab.Get(ia.lhs).type == BekTypes.CHAR) yield return ia; } }
public static IEnumerable<expr> YieldSeq(itercase ic) { foreach (yieldstmt ys in yield_filter.Apply(ic)) { foreach (expr ce in ys.args) { // This downcast should never fail, since // preprocessing steps eliminate all non-charexpr // yields... yield return (expr)ce; } } }