Open sandboxFocus
  • TOC

Metalama Documentation

Getting started

Conceptual documentation

Commented examples

API documentation

Aspect API

Metalama.​Framework.​Advising

Metalama.​Framework.​Aspects

Metalama.​Framework.​Code

Metalama.​Framework.​Code.​Collections

Metalama.​Framework.​Code.​Comparers

Metalama.​Framework.​Code.​Declaration­Builders

Metalama.​Framework.​Code.​Invokers

Metalama.​Framework.​Code.​Syntax­Builders

Metalama.​Framework.​Code.​Types

Metalama.​Framework.​Diagnostics

Metalama.​Framework.​Eligibility

Metalama.​Framework.​Fabrics

Metalama.​Framework.​Metrics

Metalama.​Framework.​Options

Metalama.​Framework.​Project

Metalama.​Framework.​Run­Time

Metalama.​Framework.​Serialization

Metalama.​Framework.​Services

Metalama.​Framework.​Utilities

Extensions API

Patterns API

Flashtrace API

Introspection API

Advanced API

Post­Sharp API migration

  • Article

Interface IAspectInstance

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
[InternalImplement]
[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

  • Navigation