Metalama 1.0 / / Metalama Documentation / Extensions API / Metalama.​Extensions.​Architecture.​Aspects

Namespace Metalama.Extensions.Architecture.Aspects

Classes

BaseUsageValidationAttribute

The base class for all attributes that validate usage.

CannotBeUsedFromAttribute

Aspect that, when applied to a type or member, reports a warning whenever the target type or member is used from from any type specified by the Types, Namespaces, NamespaceOfTypes or CurrentNamespace properties.

CanOnlyBeUsedFromAttribute

Aspect that, when applied to a type or member, reports a warning whenever the target type or member is used from a different type than the ones specified by the Types, Namespaces, NamespaceOfTypes or CurrentNamespace properties.

DerivedTypesMustRespectNamingConventionAttribute

Aspect that, when applied to a type, reports a warning for any derived type that does not respect a naming convention given as a star pattern, i.e. a string where the * character matches any sequence of characters.

DerivedTypesMustRespectRegexNamingConventionAttribute

Aspect that, when applied to a type, reports a warning for any derived type that does not respect a naming convention given as regular expression.

ExperimentalAttribute

Aspect that, when applied to a declaration, reports a warning when any other declaration tries to use it, unless the using declaration is also marked as experimental.

InternalOnlyImplementAttribute

Aspect that, when applied to an interface, reports a warning whenever a type attempts to implement this interface, unless the type is inside the same project as the target interface, or the project has access to internal members of the project defining the target interface.

InternalsCannotBeUsedFromAttribute

Aspect that, when applied to a public type, reports a warning whenever any member of the target type is used from from any type specified by the Types, Namespaces, NamespaceOfTypes or CurrentNamespace properties.

InternalsCanOnlyBeUsedFromAttribute

Aspect that, when applied to a public type, reports a warning whenever any member of the target type is used from from a different type than the ones specified by the Types, Namespaces, NamespaceOfTypes or CurrentNamespace properties.