MetalamaAPI documentationAspect APIMetalama.​Framework.​AspectsIAspect­Instance
Open sandboxFocus

IAspectInstance Interface

Represents an instance of an aspect. The instance of the IAspect itself is in the Aspect property.

Namespace: Metalama.Framework.Aspects
Assembly: Metalama.Framework.dll
Syntax
[CompileTime]
public interface IAspectInstance : IAspectPredecessor

Properties

Name Description
Aspect

Gets the aspect instance.

AspectClass

Gets the aspect type.

AspectState

Gets the optional opaque object defined by the aspect for the specific TargetDeclaration using the AspectState property of the IAspectBuilder interface.

IsInheritable

Gets a value indicating whether the current aspect instance can be inherited by derived declarations.

IsSkipped

Gets a value indicating whether the current aspect instance has been skipped. This value is true if the aspect evaluation resulted in an error or if the BuildAspect(IAspectBuilder<T>) method invoked SkipAspect(), if it has been excluded using ExcludeAspectAttribute, or when the target declaration was not eligible.

SecondaryInstances

Gets the other instances of the same AspectClass on the same TargetDeclaration. When several instances of the same AspectClass are found on the same TargetDeclaration, they are ordered by priority, and only the first one gets executed. The other instances are exposed on this property.

Extension Methods

AspectPredecessorExtensions.GetRoots(IAspectPredecessor)