예제 #1
0
        public override MethodBase ResolveMethod(int metadataToken, Type[] genericTypeArguments, Type[] genericMethodArguments)
        {
            genericTypeArguments   = Projector.Unproject(genericTypeArguments);
            genericMethodArguments = Projector.Unproject(genericMethodArguments);

            return(Projector.ProjectMethodBase(base.ResolveMethod(metadataToken, genericTypeArguments, genericMethodArguments)));
        }
예제 #2
0
        protected override PropertyInfo?GetPropertyImpl(string name, BindingFlags bindingAttr, Binder?binder, Type?returnType, Type[]?types, ParameterModifier[]?modifiers)
        {
            returnType = Projector.Unproject(returnType);
            types      = Projector.Unproject(types);

            return(_projector.ProjectProperty(base.GetPropertyImpl(name, bindingAttr, binder, returnType, types, modifiers)));
        }
예제 #3
0
        public override FieldInfo?ResolveField(int metadataToken, Type[]?genericTypeArguments, Type[]?genericMethodArguments)
        {
            genericTypeArguments   = Projector.Unproject(genericTypeArguments);
            genericMethodArguments = Projector.Unproject(genericMethodArguments);

            return(Projector.ProjectField(base.ResolveField(metadataToken, genericTypeArguments, genericMethodArguments)));
        }
        public override bool IsDefined(Type attributeType, bool inherit)
        {
            attributeType = Projector.Unproject(attributeType);

            return(base.IsDefined(attributeType, inherit));
        }
        public override object[] GetCustomAttributes(Type attributeType, bool inherit)
        {
            attributeType = Projector.Unproject(attributeType);

            return(base.GetCustomAttributes(attributeType, inherit));
        }
예제 #6
0
        public override Type MakeGenericType(params Type[] typeArguments)
        {
            typeArguments = Projector.Unproject(typeArguments);

            return(_projector.ProjectType(base.MakeGenericType(typeArguments)));
        }
예제 #7
0
        protected override MethodInfo?GetMethodImpl(string name, BindingFlags bindingAttr, Binder?binder, CallingConventions callConvention, Type[]?types, ParameterModifier[]?modifiers)
        {
            types = Projector.Unproject(types);

            return(_projector.ProjectMethod(base.GetMethodImpl(name, bindingAttr, binder, callConvention, types, modifiers)));
        }
예제 #8
0
        protected override ConstructorInfo?GetConstructorImpl(BindingFlags bindingAttr, Binder?binder, CallingConventions callConvention, Type[] types, ParameterModifier[]?modifiers)
        {
            types = Projector.Unproject(types);

            return(_projector.ProjectConstructor(base.GetConstructorImpl(bindingAttr, binder, callConvention, types, modifiers)));
        }
예제 #9
0
        public override InterfaceMapping GetInterfaceMap(Type interfaceType)
        {
            interfaceType = Projector.Unproject(interfaceType);

            return(_projector.ProjectInterfaceMapping(base.GetInterfaceMap(interfaceType)));
        }
예제 #10
0
 public override Delegate CreateDelegate(Type delegateType, object?target)
 {
     return(base.CreateDelegate(Projector.Unproject(delegateType), target));
 }
예제 #11
0
 public override Delegate CreateDelegate(Type delegateType)
 {
     return(base.CreateDelegate(Projector.Unproject(delegateType)));
 }
예제 #12
0
 public override MethodInfo MakeGenericMethod(params Type[] typeArguments)
 {
     return(Projector.ProjectMethod(base.MakeGenericMethod(Projector.Unproject(typeArguments))));
 }