Example #1
0
 public AsyncMethodInterceptorWeaver(WeaverContext context, TypeReference methodInterceptorInterface,
                                     MethodReference asyncInvokerWrap, MethodReference asyncInvokerUnwrap)
     : base(context)
 {
     baseInvoke              = ModuleDefinition.FindMethod(methodInterceptorInterface, "InvokeAsync");
     this.asyncInvokerWrap   = asyncInvokerWrap;
     this.asyncInvokerUnwrap = asyncInvokerUnwrap;
 }
Example #2
0
        public EventInterceptorWeaver(WeaverContext context) : base(context)
        {
            var eventAddInterceptorInterface    = FindType("Someta", "IEventAddInterceptor");
            var eventRemoveInterceptorInterface = FindType("Someta", "IEventRemoveInterceptor");

            addEventHandler    = ModuleDefinition.FindMethod(eventAddInterceptorInterface, "AddEventHandler");
            removeEventHandler = ModuleDefinition.FindMethod(eventRemoveInterceptorInterface, "RemoveEventHandler");
        }
Example #3
0
        public StateWeaver(WeaverContext context) : base(context)
        {
//            Debugger.Launch();
            injectedFieldType        = ModuleDefinition.FindType("Someta", "InjectedField`1", Context.Someta, "T");
            injectFieldAttributeType = ModuleDefinition.FindType("Someta", "InjectFieldAttribute", Context.Someta);
        }
Example #4
0
 public MethodInterceptorWeaver(WeaverContext context, TypeReference methodInterceptorInterface, TypeReference asyncMethodInterceptorInterface)
     : base(context)
 {
     this.asyncMethodInterceptorInterface = asyncMethodInterceptorInterface;
     baseInvoke = ModuleDefinition.FindMethod(methodInterceptorInterface, "Invoke");
 }
Example #5
0
 public PropertyGetInterceptorWeaver(WeaverContext context, TypeReference propertyInterceptorInterface) : base(context)
 {
     baseGetPropertyValue = ModuleDefinition.FindMethod(propertyInterceptorInterface, "GetPropertyValue");
 }
Example #6
0
 public ClassEnhancerWeaver(WeaverContext context) : base(context)
 {
     injectAccessAttribute = ModuleDefinition.FindType("Someta", "InjectAccessAttribute");
     injectTargetAttribute = ModuleDefinition.FindType("Someta", "InjectTargetAttribute");
 }
        public InstanceInitializerWeaver(WeaverContext context) : base(context)
        {
            var instanceInitializerInterface = FindType("Someta", "IInstanceInitializer");

            instanceInitializerInitialize = FindMethod(instanceInitializerInterface, "Initialize");
        }