private bool IsTransparentIdentifier(VariableReference identifier)
 {
     if (identifier.get_Name().StartsWith("<>h__TransparentIdentifier"))
     {
         return(true);
     }
     return(identifier.get_Name().StartsWith("$VB$"));
 }
 private LetClause GenerateLetClause(Dictionary <PropertyDefinition, Expression> propertyToValueMap, VariableReference oldIdentifier)
 {
     V_0 = null;
     V_1 = null;
     V_4 = propertyToValueMap.GetEnumerator();
     try
     {
         while (V_4.MoveNext())
         {
             V_5 = V_4.get_Current();
             if (!String.op_Equality(V_5.get_Key().get_Name(), oldIdentifier.get_Name()) || V_5.get_Value().get_CodeNodeType() != 26 || (object)(V_5.get_Value() as VariableReferenceExpression).get_Variable() != (object)oldIdentifier)
             {
                 V_1 = V_5.get_Key();
             }
             else
             {
                 V_0 = V_5.get_Key();
             }
         }
     }
     finally
     {
         ((IDisposable)V_4).Dispose();
     }
     if (V_0 == null || V_1 == null)
     {
         return(null);
     }
     V_2 = propertyToValueMap.get_Item(V_1);
     V_3 = new LetClause(new VariableReferenceExpression(this.CreateNewIdentifier(V_1.get_Name(), V_2.get_ExpressionType()), null), V_2, null);
     propertyToValueMap.set_Item(V_1, V_3.get_Identifier());
     return(V_3);
 }
Пример #3
0
 protected ClassHierarchyNode GetVariableNode(VariableReference variable)
 {
     V_0 = variable.get_Name();
     if (!this.variableNameToNode.ContainsKey(V_0))
     {
         V_1 = this.MergeWithVariableTypeIfNeeded(variable, new ClassHierarchyNode(variable));
         this.variableNameToNode.Add(V_0, V_1);
     }
     return(this.variableNameToNode.get_Item(V_0));
 }