Package de.peekandpoke.kraft.addons.forms.validation

Types

Link copied to clipboard
data class GenericRule<T>(checkFn: (value: T) -> Boolean, messageFn: (value: T) -> String = { "Invalid input" }) : Rule<T>
Link copied to clipboard
annotation class KraftFormsRuleDsl
Link copied to clipboard
class OrRule<T>(rules: List<Rule<T>>) : Rule<T>
Link copied to clipboard
interface Rule<T>

Functions

Link copied to clipboard
fun <T> anyOf(values: () -> Collection<T>, message: (T) -> String): Rule<T>
fun <T> anyOf(values: Collection<T>, message: String = "Must be a valid input"): Rule<T>
Link copied to clipboard
fun <T> equalTo(compareWith: T, message: String = "Must be equal to '"): Rule<T>
fun <T> equalTo(compareWith: () -> T, message: (T) -> String): Rule<T>
fun <T> equalTo(compareWith: () -> T, message: String = "Must be equal to '"): Rule<T>
Link copied to clipboard
fun <T> given(check: (T) -> Boolean, message: (T) -> String = { "Must be a valid input" }): Rule<T>
Link copied to clipboard
fun <T> noneOf(values: () -> Collection<T>, message: (T) -> String): Rule<T>
fun <T> noneOf(values: () -> Collection<T>, message: String = "Must be a valid input"): Rule<T>
fun <T> noneOf(values: Collection<T>, message: String = "Must be a valid input"): Rule<T>
Link copied to clipboard
fun <T> nonNull(message: String = "Must not be empty"): Rule<T>
Link copied to clipboard
fun <T> notEqualTo(compareWith: T, message: String = "Must not be equal to '"): Rule<T>
fun <T> notEqualTo(compareWith: () -> T, message: (T) -> String = { "Must not be equal to '$compareWith()'" }): GenericRule<T>
fun <T> notEqualTo(compareWith: () -> T, message: String = "Must not be equal to '"): Rule<T>