MetalamaAPI documentationIntrospection APIMetalama.​Framework.​WorkspacesWorkspace
Open sandboxFocus

Workspace Class

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.

Inheritance
Workspace
Namespace: Metalama.Framework.Workspaces
Assembly: Metalama.Framework.Workspaces.dll
Syntax
public sealed class Workspace : Object, IProjectSet, ICompilationSetResult, IIntrospectionCompilationDetails, IWorkspaceLoadInfo

Properties

Name Description
Advice
AspectClasses
AspectInstances
AspectLayers
Diagnostics
HasMetalamaSucceeded

Gets a value indicating whether the processing of the compilation by Metalama was successful for all projects in the current set. This property returns true if the Metalama compilation process completed successfully, even if it resulted the compilation processes reported errors. These errors would be visible in the Diagnostics collection.

IntrospectionOptions

Gets the IntrospectionOptions for the current workspace.

IsMetalamaEnabled

Gets a value indicating whether Metalama is enabled on this project.

LoadedPaths
MetalamaVersion

Gets the version number of Metalama. This is determined by the LinqPad packages for Metalama, not by the Metalama packages in the projects loaded in the workspace.

Projects

Gets the projects in the current Metalama.Framework.Workspaces.ProjectSet.

Properties
SourceCode
Transformations
TransformedCode

Methods

Name Description
Dispose()
GetDeclaration(String, String, String, Boolean)
GetProject(String, String)
GetSubset(Predicate<Project>)
Reload(Boolean, CancellationToken)
ReloadAsync(Boolean, CancellationToken)
WithIgnoreErrors()

Modifies the IntrospectionOptions of the current workspace by setting the IgnoreErrors property to true.

WithIntrospectionOptions(IntrospectionOptions)

Modifies the IntrospectionOptions of the current workspace, and returns the current workspace.

Events

Name Description
Disposed