public BlockStatement Process(DecompilationContext context, BlockStatement body) { this.context = context.get_MethodContext(); V_0 = context.get_MethodContext().get_Expressions().get_BlockExpressions().GetEnumerator(); try { while (V_0.MoveNext()) { V_1 = V_0.get_Current(); this.parentExpressions.Clear(); V_2 = V_1.get_Value().GetEnumerator(); try { while (V_2.MoveNext()) { V_3 = V_2.get_Current(); this.Visit(V_3); } } finally { if (V_2 != null) { V_2.Dispose(); } } } } finally { ((IDisposable)V_0).Dispose(); } return(body); }
public static NamespaceHierarchyTree BuildNamespaceHierarchyTree(this AssemblyDefinition self) { V_0 = new HashSet <string>(); V_1 = self.get_Modules().GetEnumerator(); try { while (V_1.MoveNext()) { V_2 = V_1.get_Current().get_Types().GetEnumerator(); try { while (V_2.MoveNext()) { V_3 = V_2.get_Current(); if (String.op_Equality(V_3.get_Namespace(), String.Empty) && String.op_Equality(V_3.get_Name(), "<Module>")) { continue; } dummyVar0 = V_0.Add(V_3.get_Namespace()); } } finally { V_2.Dispose(); } } } finally { V_1.Dispose(); } return(NamespaceHierarchyTreeBuilder.BuildTree(V_0)); }
private string GetArgumentsString(Collection <ParameterDefinition> parameters) { if (parameters.get_Count() == 0) { return(String.Empty); } V_0 = new StringBuilder(); dummyVar0 = V_0.Append('('); V_1 = true; V_2 = parameters.GetEnumerator(); try { while (V_2.MoveNext()) { V_3 = V_2.get_Current(); if (!V_1) { dummyVar1 = V_0.Append(','); } V_4 = this.GetParameterTypeRepresentation(V_3.get_ParameterType()); dummyVar2 = V_0.Append(V_4); V_1 = false; } } finally { V_2.Dispose(); } dummyVar3 = V_0.Append(')'); return(V_0.ToString()); }
private void RemoveTransitiveEdges() { V_0 = this.GenerateNodeToIndex(); V_1 = this.GeenrateAdjacencyMatrix(V_0); this.WarsawTransitiveClosure(V_1); V_2 = this.inferenceGraph.GetEnumerator(); try { while (V_2.MoveNext()) { V_3 = V_2.get_Current(); V_4 = this.inferenceGraph.GetEnumerator(); try { while (V_4.MoveNext()) { V_5 = V_4.get_Current(); V_6 = this.inferenceGraph.GetEnumerator(); try { while (V_6.MoveNext()) { V_7 = V_6.get_Current(); V_8 = V_0.get_Item(V_3); V_9 = V_0.get_Item(V_5); V_10 = V_0.get_Item(V_7); if (!V_1[V_8, V_9] || !V_1[V_9, V_10] || V_3.get_IsHardNode() && V_7.get_IsHardNode() || !V_3.get_SubTypes().Contains(V_7)) { continue; } this.RemoveSubtype(V_3, V_7); } } finally { if (V_6 != null) { V_6.Dispose(); } } } } finally { if (V_4 != null) { V_4.Dispose(); } } } } finally { if (V_2 != null) { V_2.Dispose(); } } return; }
protected virtual void OnPhiVariableAssigned(int instructionOffset, ClassHierarchyNode variableNode) { V_0 = this.offsetToExpression.get_Item(instructionOffset).get_ExpressionType(); if (V_0 != null) { V_1 = this.GetTypeNode(V_0); V_1.AddSupertype(variableNode); dummyVar1 = this.resultingGraph.Add(V_1); return; } V_2 = this.GetVariables(instructionOffset).GetEnumerator(); try { while (V_2.MoveNext()) { V_3 = V_2.get_Current(); V_1 = this.GetVariableNode(V_3); V_1.AddSupertype(variableNode); dummyVar0 = this.resultingGraph.Add(V_1); } } finally { if (V_2 != null) { V_2.Dispose(); } } return; }
protected override ClassHierarchyNode FindLowestCommonAncestor(ICollection <ClassHierarchyNode> typeNodes) { V_0 = null; V_1 = -2147483648; V_2 = typeNodes.GetEnumerator(); try { while (V_2.MoveNext()) { V_3 = V_2.get_Current(); V_4 = ExpressionTypeInferer.GetTypeIndex(V_3.get_NodeType()); if (V_4 <= V_1) { continue; } V_1 = V_4; V_0 = V_3; } } finally { if (V_2 != null) { V_2.Dispose(); } } return(V_0); }
private ClassHierarchyNode FindGreatestCommonDescendant(ICollection <ClassHierarchyNode> typeNodes) { V_0 = null; V_1 = 0x7fffffff; V_2 = typeNodes.GetEnumerator(); try { while (V_2.MoveNext()) { V_3 = V_2.get_Current(); V_4 = ExpressionTypeInferer.GetTypeIndex(V_3.get_NodeType()); if (V_4 >= V_1) { continue; } V_1 = V_4; V_0 = V_3; } } finally { if (V_2 != null) { V_2.Dispose(); } } return(V_0); }
private bool GetDisposeMethodCFG() { V_0 = "System.Void System.IDisposable.Dispose()"; V_1 = null; V_2 = this.moveNextMethodDefinition.get_DeclaringType().get_Methods().GetEnumerator(); try { while (V_2.MoveNext()) { V_3 = V_2.get_Current(); if (!String.op_Equality(V_3.GetFullMemberName(null), V_0)) { continue; } V_1 = V_3; goto Label0; } } finally { V_2.Dispose(); } Label0: if (V_1 == null) { return(false); } this.theDisposeCFG = (new ControlFlowGraphBuilder(V_1)).CreateGraph(); return(true); }
private ICollection <int> MergeSearchableEnumerables(IEnumerable <IEnumerable <Instruction> > enumerables) { V_0 = new HashSet <int>(); V_1 = enumerables.GetEnumerator(); try { while (V_1.MoveNext()) { V_2 = V_1.get_Current().GetEnumerator(); try { while (V_2.MoveNext()) { V_3 = V_2.get_Current(); dummyVar0 = V_0.Add(V_3.get_Offset()); } } finally { if (V_2 != null) { V_2.Dispose(); } } } } finally { if (V_1 != null) { V_1.Dispose(); } } return(V_0); }
private IEnumerable <Statement> GetStatements() { V_0 = null; V_2 = this.yieldDeclaringType.get_Methods().GetEnumerator(); try { while (V_2.MoveNext()) { V_3 = V_2.get_Current(); if (!String.op_Equality(V_3.get_Name(), "MoveNext")) { continue; } V_0 = V_3; goto Label0; } } finally { V_2.Dispose(); } Label0: if (V_0 == null || V_0.get_Body() == null) { return(null); } V_1 = V_0.get_Body().DecompileYieldStateMachine(this.decompilationContext, out this.yieldData); if (V_1 == null) { return(null); } return(this.GetStatements(V_1)); }
private List <MethodDefinition> GetSameNameMethods(TypeDefinition declaringTypeDefinition, MethodReference method, ExpressionCollection arguments) { V_0 = new List <MethodDefinition>(); V_1 = method.Resolve(); if (V_1 == null) { return(V_0); } V_2 = declaringTypeDefinition.get_Methods().GetEnumerator(); try { while (V_2.MoveNext()) { V_3 = V_2.get_Current(); if (String.op_Inequality(V_3.get_Name(), method.get_Name()) || V_3.get_HasParameters() != method.get_HasParameters() || V_3.get_Parameters().get_Count() != method.get_Parameters().get_Count() || (object)V_3 == (object)V_1 || V_3.get_HasGenericParameters() != V_1.get_HasGenericParameters() || !this.ArgumentsMatchParameters(V_3.get_Parameters(), arguments)) { continue; } V_0.Add(V_3); } } finally { V_2.Dispose(); } return(V_0); }
public static ICollection <ImplementedMember> GetImplementedProperties(this PropertyReference self) { V_0 = new List <ImplementedMember>(); V_1 = self.Resolve(); if (V_1 == null) { return(V_0); } if (V_1.get_GetMethod() != null) { V_2 = V_1.get_GetMethod().GetImplementedMethods().GetEnumerator(); try { while (V_2.MoveNext()) { V_3 = V_2.get_Current(); V_4 = PropertyDefinitionExtensions.GetMethodDeclaringProperty(V_3.get_Member() as MethodReference); if (V_4 == null) { continue; } V_0.Add(new ImplementedMember(V_3.get_DeclaringType(), V_4)); } } finally { if (V_2 != null) { V_2.Dispose(); } } return(V_0); } if (V_1.get_SetMethod() == null) { return(V_0); } V_2 = V_1.get_SetMethod().GetImplementedMethods().GetEnumerator(); try { while (V_2.MoveNext()) { V_5 = V_2.get_Current(); V_6 = PropertyDefinitionExtensions.GetMethodDeclaringProperty(V_5.get_Member() as MethodReference); if (V_6 == null) { continue; } V_0.Add(new ImplementedMember(V_5.get_DeclaringType(), V_6)); } } finally { if (V_2 != null) { V_2.Dispose(); } } return(V_0); }
private Dictionary <PropertyDefinition, Expression> GetPropertyToValueMap(Expression expression) { V_0 = expression as AnonymousObjectCreationExpression; if (V_0 == null || V_0.get_Initializer().get_Expressions().get_Count() != 2) { return(null); } V_1 = new Dictionary <PropertyDefinition, Expression>(); V_2 = V_0.get_Initializer().get_Expressions().GetEnumerator(); try { while (V_2.MoveNext()) { V_3 = (BinaryExpression)V_2.get_Current(); V_1.Add(((AnonymousPropertyInitializerExpression)V_3.get_Left()).get_Property(), V_3.get_Right()); } } finally { if (V_2 != null) { V_2.Dispose(); } } return(V_1); }
protected ILogicalConstruct[] GetSortedArrayFromCollection <T>(ICollection <T> collection) where T : ISingleEntrySubGraph { V_0 = new ILogicalConstruct[collection.get_Count()]; V_1 = 0; V_2 = collection.GetEnumerator(); try { while (V_2.MoveNext()) { V_3 = (ILogicalConstruct)(object)V_2.get_Current(); stackVariable13 = V_1; V_1 = stackVariable13 + 1; V_0[stackVariable13] = V_3; } } finally { if (V_2 != null) { V_2.Dispose(); } } Array.Sort <ISingleEntrySubGraph>(V_0); return(V_0); }
private void MergeWithSingleChild() { V_0 = false; do { V_1 = null; V_2 = this.inferenceGraph.GetEnumerator(); try { while (V_2.MoveNext()) { V_3 = V_2.get_Current(); if (V_3.get_IsHardNode() || V_3.get_CanAssignTo().get_Count() != 1 || V_3.get_SubTypes().get_Count() != 0) { continue; } V_4 = null; V_5 = V_3.get_CanAssignTo().GetEnumerator(); try { if (V_5.MoveNext()) { V_4 = V_5.get_Current(); } } finally { if (V_5 != null) { V_5.Dispose(); } } stackVariable27 = new ClassHierarchyNode[2]; stackVariable27[0] = V_3; stackVariable27[1] = V_4; V_1 = (ICollection <ClassHierarchyNode>)stackVariable27; V_0 = true; goto Label0; } } finally { if (V_2 != null) { V_2.Dispose(); } } Label0: if (!V_0) { continue; } this.MergeNodes(V_1); }while (V_0); return; }
public IEnumerable <ICollection <ClassHierarchyNode> > GetConnectedComponents() { do { V_0 = null; V_2 = this.inferenceGraph.GetEnumerator(); try { while (V_2.MoveNext()) { V_3 = V_2.get_Current(); if (this.used.ContainsKey(V_3)) { continue; } V_0 = V_3; goto Label0; } } finally { if (V_2 != null) { V_2.Dispose(); } } Label0: if (V_0 == null) { continue; } this.RecursiveDfs(V_0); }while (V_0 != null); V_1 = new ICollection <ClassHierarchyNode> [this.componentCount]; V_4 = this.nodeToComponent.get_Keys().GetEnumerator(); try { while (V_4.MoveNext()) { V_5 = V_4.get_Current(); V_6 = this.nodeToComponent.get_Item(V_5); if (V_1[V_6] == null) { V_1[V_6] = new List <ClassHierarchyNode>(); } ((List <ClassHierarchyNode>)V_1[V_6]).Add(V_5); } } finally { ((IDisposable)V_4).Dispose(); } return(V_1); }
private Dictionary <string, string> GetRenamedNamespacesMap(ModuleDefinition module, ILanguage langugage) { V_0 = new Dictionary <string, string>(); if (!this.renameInvalidMembers) { return(V_0); } V_1 = new HashSet <string>(); V_2 = module.get_Types().GetEnumerator(); try { Label0: while (V_2.MoveNext()) { V_3 = V_2.get_Current().GetNamespace(); if (!String.op_Equality(V_3, String.Empty)) { if (V_1.Contains(V_3)) { continue; } dummyVar1 = V_1.Add(V_3); stackVariable23 = new Char[1]; stackVariable23[0] = '.'; V_4 = V_3.Split(stackVariable23); V_5 = V_4; V_6 = 0; while (V_6 < (int)V_5.Length) { if (langugage.IsValidIdentifier(V_5[V_6])) { V_6 = V_6 + 1; } else { V_0.Add(V_3, this.EscapeNamespace(V_4, langugage)); goto Label0; } } } else { dummyVar0 = V_1.Add(V_3); } } } finally { V_2.Dispose(); } return(V_0); }
public List <FileViewModel> GetUploadFiles(string folder) { stackVariable1 = new string[2]; stackVariable1[0] = "Content/Uploads"; stackVariable1[1] = folder; V_0 = CommonHelper.GetFullPath(stackVariable1); this.CreateDirectoryIfNotExist(V_0); stackVariable11 = (new DirectoryInfo(V_0)).GetFiles(); V_1 = new List <FileViewModel>(); stackVariable13 = FileRepository.u003cu003ec.u003cu003e9__26_0; if (stackVariable13 == null) { dummyVar0 = stackVariable13; stackVariable13 = new Func <FileInfo, DateTime>(FileRepository.u003cu003ec.u003cu003e9.u003cGetUploadFilesu003eb__26_0); FileRepository.u003cu003ec.u003cu003e9__26_0 = stackVariable13; } V_2 = ((IEnumerable <FileInfo>)stackVariable11).OrderByDescending <FileInfo, DateTime>(stackVariable13).GetEnumerator(); try { while (V_2.MoveNext()) { V_3 = V_2.get_Current(); V_4 = V_3.OpenText(); try { stackVariable23 = new FileViewModel(); stackVariable23.set_FileFolder(folder); stackVariable23.set_Filename(V_3.get_Name().Substring(0, V_3.get_Name().LastIndexOf('.'))); stackVariable23.set_Extension(V_3.get_Extension()); stackVariable23.set_Content(V_4.ReadToEnd()); V_1.Add(stackVariable23); } finally { if (V_4 != null) { ((IDisposable)V_4).Dispose(); } } } } finally { if (V_2 != null) { V_2.Dispose(); } } return(V_1); }
protected bool TryGetArrayCreation(StatementCollection statements, int startIndex, out ArrayCreationExpression creation, out Expression assignee) { assignee = null; creation = null; if (!this.TryGetAssignment(statements, startIndex, out V_0)) { return(false); } if (V_0.get_Right().get_CodeNodeType() != 38) { return(false); } V_1 = V_0.get_Right() as ArrayCreationExpression; if (!V_0.get_Right().get_HasType() || !V_0.get_Right().get_ExpressionType().get_IsArray()) { return(false); } if (V_1.get_Dimensions().get_Count() != 1) { return(false); } V_2 = V_1.get_Dimensions().GetEnumerator(); try { while (V_2.MoveNext()) { if (V_2.get_Current().get_CodeNodeType() == 22) { continue; } V_3 = false; goto Label1; } goto Label0; } finally { if (V_2 != null) { V_2.Dispose(); } } Label1: return(V_3); Label0: creation = V_0.get_Right() as ArrayCreationExpression; assignee = V_0.get_Left(); return(true); }
public static bool HasCustomAttribute(this ICustomAttributeProvider attributeProvider, IEnumerable <string> attributeTypes) { if (attributeProvider == null || attributeTypes == null) { return(false); } if (!attributeProvider.get_HasCustomAttributes()) { return(false); } V_0 = attributeProvider.get_CustomAttributes().GetEnumerator(); try { while (V_0.MoveNext()) { V_1 = V_0.get_Current(); V_2 = attributeTypes.GetEnumerator(); try { while (V_2.MoveNext()) { V_3 = V_2.get_Current(); if (!String.op_Equality(V_1.get_AttributeType().get_FullName(), V_3)) { continue; } V_4 = true; goto Label1; } } finally { if (V_2 != null) { V_2.Dispose(); } } } goto Label0; } finally { V_0.Dispose(); } Label1: return(V_4); Label0: return(false); }
public List <FileViewModel> GetTopFiles(string folder) { V_0 = new List <FileViewModel>(); if (Directory.Exists(folder)) { stackVariable5 = new DirectoryInfo(folder); V_1 = stackVariable5.get_Name(); stackVariable7 = stackVariable5.GetFiles(); stackVariable8 = FileRepository.u003cu003ec.u003cu003e9__28_0; if (stackVariable8 == null) { dummyVar0 = stackVariable8; stackVariable8 = new Func <FileInfo, DateTime>(FileRepository.u003cu003ec.u003cu003e9.u003cGetTopFilesu003eb__28_0); FileRepository.u003cu003ec.u003cu003e9__28_0 = stackVariable8; } V_2 = ((IEnumerable <FileInfo>)stackVariable7).OrderByDescending <FileInfo, DateTime>(stackVariable8).GetEnumerator(); try { while (V_2.MoveNext()) { V_3 = V_2.get_Current(); stackVariable15 = V_0; stackVariable16 = new FileViewModel(); stackVariable16.set_FolderName(V_1); stackVariable16.set_FileFolder(folder); stackVariable20 = V_3.get_Name(); if (V_3.get_Name().LastIndexOf('.') >= 0) { stackVariable30 = V_3.get_Name().LastIndexOf('.'); } else { stackVariable30 = 0; } stackVariable16.set_Filename(stackVariable20.Substring(0, stackVariable30)); stackVariable16.set_Extension(V_3.get_Extension()); stackVariable15.Add(stackVariable16); } } finally { if (V_2 != null) { V_2.Dispose(); } } } return(V_0); }
public static ISingleEntrySubGraph FindFirstCommonParent(IEnumerable <ISingleEntrySubGraph> blocks) { V_0 = new Queue <ISingleEntrySubGraph>(); V_1 = new HashSet <ISingleEntrySubGraph>(); V_2 = blocks.GetEnumerator(); try { while (V_2.MoveNext()) { V_3 = V_2.get_Current(); if (V_0.get_Count() != 0) { V_5 = V_3; while (!V_1.Contains(V_5)) { V_5 = V_5.get_Parent(); } if (!V_1.Contains(V_5)) { continue; } while (V_0.Peek() != V_5) { dummyVar1 = V_1.Remove(V_0.Dequeue()); } } else { V_4 = V_3; while (V_4 != null) { V_0.Enqueue(V_4); dummyVar0 = V_1.Add(V_4); V_4 = V_4.get_Parent(); } } } } finally { if (V_2 != null) { V_2.Dispose(); } } return(V_0.Peek()); }
public BlockStatement Process(DecompilationContext context, BlockStatement body) { V_0 = new HashSet <Instruction>(body.get_UnderlyingSameMethodInstructions()); if (context.get_MethodContext().get_IsMethodBodyChanged()) { context.get_MethodContext().get_Method().RefreshBody(); context.get_MethodContext().set_IsMethodBodyChanged(false); } V_1 = new List <Instruction>(); V_2 = context.get_MethodContext().get_Method().get_Body().get_Instructions().GetEnumerator(); try { while (V_2.MoveNext()) { V_3 = V_2.get_Current(); if (V_0.Contains(V_3)) { continue; } V_1.Add(V_3); } } finally { V_2.Dispose(); } if (V_1.get_Count() > 0) { V_4 = new StringBuilder("Found unmapped instructions.\n"); V_5 = V_1.GetEnumerator(); try { while (V_5.MoveNext()) { V_6 = V_5.get_Current(); dummyVar0 = V_4.AppendLine(V_6.ToString()); } } finally { ((IDisposable)V_5).Dispose(); } throw new Exception(V_4.ToString()); } return(body); }
private void PropagateExpressions() { V_0 = this.context.get_MethodContext().get_Expressions().get_BlockExpressions().get_Values().GetEnumerator(); try { while (V_0.MoveNext()) { V_1 = V_0.get_Current(); V_2 = this.GetAssignmentExpressions(V_1).GetEnumerator(); try { while (V_2.MoveNext()) { V_3 = V_2.get_Current(); V_4 = this.GetDominatedExpressions(V_3, V_1); V_5 = 0; while (V_5 < V_4.get_Count()) { this.TryPropagate(V_4.get_Item(V_5), V_3.get_Left(), V_3.get_Right()); V_5 = V_5 + 1; } } } finally { if (V_2 != null) { V_2.Dispose(); } } V_6 = 0; while (V_6 < V_1.get_Count()) { V_1.set_Item(V_6, this.TrySimplifyExpression(V_1.get_Item(V_6))); V_6 = V_6 + 1; } } } finally { ((IDisposable)V_0).Dispose(); } return; }
V_1 = Expression.Parameter(System.Type.GetTypeFromHandle(// // Current member / type: System.Void Mix.Cms.Lib.ViewModels.MixModules.UpdateViewModel::LoadAttributeFields(Mix.Cms.Lib.Models.Cms.MixCmsContext,Microsoft.EntityFrameworkCore.Storage.IDbContextTransaction) // Exception in: System.Void LoadAttributeFields(Mix.Cms.Lib.Models.Cms.MixCmsContext,Microsoft.EntityFrameworkCore.Storage.IDbContextTransaction) // Specified method is not supported. // // mailto: [email protected] private void LoadAttributes(MixCmsContext _context, IDbContextTransaction _transaction) { this.LoadAttributeData(_context, _transaction); this.LoadAttributeFields(_context, _transaction); stackVariable7 = this.get_Attributes(); stackVariable8 = Mix.Cms.Lib.ViewModels.MixModules.UpdateViewModel.u003cu003ec.u003cu003e9__175_2; if (stackVariable8 == null) { dummyVar0 = stackVariable8; stackVariable8 = new Func<Mix.Cms.Lib.ViewModels.MixAttributeFields.UpdateViewModel, int>(Mix.Cms.Lib.ViewModels.MixModules.UpdateViewModel.u003cu003ec.u003cu003e9.u003cLoadAttributesu003eb__175_2); Mix.Cms.Lib.ViewModels.MixModules.UpdateViewModel.u003cu003ec.u003cu003e9__175_2 = stackVariable8; } V_2 = stackVariable7.OrderBy<Mix.Cms.Lib.ViewModels.MixAttributeFields.UpdateViewModel, int>(stackVariable8).GetEnumerator(); try { while (V_2.MoveNext()) { V_3 = new Mix.Cms.Lib.ViewModels.MixModules.UpdateViewModel.u003cu003ec__DisplayClass175_0(); V_3.field = V_2.get_Current(); V_4 = this.get_AttributeData().get_Data().get_Values().FirstOrDefault<Mix.Cms.Lib.ViewModels.MixAttributeSetValues.UpdateViewModel>(new Func<Mix.Cms.Lib.ViewModels.MixAttributeSetValues.UpdateViewModel, bool>(V_3.u003cLoadAttributesu003eb__3)); if (V_4 == null) { stackVariable33 = new MixAttributeSetValue(); stackVariable33.set_AttributeFieldId(V_3.field.get_Id()); V_4 = new Mix.Cms.Lib.ViewModels.MixAttributeSetValues.UpdateViewModel(stackVariable33, _context, _transaction); V_4.set_DataType(V_3.field.get_DataType()); V_4.set_AttributeFieldName(V_3.field.get_Name()); V_4.set_Priority(V_3.field.get_Priority()); this.get_AttributeData().get_Data().get_Values().Add(V_4); } V_4.set_Priority(V_3.field.get_Priority()); V_4.set_Field(V_3.field); } } finally { if (V_2 != null) { V_2.Dispose(); } } stackVariable57 = ViewModelBase<MixCmsContext, MixRelatedAttributeData, Mix.Cms.Lib.ViewModels.MixRelatedAttributeDatas.UpdateViewModel>.Repository; V_5 = Expression.Parameter(System.Type.GetTypeFromHandle(//
private void MergeSingleChildConstraints() { V_0 = true; while (V_0) { V_1 = null; V_0 = false; V_2 = this.inferenceGraph.GetEnumerator(); try { while (V_2.MoveNext()) { V_3 = V_2.get_Current(); if (V_3.get_SubTypes().get_Count() != 1 || V_3.get_IsHardNode()) { continue; } V_4 = V_3.get_SubTypes().First <ClassHierarchyNode>(); stackVariable21 = new ClassHierarchyNode[2]; stackVariable21[0] = V_3; stackVariable21[1] = V_4; V_1 = stackVariable21; V_0 = true; goto Label0; } } finally { if (V_2 != null) { V_2.Dispose(); } } Label0: if (!V_0) { continue; } this.MergeNodes(V_1); } return; }
private bool Match(StatementCollection statements) { this.statements = statements; this.yieldDeclaringType = this.GetGeneratedType(); if (this.yieldDeclaringType == null) { return(false); } V_0 = this.GetStatements(); if (V_0 == null || this.yieldData == null) { return(false); } if (statements.get_Count() > 2) { this.SetParameterMappings(); V_1 = this.GetEnumeratorStatements(); if (V_1 != null) { this.PostProcessMappings(V_1); } } this.newStatements = new StatementCollection(); V_2 = V_0.GetEnumerator(); try { while (V_2.MoveNext()) { V_3 = V_2.get_Current(); this.newStatements.Add(V_3); } } finally { if (V_2 != null) { V_2.Dispose(); } } return(true); }
private bool MergeSingleParent(Func <ClassHierarchyNode, bool> chooseParentPred) { V_0 = false; V_1 = null; V_2 = this.inferenceGraph.GetEnumerator(); try { while (V_2.MoveNext()) { V_3 = V_2.get_Current(); if (V_3.get_IsHardNode() || V_3.get_SubTypes().get_Count() != 1) { continue; } V_4 = V_3.get_SubTypes().First <ClassHierarchyNode>(); if (!chooseParentPred.Invoke(V_4)) { continue; } V_0 = true; stackVariable23 = new ClassHierarchyNode[2]; stackVariable23[0] = V_3; stackVariable23[1] = V_4; V_1 = stackVariable23; goto Label0; } } finally { if (V_2 != null) { V_2.Dispose(); } } Label0: if (V_0) { this.MergeNodes(V_1); } return(V_0); }
public virtual void Visit(IEnumerable collection) { V_0 = collection.GetEnumerator(); try { while (V_0.MoveNext()) { V_1 = (ICodeNode)V_0.get_Current(); this.Visit(V_1); } } finally { V_2 = V_0 as IDisposable; if (V_2 != null) { V_2.Dispose(); } } return; }
private string HandleArrayType(ArrayType parameterType) { V_0 = new StringBuilder(); dummyVar0 = V_0.Append(this.GetParameterTypeRepresentation(parameterType.get_ElementType())); dummyVar1 = V_0.Append('['); V_1 = true; V_2 = parameterType.get_Dimensions().GetEnumerator(); try { while (V_2.MoveNext()) { V_3 = V_2.get_Current(); if (!V_1) { dummyVar2 = V_0.Append(','); } if (V_3.get_LowerBound().get_HasValue()) { V_4 = V_3.get_LowerBound(); dummyVar3 = V_0.Append(V_4.get_Value()); } if (V_3.get_IsSized()) { dummyVar4 = V_0.Append(':'); } if (V_3.get_UpperBound().get_HasValue()) { V_4 = V_3.get_UpperBound(); dummyVar5 = V_0.Append(V_4.get_Value()); } V_1 = false; } } finally { V_2.Dispose(); } dummyVar6 = V_0.Append(']'); return(V_0.ToString()); }