Пример #1
0
 public static ReflectionEmitUtils.SetterMethod GenerateSetter(FieldInfo fieldInfo)
 {
     return(ReflectionEmitUtils.GenerateSetter(fieldInfo.FieldType, fieldInfo.DeclaringType, delegate(ILGenerator il)
     {
         il.Emit(OpCodes.Stfld, fieldInfo);
     }));
 }
Пример #2
0
 public static ReflectionEmitUtils.SetterMethod GenerateSetter(PropertyInfo propertyInfo)
 {
     return(ReflectionEmitUtils.GenerateSetter(propertyInfo.PropertyType, propertyInfo.DeclaringType, delegate(ILGenerator il)
     {
         MethodInfo setMethod = propertyInfo.GetSetMethod(true);
         il.Emit(OpCodes.Callvirt, setMethod);
     }));
 }
 protected override void Initialize(IntermediateSerializer serializer, PropertyInfo propertyInfo)
 {
     this.valueGetter = ReflectionEmitUtils.GenerateGetter(propertyInfo);
     if (propertyInfo.CanWrite)
     {
         this.valueSetter = ReflectionEmitUtils.GenerateSetter(propertyInfo);
     }
     this.InitializeCommon(serializer, propertyInfo, propertyInfo.PropertyType);
 }
 protected override void Initialize(IntermediateSerializer serializer, FieldInfo fieldInfo, bool canWrite)
 {
     this.valueGetter = ReflectionEmitUtils.GenerateGetter(fieldInfo);
     if (canWrite)
     {
         this.valueSetter = ReflectionEmitUtils.GenerateSetter(fieldInfo);
     }
     this.InitializeCommon(serializer, fieldInfo, fieldInfo.FieldType);
 }