SlicesThat

Filter builder for selecting architectural slices matching specific conditions.

Functions

Link copied to clipboard
fun allOf(vararg blocks: SlicesThat.() -> Unit): SlicesRuleBuilder

Filter or assertion criteria for all of.

Link copied to clipboard
fun anyOf(vararg blocks: SlicesThat.() -> Unit): SlicesRuleBuilder

Filter or assertion criteria for any of.

Link copied to clipboard

Restricts the slice rule to slices that contain a class of the specified type T.

fun containClass(vararg fqNames: String): SlicesRuleBuilder

Filter or assertion criteria for contain class.

Restricts the slice rule to slices that contain a class with the specified FQN or simple name.

Restricts the slice rule to slices that contain a class of the specified KClass.

Link copied to clipboard
fun containClassesInPackage(vararg packagePatterns: String): SlicesRuleBuilder

Filter or assertion criteria for contain classes in package.

Restricts the slice rule to slices that contain packages matching the specified pattern.

Link copied to clipboard

Filters slices containing classes with annotation T.

fun containClassesWithAnnotation(vararg annotationFqNames: String): SlicesRuleBuilder

Filter or assertion criteria for contain classes with annotation.

Link copied to clipboard
fun haveKey(vararg keys: String): SlicesRuleBuilder
infix fun haveKey(predicate: (String) -> Boolean): SlicesRuleBuilder

Filter or assertion criteria for have key.

infix fun haveKey(keyPattern: String): SlicesRuleBuilder

Restricts the slice rule to slices whose key matches the specified key pattern.

Link copied to clipboard

Filter or assertion criteria for have key ending with.

Link copied to clipboard

Filter or assertion criteria for have key matching.

Link copied to clipboard

Filter or assertion criteria for have key starting with.

Link copied to clipboard
fun haveName(vararg names: String): SlicesRuleBuilder

Filter or assertion criteria for have name.

infix fun haveName(namePattern: String): SlicesRuleBuilder

Filters slices having name matching namePattern.

Link copied to clipboard

Filter or assertion criteria for have name ending with.

Link copied to clipboard

Filter or assertion criteria for have name matching.

Link copied to clipboard

Filter or assertion criteria for have name starting with.

Link copied to clipboard
fun noneOf(vararg blocks: SlicesThat.() -> Unit): SlicesRuleBuilder

Filter or assertion criteria for none of.

Link copied to clipboard

Logical NOT operator for negating the next filter condition.

Link copied to clipboard

Filters slices not containing class T.

Filter or assertion criteria for not contain class.

Link copied to clipboard

Filter or assertion criteria for not contain classes in package.

Link copied to clipboard

Filters slices not containing classes with annotation T.

Filter or assertion criteria for not contain classes with annotation.

Link copied to clipboard
infix fun notHaveKey(keyPattern: String): SlicesRuleBuilder

Filter or assertion criteria for not have key.

Link copied to clipboard

Filter or assertion criteria for not have key ending with.

Link copied to clipboard

Filter or assertion criteria for not have key matching.

Link copied to clipboard

Filter or assertion criteria for not have key starting with.

Link copied to clipboard
infix fun notHaveName(namePattern: String): SlicesRuleBuilder

Filter or assertion criteria for not have name.

Link copied to clipboard

Filter or assertion criteria for not have name ending with.

Link copied to clipboard

Filter or assertion criteria for not have name matching.

Link copied to clipboard

Filter or assertion criteria for not have name starting with.

Link copied to clipboard
fun notResideInAModule(vararg modulePaths: String): SlicesRuleBuilder

Filter or assertion criteria for not reside in a module.

Link copied to clipboard
infix fun notResideInAPackage(packagePattern: String): SlicesRuleBuilder

Filter or assertion criteria for not reside in a package.

Link copied to clipboard
fun notResideInModules(vararg modulePaths: String): SlicesRuleBuilder

Filter or assertion criteria for not reside in modules.

Link copied to clipboard
fun resideInAModule(vararg modulePaths: String): SlicesRuleBuilder
infix fun resideInAModule(modulePaths: List<String>): SlicesRuleBuilder

Filter or assertion criteria for reside in a module.

infix fun resideInAModule(modulePath: String): SlicesRuleBuilder

Filters slices residing in module modulePath.

Link copied to clipboard
fun resideInAPackage(vararg packagePatterns: String): SlicesRuleBuilder
infix fun resideInAPackage(packagePattern: String): SlicesRuleBuilder
infix fun resideInAPackage(packagePatterns: List<String>): SlicesRuleBuilder

Filter or assertion criteria for reside in a package.

Link copied to clipboard
fun resideInModules(vararg modulePaths: String): SlicesRuleBuilder
infix fun resideInModules(modulePaths: List<String>): SlicesRuleBuilder

Filter or assertion criteria for reside in modules.

Link copied to clipboard
infix fun satisfy(predicate: (Slice) -> Boolean): SlicesRuleBuilder

Restricts the slice rule using a custom predicate on Slice.