internal AbstractMethodInterceptionBindingWeaver(IAspectExpression aspectExpression, IMethodAspectDefinition aspectDefinition, IAspectWeavingSettings aspectWeavingSettings) : base(aspectDefinition) { this.aspectExpression = aspectExpression; this.aspectWeavingSettings = aspectWeavingSettings; lazyWeavedType = new Core.Lib.Lazy<FieldInfo>(WeaveType); }
internal AbstractMethodInterceptionBindingWeaver(IAspectExpression aspectExpression, IMethodAspectDefinition aspectDefinition, IAspectWeavingSettings aspectWeavingSettings) : base(aspectDefinition) { this.aspectExpression = aspectExpression; this.aspectWeavingSettings = aspectWeavingSettings; lazyWeavedType = new Core.Lib.Lazy <FieldInfo>(WeaveType); }
public CompositeEventWeaver(ITypeDefinition typeDefinition, EventInfo @event) { EventName = @event.Name; EventType = @event.EventHandlerType; lazyEventBuilder = new Core.Lib.Lazy<EventBuilder>(() => { return typeDefinition.TypeBuilder.DefineEvent(@event); }); }
public CompositeEventWeaver(ITypeDefinition typeDefinition, EventInfo @event) { EventName = @event.Name; EventType = @event.EventHandlerType; lazyEventBuilder = new Core.Lib.Lazy <EventBuilder>(() => { return(typeDefinition.TypeBuilder.DefineEvent(@event)); }); }
internal IsolatedEventInterceptionBindingWeaver(IAspectExpression addAspectExpression, IAspectExpression removeAspectExpression, IAspectExpression invokeAspectExpression, IEventAspectDefinition aspectDefinition, IAspectWeavingSettings aspectWeavingSettings) : base(aspectDefinition) { this.addAspectExpression = addAspectExpression; this.aspectWeavingSettings = aspectWeavingSettings; this.removeAspectExpression = removeAspectExpression; this.invokeAspectExpression = invokeAspectExpression; lazyWeavedType = new Core.Lib.Lazy <FieldInfo>(WeaveType); }
internal EventBindingTypeReflectorBuilder(IEventAspectDefinition aspectDefinition) { lazyBindingTypeReflector = new Core.Lib.Lazy <IAspectExpression, IAspectExpression, IAspectExpression, IAspectWeavingSettings, IBindingTypeReflector>((addAspectExpression, removeAspectExpression, invokeAspectExpression, aspectWeavingSettings) => { return(new IsolatedEventInterceptionBindingWeaver(addAspectExpression, removeAspectExpression, invokeAspectExpression, aspectDefinition, aspectWeavingSettings)); }); }
public SetPropertyBindingTypeReflectorBuilder(IPropertyAspectDefinition aspectDefinition) { lazyBindingTypeReflector = new Core.Lib.Lazy <IAspectExpression, IAspectWeavingSettings, IBindingTypeReflector>((setAspectExpression, aspectWeavingSettings) => { return(new IsolatedSetPropertyInterceptionBindingWeaver(setAspectExpression, aspectDefinition, aspectWeavingSettings)); }); }
public CompositePropertyWeaver(ITypeDefinition typeDefinition, PropertyInfo property) { lazyPropertyBuilder = new Core.Lib.Lazy <PropertyBuilder>(() => { return(typeDefinition.TypeBuilder.DefineProperty(property)); }); }
public SetPropertyBindingTypeReflectorBuilder(IPropertyAspectDefinition aspectDefinition) { lazyBindingTypeReflector = new Core.Lib.Lazy<IAspectExpression, IAspectWeavingSettings, IBindingTypeReflector>((setAspectExpression, aspectWeavingSettings) => { return new IsolatedSetPropertyInterceptionBindingWeaver(setAspectExpression, aspectDefinition, aspectWeavingSettings); }); }
public CompositePropertyWeaver(ITypeDefinition typeDefinition, PropertyInfo property) { lazyPropertyBuilder = new Core.Lib.Lazy<PropertyBuilder>(() => { return typeDefinition.TypeBuilder.DefineProperty(property); }); }
internal EventBindingTypeReflectorBuilder(IEventAspectDefinition aspectDefinition) { lazyBindingTypeReflector = new Core.Lib.Lazy<IAspectExpression, IAspectExpression, IAspectExpression, IAspectWeavingSettings, IBindingTypeReflector>((addAspectExpression, removeAspectExpression, invokeAspectExpression, aspectWeavingSettings) => { return new IsolatedEventInterceptionBindingWeaver(addAspectExpression, removeAspectExpression, invokeAspectExpression, aspectDefinition, aspectWeavingSettings); }); }
internal AbstractPropertyInterceptionBindingWeaver(IPropertyAspectDefinition aspectDefinition, IAspectWeavingSettings aspectWeavingSettings) : base(aspectDefinition) { this.aspectWeavingSettings = aspectWeavingSettings; lazyWeavedType = new Core.Lib.Lazy <FieldInfo>(WeaveType); }
internal AbstractPropertyInterceptionBindingWeaver(IPropertyAspectDefinition aspectDefinition, IAspectWeavingSettings aspectWeavingSettings) : base(aspectDefinition) { this.aspectWeavingSettings = aspectWeavingSettings; lazyWeavedType = new Core.Lib.Lazy<FieldInfo>(WeaveType); }