ValidationModule

trait ValidationModule[F[_], E](implicit evidence$1: Monad[F], x$1: Monoid[F[ValidatedNel[E, Unit]]])
class Object
trait Matchable
class Any

Type members

Classlikes

case class Policy[P]
Companion:
object
object Policy
Companion:
class

Types

type ValidationResult = ValidatedNel[E, Unit]

Value members

Abstract fields

Concrete fields

Extensions

Extensions

extension [P](f: Field[P])
def !==(value: P): ValidationEffect
def ===(value: P): ValidationEffect
def assert(cond: Boolean, error: ValidationResult): ValidationEffect
def assertF(cond: F[Boolean], error: ValidationResult): ValidationEffect
def check(cond: P => Boolean, error: FieldPath => ValidationResult): ValidationEffect
def checkF(cond: P => F[Boolean], error: FieldPath => ValidationResult): ValidationEffect
def in(seq: Seq[P]): ValidationEffect
def isValid(using policy: Policy[P]): ValidationEffect
extension (f: Field[String])
def isEnum(e: Enumeration): ValidationEffect
def isJEnum[T <: Enum[T]](values: Array[T]): ValidationEffect
def matches(r: Regex): ValidationEffect
extension [P](f: Field[P])
def forallWithIndex(using it: IsIterable[P])(validation: (Field[A], Int) => ValidationEffect): ValidationEffect
def max(using it: IsIterable[P])(max: Int): ValidationEffect
def min(using it: IsIterable[P])(min: Int): ValidationEffect
def nonEmpty(using it: IsIterable[P]): ValidationEffect
extension [P](f: Field[P])(using it: IsIterable[P])
def forall[T](validation: Field[A] => ValidationEffect): ValidationEffect
extension [P](f: Field[P])
def <(using n: Numeric[P])(p: P): ValidationEffect
def <=(using n: Numeric[P])(p: P): ValidationEffect
def >(using n: Numeric[P])(p: P): ValidationEffect
def >=(using n: Numeric[P])(p: P): ValidationEffect

Implicits

Implicits

implicit def toValidationResult(error: E): ValidationResult