Namespace Metalama.Framework.Workspaces
Classes
Project
Represents a C# project for a specific compilation.
ServiceFactoryContext
The context object passed to service factories registered by RegisterService(Func<ServiceFactoryContext, IService>).
Workspace
Represents a set of projects. Workspaces can be created using the WorkspaceCollection class. When projects target several frameworks, they are represented by several instances of the Project class in the workspace.
WorkspaceCollection
Represents a set of workspaces. Two attempts to load a workspace with the same parameters, in the same WorkspaceCollection, will return the exact same instance, unless the Reset() method is called.
Interfaces
ICompilationSet
Represents a set of compilations and exposes lists of declarations that merge the declarations from all the compilations in the set.
IMetalamaCompilationSet
Represents the output of the compilation of a project by Metalama.
IProjectSet
Represents a set of projects. An IProjectSet can include several instances of the Project for the same file if they target multiple frameworks, one Project instance per framework. You can create a subset with the GetSubset(Predicate<Project>) method.
IWorkspaceLoadInfo
Exposes the information needed to reconstruct a Workspace.