Use these namespaces when creating aspects or fabrics.
| Namespace | Description |
|---|---|
| Metalama.Framework.Aspects | Main namespace for creating aspects, including base classes like TypeAspect, MethodAspect, and FieldOrPropertyAspect. Also contains AdviserExtensions, the first-level API for programmatically adding advice. |
| Metalama.Framework.Advising | Contains second-level APIs used when advising code behind extension methods of AdviserExtensions. |
| Metalama.Framework.Diagnostics | Enables aspects to report or suppress errors, warnings, or informational messages using IDiagnosticSink. |
| Metalama.Framework.Eligibility | Allows aspects to declare eligibility rules that specify which declarations they can be applied to. |
| Metalama.Framework.Fabrics | Provides the ability to add aspects or validators to entire projects and namespaces using ProjectFabric and NamespaceFabric, and to configure aspects. |
| Metalama.Framework.Metrics | Read predefined code metrics and implement custom metrics. Metrics are useful in validators and introspection queries. |
| Metalama.Framework.Project | Exposes the object model of the project being processed through IProject, as well as the service provider. |
| Metalama.Framework.RunTime | Contains classes used at runtime. All other namespaces are used only at compilation time. |