public override ICodeNode VisitFieldReferenceExpression(FieldReferenceExpression node)
 {
     if (this.state != 3)
     {
         return(this.VisitFieldReferenceExpression(node));
     }
     V_1 = node.get_Field().Resolve();
     if (V_1 == null)
     {
         return(this.VisitFieldReferenceExpression(node));
     }
     if (this.fieldDefToAssignedValueMap.TryGetValue(V_1, out V_0))
     {
         return(V_0.CloneExpressionOnlyAndAttachInstructions(node.get_UnderlyingSameMethodInstructions()));
     }
     dummyVar0 = this.VisitFieldReferenceExpression(node);
     if (node.get_Target() == null || node.get_Target().get_CodeNodeType() != 26)
     {
         return(node);
     }
     V_2 = (node.get_Target() as VariableReferenceExpression).get_Variable();
     if (!this.closuresArchive.TryGetValue(V_2, out V_3) || !V_3.TryGetValue(V_1, out V_0))
     {
         return(node);
     }
     return(V_0.CloneExpressionOnlyAndAttachInstructions(node.get_UnderlyingSameMethodInstructions()));
 }
 public ICodeNode VisitFieldReferenceExpression(FieldReferenceExpression node)
 {
     if (!this.IsAutoPropertyConstructorInitializerExpression(node.get_Field(), out V_0))
     {
         return(node);
     }
     return(new AutoPropertyConstructorInitializerExpression(V_0, node.get_Target(), node.get_MappedInstructions()));
 }
 public override ICodeNode VisitFieldReferenceExpression(FieldReferenceExpression node)
 {
     V_1 = node.get_Field().Resolve();
     if (V_1 == null || !this.fieldToReplacingExpressionMap.TryGetValue(V_1, out V_0))
     {
         return(this.VisitFieldReferenceExpression(node));
     }
     return(V_0.CloneExpressionOnlyAndAttachInstructions(node.get_UnderlyingSameMethodInstructions()));
 }
Пример #4
0
 public override ICodeNode VisitFieldReferenceExpression(FieldReferenceExpression node)
 {
     if ((object)node.get_Field().get_DeclaringType().Resolve() != (object)this.stateMachineTypeDef)
     {
         return(this.VisitFieldReferenceExpression(node));
     }
     V_0 = node.get_Field().Resolve();
     if (this.parameterMappings.ContainsKey(V_0))
     {
         return(this.parameterMappings.get_Item(V_0).CloneExpressionOnlyAndAttachInstructions(node.get_UnderlyingSameMethodInstructions()));
     }
     V_1 = new VariableDefinition(this.GetFriendlyName(V_0.get_Name()), V_0.get_FieldType(), this.methodContext.get_Method());
     this.methodContext.get_Variables().Add(V_1);
     this.methodContext.get_VariableAssignmentData().Add(V_1, this.asyncData.get_FieldAssignmentData().get_Item(V_0));
     dummyVar0 = this.methodContext.get_VariablesToRename().Add(V_1);
     V_2       = new VariableReferenceExpression(V_1, node.get_UnderlyingSameMethodInstructions());
     this.parameterMappings.set_Item(V_0, V_2);
     return(V_2);
 }
Пример #5
0
 private bool CheckFieldReferenceExpression(FieldReferenceExpression fieldRefExpression)
 {
     if (fieldRefExpression.get_Field() == null)
     {
         return(false);
     }
     if (this.propertyFieldDef != null)
     {
         return((object)fieldRefExpression.get_Field().Resolve() == (object)this.propertyFieldDef);
     }
     V_0 = fieldRefExpression.get_Field().Resolve();
     if (V_0 == null || (object)V_0.get_DeclaringType() != (object)this.propertyDef.get_DeclaringType())
     {
         return(false);
     }
     if (!V_0.HasCompilerGeneratedAttribute())
     {
         return(false);
     }
     this.propertyFieldDef = V_0;
     return(true);
 }
Пример #6
0
 public override void VisitFieldReferenceExpression(FieldReferenceExpression node)
 {
     if (node.get_Target() as TypeReferenceExpression != null)
     {
         V_2 = ((TypeReferenceExpression)node.get_Target()).get_Type();
         if (V_2 as TypeDefinition != null && ((TypeDefinition)V_2).get_IsEnum())
         {
             this.VisitFieldReferenceExpression(node);
             return;
         }
     }
     V_0 = node.get_Field().Resolve();
     if (V_0 == null || !this.typeContext.get_BackingFieldToNameMap().ContainsKey(V_0))
     {
         V_1 = node.get_Field().get_Name();
     }
     else
     {
         V_1 = this.typeContext.get_BackingFieldToNameMap().get_Item(V_0);
     }
     this.TrySetPendingName(V_1, true);
     this.VisitFieldReferenceExpression(node);
     return;
 }
Пример #7
0
 public override void VisitFieldReferenceExpression(FieldReferenceExpression node)
 {
     this.get_TypesDependingOn().UnionWith(Utilities.GetTypeReferenceTypesDepedningOn(node.get_Field().get_DeclaringType()));
     this.VisitFieldReferenceExpression(node);
     return;
 }
Пример #8
0
 public override ICodeNode VisitFieldReferenceExpression(FieldReferenceExpression node)
 {
     if (!this.context.get_MethodContext().get_Method().get_IsConstructor() || !String.op_Equality(node.get_Field().get_DeclaringType().get_FullName(), this.context.get_MethodContext().get_Method().get_DeclaringType().get_FullName()))
     {
         return(this.VisitFieldReferenceExpression(node));
     }
     return(this.propertyRecognizer.VisitFieldReferenceExpression(node));
 }
 public override void VisitFieldReferenceExpression(FieldReferenceExpression node)
 {
     dummyVar0 = this.get_Fields().Add(node.get_Field().Resolve());
     return;
 }
 private void CheckFieldReference(FieldReferenceExpression node)
 {
     if (node != this.assignedReference && node.get_Target() != null && node.get_Target().get_CodeNodeType() == 26 && this.delegateVariableCopies.Contains((node.get_Target() as VariableReferenceExpression).get_Variable()) && (object)node.get_Field().Resolve() == (object)this.fieldDef)
     {
         this.foundUsage = true;
     }
     return;
 }