Open sandboxFocus

Enum AspectOrderDirection

Specifies the direction in which aspect types or aspect layers are ordered in AspectOrderAttribute. Choose between run-time execution order (outside-in) or compile-time application order (inside-out).

Namespace: Metalama.Framework.Aspects
Assembly: Metalama.Framework.dll
Syntax
public enum AspectOrderDirection
Remarks

Metalama follows the "matryoshka doll" model: source code is the innermost piece, and aspects are layered around it. At build time, aspects are applied from the inside out. At runtime, aspects execute from the outside in. Therefore, build-time order and run-time order are opposite.

Fields

Name Description
CompileTime

Specifies the compile-time application order (inside-out), which is more intuitive to aspect authors. The first aspect in the list is applied first at compile time (closest to the source code).

RunTime

Specifies the run-time execution order (outside-in), which is more intuitive to aspect users. The first aspect in the list executes first at runtime. Prior to Metalama 2024.2, this was the only available option.

See Also