public static AccessorBuilder.GetFieldValueUnboundDelegate CreateGetter(Type instanceType, Type fieldType, string fieldName) { DynamicMethod method = AccessorBuilder.CreateGetterImpl(instanceType, fieldType, fieldName); return((AccessorBuilder.GetFieldValueUnboundDelegate)method.CreateDelegate(new Type[] { typeof(AccessorBuilder.GetFieldValueUnboundDelegate) })); }
public static AccessorBuilder.GetFieldValueBoundDelegate CreateGetter(object instance, Type fieldType, string fieldName) { if (instance == null) { throw new ArgumentNullException("instance"); } DynamicMethod dynamicMethod = AccessorBuilder.CreateGetterImpl(instance.GetType(), fieldType, fieldName); return((AccessorBuilder.GetFieldValueBoundDelegate)dynamicMethod.CreateDelegate(typeof(AccessorBuilder.GetFieldValueBoundDelegate), instance)); }