示例#1
0
 protected virtual void WriteMemberAttributesInternal(IMemberDefinition member, bool isWinRTImplementation)
 {
     this.securityAttributeToDeclaration = new Dictionary <SecurityAttribute, SecurityDeclaration>();
     V_0 = this.CollectSecurityAttributes(member);
     V_1 = member.get_CustomAttributes().GetEnumerator();
     try
     {
         while (V_1.MoveNext())
         {
             V_2 = V_1.get_Current();
             V_2.Resolve();
             if (isWinRTImplementation && this.IsWinRTActivatableAttribute(V_2))
             {
                 continue;
             }
             V_0.Add(V_2);
         }
     }
     finally
     {
         V_1.Dispose();
     }
     V_0.AddRange(this.WritePropertiesAsAttributes(member));
     this.SortAttributes(V_0);
     this.WriteAttributesInternal(member, V_0, false, false);
     return;
 }
示例#2
0
 private void MarkAsGotoEdge(ILogicalConstruct start, ILogicalConstruct end)
 {
     if (start == null || end == null)
     {
         throw new ArgumentOutOfRangeException("GoTo edge's ends must implement ILogicalConstruct.");
     }
     if (!this.removedEdges.TryGetValue(start, out V_0))
     {
         V_0 = new HashSet <ILogicalConstruct>();
         this.removedEdges.set_Item(start, V_0);
     }
     dummyVar0 = V_0.Add(end);
     return;
 }
 protected override void AnalyzeAssignments()
 {
     V_0 = this.dataSelector.Invoke(this.context).get_FieldAssignmentData();
     V_1 = this.context.get_TypeContext().get_CurrentType().get_Fields().GetEnumerator();
     try
     {
         while (V_1.MoveNext())
         {
             V_2 = V_1.get_Current();
             V_0.Add(V_2, this.AnalyzeAssignmentType(new FieldUsageFinder(V_2)));
         }
     }
     finally
     {
         V_1.Dispose();
     }
     return;
 }
 protected virtual TCollection Visit <TCollection, TElement>(TCollection original)
     where TCollection : class, IList <TElement>, new()
     where TElement : class, ICodeNode
 {
     V_0 = default(TCollection);
     V_1 = 0;
     while (V_1 < original.get_Count())
     {
         V_2 = (TElement)this.Visit(original.get_Item(V_1));
         if (V_0 == null)
         {
             if ((object)V_2 != (object)original.get_Item(V_1))
             {
                 V_0 = Activator.CreateInstance <TCollection>();
                 V_3 = 0;
                 while (V_3 < V_1)
                 {
                     V_0.Add(original.get_Item(V_3));
                     V_3 = V_3 + 1;
                 }
                 if (V_2 != null)
                 {
                     V_0.Add(V_2);
                 }
             }
         }
         else
         {
             if (V_2 != null)
             {
                 V_0.Add(V_2);
             }
         }
         V_1 = V_1 + 1;
     }
     stackVariable49 = V_0;
     if (stackVariable49 == null)
     {
         dummyVar0       = stackVariable49;
         stackVariable49 = original;
     }
     return(stackVariable49);
 }
示例#5
0
 private void ExpandLoopBody(IntervalConstruct interval, HashSet <ILogicalConstruct> loopBody, ILogicalConstruct loopSuccessor)
 {
     V_0       = this.GetIntervalSuccessors(interval, loopSuccessor);
     dummyVar0 = V_0.Add(loopSuccessor);
     V_1       = interval.get_Children().GetEnumerator();
     try
     {
         while (V_1.MoveNext())
         {
             V_2 = (LogicalConstructBase)V_1.get_Current();
             if (V_0.Contains(V_2))
             {
                 continue;
             }
             dummyVar1 = loopBody.Add(V_2);
         }
     }
     finally
     {
         ((IDisposable)V_1).Dispose();
     }
     return;
 }