Example #1
0
        public OverloadReflectionWrap(MethodBase methodBase, GeneralGetterManager generalGetterManager, GeneralSetterManager generalSetterManager)
        {
            parameters = new Parameters(methodBase.GetParameters(), generalGetterManager, generalSetterManager);

            this.generalGetterManager = generalGetterManager;

            if (methodBase.IsConstructor)
            {
                constructorInfo = methodBase as ConstructorInfo;
            }
            else
            {
                methodInfo   = methodBase as MethodInfo;
                resultSetter = generalSetterManager.GetTranslateFunc(methodInfo.ReturnType);
            }
        }
Example #2
0
        public OverloadReflectionWrap(MethodBase methodBase, GeneralGetterManager generalGetterManager, GeneralSetterManager generalSetterManager, bool extensionMethod = false)
        {
            parameters = new Parameters(methodBase.GetParameters().Skip(extensionMethod ? 1 : 0).ToArray(), generalGetterManager, generalSetterManager);

            this.generalGetterManager = generalGetterManager;
            this.extensionMethod      = extensionMethod;

            if (methodBase.IsConstructor)
            {
                constructorInfo = methodBase as ConstructorInfo;
            }
            else
            {
                methodInfo   = methodBase as MethodInfo;
                resultSetter = generalSetterManager.GetTranslateFunc(methodInfo.ReturnType);
            }
        }
Example #3
0
 public void RegisterSetter(Type type, GeneralSetter generalSetter)
 {
     generalSetterMap.Add(type, generalSetter);
 }
Example #4
0
 public void RegisterGeneralGetSet(Type type, GeneralGetter getter, GeneralSetter setter)
 {
     GeneralGetterManager.RegisterGetter(type, getter);
     GeneralSetterManager.RegisterSetter(type, setter);
 }