AspectWeaver Class |
An object that knows how to process a specific aspect. Aspect weavers must be associated to aspect interfaces
(derived from IAspect
using BindAspectWeaver<TAspect, TImpl>(). An AspectWeaver is associated
with an aspect type and is independent from aspect usage, which is encapsulated by AspectWeaverInstance.
Namespace: PostSharp.Sdk.AspectWeaver
Assembly: PostSharp.Compiler.Engine (in PostSharp.Compiler.Engine.dll) Version: 6.10.10.0 (6.10.10.0)
C#
public abstract class AspectWeaver
The AspectWeaver type exposes the following members.
Name | Description | |
---|---|---|
AspectWeaver |
Initializes a new AspectWeaver.
|
Name | Description | |
---|---|---|
AdviceWeavers |
Gets the collection of weavers of advices included in the current aspect type.
| |
AspectConfigurationAttributeSystemType |
Gets the Type of the aspect configuration custom attribute.
| |
AspectDescription | ||
AspectInfrastructureTask |
Gets the parent AspectInfrastructureTask.
| |
AspectRuntimeType | ||
AspectType |
Gets the aspect type processed by the current AspectWeaver.
| |
AspectWeaverTask |
Gets the parent AspectWeaverTask.
| |
CanTargetAspects | ||
DeclarativeConfiguration |
Gets the aspect configuration that was provided declaratively, using a custom attribute of type AspectConfigurationAttribute.
| |
Dependencies |
Gets the collection of dependencies (AspectDependency) of the current aspect type
(where dependency objects of the current aspect weaver occupy the left position of the relationship),
for dependency objects that apply on the element of code to which this aspect is applied.
| |
IsInstanceScoped |
Determines whether the current aspect type is instance-scoped.
| |
LinesOfCodeAvoidedExplicit |
Count of lines of code avoided set explicitly using LinesOfCodeAvoidedAttribute.
| |
LinesOfCodeAvoidedImplicitBase |
Count of lines of code avoided by each usage of the aspect.
| |
Module |
Gets the ModuleDeclaration being processed.
| |
ReflectionObjectBuilder |
Gets the ReflectionObjectBuilder able to emit instructions that load
the reflection object corresponding to the element of code to which the aspects of this AspectWeaver
are applied.
| |
RequiresRuntimeInstance |
Determines whether the current aspect requires a runtime instance.
| |
RequiresRuntimeInstanceInitialization |
Determines whether the current aspect requires initialization of the runtime instance.
| |
RequiresRuntimeReflectionObject |
Determines whether the current AspectWeaver shall need a reference to the reflection object
representing the element of code to which aspects are applied.
| |
TypeLevelDependencies |
Gets the collection of dependencies (AspectDependency) of the current aspect type
(where dependency objects of the current aspect weaver occupy the left position of the relationship),
for dependency objects that apply on type declaring the element of code to which this aspect is applied.
If the aspect is not applied to a type member (or a parameter of a type member), this property is equal to
Dependencies.
| |
ValidTargets |
Gets the kinds of elements of code to which aspects of the current AspectWeaver
can be applied.
| |
WaivedEffects |
Gets the set of effects that are waived (opted out) for the current AspectWeaver.
|
Name | Description | |
---|---|---|
AddLicenseRequirement | Obsolete.
Adds a license requirement for the current AspectWeaver.
| |
ApplyWaivedEffects |
Remove the effects waived from the current aspect type (as added to the WaivedEffects collection)
from transformation.
| |
CreateAspectWeaverInstance |
Creates a new AspectWeaverInstance for a given aspect instance.
| |
Equals | Determines whether the specified object is equal to the current object. (Inherited from Object.) | |
Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.) | |
GetAspectDisplayName |
Gets a human-readable name of the current aspect type.
| |
GetHashCode | Serves as the default hash function. (Inherited from Object.) | |
GetImplicitLinesOfCodeAvoidedByAdvice | ||
GetType | Gets the Type of the current instance. (Inherited from Object.) | |
HasLinesOfCodeAvoided | ||
Initialize |
Initialize the current weaver and its aspect.
| |
MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.) | |
ToString | Returns a string that represents the current object. (Overrides Object.ToString().) | |
ValidateAspectInstance |
Validates an aspect instance, i.e. a concrete usage of an aspect of the type supported by the current AspectWeaver.
|
Reference
System.Object
PostSharp.Sdk.AspectWeaver.AspectWeaver
PostSharp.Sdk.AspectWeaver.AspectWeavers.AssemblyLevelAspectWeaver
PostSharp.Sdk.AspectWeaver.AspectWeavers.EventLevelAspectWeaver
PostSharp.Sdk.AspectWeaver.AspectWeavers.FieldLevelAspectWeaver
PostSharp.Sdk.AspectWeaver.AspectWeavers.LocationLevelAspectWeaver
PostSharp.Sdk.AspectWeaver.AspectWeavers.MethodLevelAspectWeaver
PostSharp.Sdk.AspectWeaver.AspectWeavers.TypeLevelAspectWeaver
PostSharp.Sdk.AspectWeaver.AspectWeaver
PostSharp.Sdk.AspectWeaver.AspectWeavers.AssemblyLevelAspectWeaver
PostSharp.Sdk.AspectWeaver.AspectWeavers.EventLevelAspectWeaver
PostSharp.Sdk.AspectWeaver.AspectWeavers.FieldLevelAspectWeaver
PostSharp.Sdk.AspectWeaver.AspectWeavers.LocationLevelAspectWeaver
PostSharp.Sdk.AspectWeaver.AspectWeavers.MethodLevelAspectWeaver
PostSharp.Sdk.AspectWeaver.AspectWeavers.TypeLevelAspectWeaver