Metalama 1.0 / / Metalama Documentation / Extensions API / Metalama.​Extensions.​Architecture.​Fabrics / Architecture­Verifier­Extensions

Class ArchitectureVerifierExtensions

Extension methods that verify the architecture. These methods extend the ArchitectureVerifier class, which is returned by the Verify(IProjectAmender) method of the AmenderExtensions class.

Inheritance
ArchitectureVerifierExtensions
Namespace: Metalama.Extensions.Architecture.Fabrics
Assembly: Metalama.Extensions.Architecture.dll
Syntax
[CompileTime]
public static class ArchitectureVerifierExtensions : Object

Methods

Name Description
CannotBeUsedFrom(ArchitectureVerifier, Func<ReferencePredicateBuilder, ReferencePredicate>, String)

Reports a warning when any type in the current scope is used from the context matching the specified predicate.

CanOnlyBeUsedFrom(ArchitectureVerifier, Func<ReferencePredicateBuilder, ReferencePredicate>, String)

Reports a warning when any type in the current scope is used from a different context than the ones matching the specified predicate.

DerivedTypesMustRespectNamingConvention(ArchitectureVerifier, String)

Reports a warning when any type that inherits any type in the current scope does not follow a given convention, where the convention is given as a star pattern, i.e. where the * matches any sequence of characters, even empty.

DerivedTypesMustRespectRegexNamingConvention(ArchitectureVerifier, String)

Reports a warning when any type that inherits any type in the current scope does not follow a given convention, where the convention is given as a regular expression.

Experimental(ArchitectureVerifier)
InternalsCannotOnlyBeUsedFrom(ArchitectureVerifier, Func<ReferencePredicateBuilder, ReferencePredicate>, String)

Reports a warning when any of the internal APIs of the current scope in used from a different context different than the one allowed, except if this concept has access to the type using inheritance rules.

InternalsCanOnlyBeUsedFrom(ArchitectureVerifier, Func<ReferencePredicateBuilder, ReferencePredicate>, String)

Reports a warning when any of the internal APIs of the current scope in used from a different context than the one allowed, except if this concept has access to the type using inheritance rules.

WithReferencedAssembly(ArchitectureVerifier<ICompilation>, String)

Represents a fluent ArchitectureVerifier<T> that allows to validate code using a given assembly referenced by the current compilation. This method can only be used in a ProjectFabric.

WithTypes(ArchitectureVerifier<ICompilation>, IEnumerable<Type>)

Represents a fluent ArchitectureVerifier<T> that allows to validate code referencing given types. This method can only be used in a ProjectFabric.

WithTypes(ArchitectureVerifier<ICompilation>, Type[])

Represents a fluent ArchitectureVerifier<T> that allows to validate code referencing given types. This method can only be used in a ProjectFabric.