Open sandboxFocus

Class Project

Represents a C# project for a specific compilation.

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

Properties

Name Description
Advice

Gets the list of advice in the compilation.

AspectClasses

Gets the list of aspect classes in the compilation.

AspectInstances

Gets the list of aspect instances in the compilation.

AspectLayers

Gets the ordered list of aspect layers in the compilation. Note that when the current object represents several projects, the execution order of the aspect layers is not relevant.

Diagnostics

Gets the list of diagnostics reported by Metalama and by aspects.

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.

IsMetalamaEnabled

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

Name
Path
RoslynCompilation
SourceCode
TargetFramework
Transformations

Gets the list of transformations applied to source code.

TransformedCode
Types

Gets the set of types defined in the project, including nested types.

Methods

Name Description
GetDeclaration(string, string, string, bool)

Gets a declaration in the current subset.

GetSubset(Predicate<Project>)

Returns a subset of the current subset.

ToString()