PostSharp SDK 6.7 / / Class Reference / Post­Sharp.​Sdk.​Aspect­Weaver Namespace / Aspect­Weaver­Instance Class

AspectWeaverInstance Class

Extension of the AspectWeaver class that is specific to an aspect instance; an aspect instance (AspectInstanceInfo) appears when an aspect type is applied to an element of code.
Inheritance Hierarchy
System.Object
  PostSharp.Sdk.AspectWeaver.AspectWeaverInstance
    More...

Namespace:  PostSharp.Sdk.AspectWeaver
Assembly:  PostSharp.Compiler.Engine (in PostSharp.Compiler.Engine.dll) Version: 6.7.10.0 (6.7.10.0)
Syntax
C#
public abstract class AspectWeaverInstance : ITaggable, 
	IAspectInstance

The AspectWeaverInstance type exposes the following members.

Constructors
  NameDescription
Protected methodAspectWeaverInstance
Initializes a new AspectWeaverInstance.
Properties
  NameDescription
Public propertyAspect
Gets the compile-time instance of the aspect.
Public propertyAspectConstruction
Gets the annotation (custom attribute) constructing the aspect instance, if any.
Public propertyAspectRuntimeInstanceField
Gets the field that contains, at runtime, the deserialized instance of the aspect.
Public propertyAspectType
Gets the type of the current aspect.
Public propertyAspectWeaver
Gets the parent AspectWeaver.
Public propertyDependencies
Gets the collection of dependencies (AspectDependency) of the current aspect (where dependency objects of the current aspect occupy the left position of the relationship), for dependency objects that apply on the element of code to which this aspect is applied.
Public propertyIsInstanceScoped
Determines whether the current aspect instance is instance-scoped.
Public propertyPriority
Gets the priority of the current aspect.
Public propertyRequiresRuntimeInstance
Determines whether the current aspect requires a runtime instance.
Public propertyRequiresRuntimeInstanceInitialization
Determines whether the current aspect requires initialization of the runtime instance.
Public propertyRuntimeReflectionObjectField
Gets the field containing the reflection object representing, at run time, the element of code to which the current aspect is applied.
Public propertySymAspectInstance
Gets the symbol representing the current aspect instance.
Public propertyTargetElement
Gets the element to which the aspect is applied.
Public propertyTargetReflectionObject
Gets the reflection object representing the element of code to which the current aspect is applied.
Public propertyTypeLevelDependencies
Gets the collection of dependencies (AspectDependency) of the current aspect (where dependency objects of the current aspect 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.
Methods
  NameDescription
Public methodEmitAspectConstruction
Emits instructions that build the custom attribute from AspectInfo.
Public methodEmitRuntimeInitialization
Emits instructions that initialize the aspect at runtime. These instructions will be injected in the static constructor of the PostSharp implementation details object, after the field containing the runtime instance of the instance (AspectRuntimeInstanceField) has been initialized.
Public methodEquals
Determines whether the specified object is equal to the current object.
(Inherited from Object.)
Protected methodFinalize
Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.
(Inherited from Object.)
Public methodGetConfigurationNullableValue<TConfiguration, TValue>
Public methodGetConfigurationObject<TConfiguration, TValue>
Gets an object (i.e., reference type) from the aspect configuration.
Public methodGetConfigurationValue<TConfiguration, TValue>
Gets a value (i.e., value type) from the aspect configuration.
Public methodGetHashCode
Serves as the default hash function.
(Inherited from Object.)
Protected methodGetLicenseRequirements
Public methodGetSerializerType
Gets the type of AspectSerializer used to serialize the current aspect.
Public methodGetTag<T>
Public methodGetType
Gets the Type of the current instance.
(Inherited from Object.)
Protected methodGetUnsupportedTargetAction
Public methodGetWeavingSymbolAttributes
Public methodIncrementLinesOfCodeAvoided
Public methodInitializeAspect
Initializes the aspect instance, typically by invoking some CompileTimeInitialize method.
Protected methodMemberwiseClone
Creates a shallow copy of the current Object.
(Inherited from Object.)
Protected methodOnInitialized
This method is invoked after AspectWeaverInstance has been initialized. The aspect configuration is loaded at this point.
Public methodProvideAdviceTransformations
Provides the transformations required by the advice weavers (AdviceWeavers).
Public methodProvideAspects
Allows aspect weavers to provide other aspects.
Public methodProvideAspectTransformations
Provides the transformations required by the current aspect (not those required by independent advices).
Public methodSetTag<T>
Public methodToString
Returns a string that represents the current object.
(Overrides Object.ToString().)
Public methodValidate
Validates the aspect use in itself, without regard to other aspects.
Protected methodValidateTargetType
Validates whether the specified type is supported by this aspect weaver.
See Also
Inheritance Hierarchy