public override Reachability MarkReachable(Reachability rc) { if (!rc.IsUnreachable) { reachable = true; } var init = (AsyncInitializer)Expr; rc = init.Block.MarkReachable(rc); var storey = (AsyncTaskStorey)init.Storey; // // Explicit return is required for Task<T> state machine // if (storey.ReturnType != null && storey.ReturnType.IsGenericTask) { return(rc); } return(Reachability.CreateUnreachable()); }
public override void MarkReachable(Reachability rc) { // // Reachability has been done in AsyncInitializerStatement // }
public override void MarkReachable(Reachability rc) { base.MarkReachable(rc); stmt.MarkReachable(rc); }
public override Reachability MarkReachable(Reachability rc) { base.MarkReachable(rc); return(Reachability.CreateUnreachable()); }
public override void MarkReachable (Reachability rc) { block.MarkReachable (rc); }
public override void MarkReachable (Reachability rc) { var es = source as ExpressionStatement; if (es != null) es.MarkReachable (rc); }