A reusable implementation of the multicasting logic. Each multicast-enabled aspect must contain an instance of the MulticastImplementation class and should call its BuildAspect<T>(IAspectBuilder<T>, Action<IAspectBuilder<T>>?) method. to perform multicasting.
Namespace: Metalama.Extensions.Multicast
Assembly: Metalama.Extensions.Multicast.dll
Syntax
[CompileTime]
public sealed class MulticastImplementation
Constructors
Name | Description |
---|---|
MulticastImplementation(MulticastTargets, bool) | Initializes a new instance of the MulticastImplementation class. |
Properties
Name | Description |
---|---|
ConcreteTargets | Gets the kind of declarations to which the aspect can be applied. This property is set from the class constructor. |
Methods
Name | Description |
---|---|
BuildAspect<T>(IAspectBuilder<T>, Action<IAspectBuilder<T>>?) | This method must be called from the BuildAspect(IAspectBuilder<T>) method of the aspect class. It adds the aspect to child declarations that match the IMulticastAttribute properties. If the aspect is applied to a potential concrete target declaration (see ConcreteTargets), it calls an optional delegate that should provide advice to this target. |