コード例 #1
0
        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());
        }
コード例 #2
0
 public override void MarkReachable(Reachability rc)
 {
     //
     // Reachability has been done in AsyncInitializerStatement
     //
 }
コード例 #3
0
 public override void MarkReachable(Reachability rc)
 {
     base.MarkReachable(rc);
     stmt.MarkReachable(rc);
 }
コード例 #4
0
ファイル: assign.cs プロジェクト: dyxu/vimrc
		public override void MarkReachable (Reachability rc)
		{
			var es = source as ExpressionStatement;
			if (es != null)
				es.MarkReachable (rc);
		}
コード例 #5
0
ファイル: anonymous.cs プロジェクト: erik-kallen/NRefactory
		public override void MarkReachable (Reachability rc)
		{
			block.MarkReachable (rc);
		}
コード例 #6
0
 public override Reachability MarkReachable(Reachability rc)
 {
     base.MarkReachable(rc);
     return(Reachability.CreateUnreachable());
 }
コード例 #7
0
 public override Reachability MarkReachable(Reachability rc)
 {
     return(stmt.MarkReachable(rc));
 }