Esempio n. 1
0
 private void SetTrueAndFalseSuccessors(CFGBlockLogicalConstruct cfgConditionBlock)
 {
     stackVariable1 = cfgConditionBlock.get_TheBlock();
     V_0            = stackVariable1.get_Successors()[0];
     V_1            = stackVariable1.get_Successors()[1];
     V_2            = cfgConditionBlock.get_CFGSuccessors().GetEnumerator();
     try
     {
         while (V_2.MoveNext())
         {
             V_3 = V_2.get_Current();
             if (InstructionBlock.op_Equality(V_3.get_TheBlock(), V_0))
             {
                 this.set_TrueCFGSuccessor(V_3);
             }
             if (!InstructionBlock.op_Equality(V_3.get_TheBlock(), V_1))
             {
                 continue;
             }
             this.set_FalseCFGSuccessor(V_3);
         }
     }
     finally
     {
         ((IDisposable)V_2).Dispose();
     }
     return;
 }
 private SwitchLogicalConstruct(CFGBlockLogicalConstruct entry, ICollection <CaseLogicalConstruct> body, PairList <List <int>, CFGBlockLogicalConstruct> nonDominatedCFGSuccessors, CaseLogicalConstruct defaultCase, CFGBlockLogicalConstruct defaultCFGSuccessor)
 {
     base();
     this.set_SwitchConditionExpression(entry.get_LogicalConstructExpressions().get_Item(0));
     this.set_DefaultCase(defaultCase);
     this.set_DefaultCFGSuccessor(defaultCFGSuccessor);
     this.set_NonDominatedCFGSuccessors(nonDominatedCFGSuccessors);
     this.FillCasesArray(body);
     this.set_Entry(entry);
     this.RedirectChildrenToNewParent(this.GetBodyCollection());
     if (entry.get_CFGSuccessors().Contains(entry))
     {
         this.AddToPredecessors(entry);
         this.AddToSuccessors(entry);
     }
     return;
 }