KontureScope
Represents a scope containing a set of classes for writing architecture rules in a Konsist-inspired fluent DSL.
A scope acts as the starting point or container for filtering, querying, and running assertions against Kotlin class declarations in your codebase.
Properties
The list of ClassDeclaration structures included in this scope.
Functions
Asserts that all class declarations in the scope represent abstract classes or interfaces.
Asserts that all class declarations in the scope extend or implement any of the specified supertypes.
Asserts that all class declarations in the scope are data classes.
Asserts that all class declarations in the scope represent enum classes.
Asserts that all class declarations in the scope are inline/value classes.
Asserts that all class declarations in the scope represent interfaces.
Asserts that all class declarations in the scope are internal.
Asserts that all class declarations in the scope are private.
Asserts that all class declarations in the scope are protected.
Asserts that all class declarations in the scope are public.
Asserts that all class declarations in the scope are sealed classes.
Asserts that all class declarations in the scope have at least one of the specified annotations. Matches either the annotation's simple name or its fully qualified name (FQN).
Asserts that all class declarations in the scope have the specified visibility.
Asserts that all class declarations in the scope have names ending with any of the specified suffixes.
Asserts that all class declarations in the scope have names matching any of the specified glob patterns. Supports '*' wildcards.
Asserts that all class declarations in the scope have names starting with any of the specified prefixes.
Asserts that the selected classes in the scope are only accessed by classes residing in packages matching the specified patterns.
Asserts that the selected classes in the scope depend only on classes residing in packages matching the specified patterns.
Asserts that all class declarations in the scope reside in packages matching any of the specified patterns. Matches using standard Kotlin package wildcard matching (e.g. "..domain..").