/// <summary>
 /// Constructs a new instance based on a control-flow graph and an assumption on IsCompleted properties.
 /// </summary>
 /// <param name="cfg">a control-flow graph</param>
 /// <param name="assumption">whether the IsCompleted property is assumed to return always true or always false</param>
 public AsyncMethodCustomInstructionInfo(MethodCode cfg, EAssumption assumption) :
     base(cfg.Method)
 {
     _cfg             = cfg;
     _assumption      = assumption;
     _branchOverrides = new Dictionary <int, int>();
     MarkIsCompletedBranches();
 }
 /// <summary>
 /// Constructs a new instance based on a control-flow graph and an assumption on IsCompleted properties.
 /// </summary>
 /// <param name="cfg">a control-flow graph</param>
 /// <param name="assumption">whether the IsCompleted property is assumed to return always true or always false</param>
 public AsyncMethodCustomInstructionInfo(MethodCode cfg, EAssumption assumption):
     base(cfg.Method)
 {
     _cfg = cfg;
     _assumption = assumption;
     _branchOverrides = new Dictionary<int, int>();
     MarkIsCompletedBranches();
 }