Metalama / / API Documentation / Advanced API

Advanced API documentation

The namespaces and assemblies described in this page allow you to add features to Metalama using the Roslyn API.

Namespace Description
Metalama.Compiler This namespace allows you to write source transformers at the lowest level of abstraction, without a concept of aspect. There is no use case where you should use this API, except the MetalamaPlugInAttribute class.
Metalama.Framework.Engine.AspectWeavers This namespace enables you to implement Metalama aspects at a low level of abstraction with the Roslyn APIs. Unlike Metalama.Compiler, this namespace integrates with the Metalama.Framework.Engine.CodeModel namespace.
Metalama.Framework.Engine.CodeModel This namespace maps the Metalama code model to the Roslyn API.
Metalama.Framework.Engine.Collections This namespace exposes collection interfaces.
Metalama.Framework.Engine.Formatting This namespace exposes the annotations used by the Metalama formatting feature.
Metalama.Testing.AspectTesting This namespace implements the Metalama test framework. You should not normally use this namespace directly, but the high-level features described in Testing the Aspects.