annotations

Annotations which are used during automatic schema derivation, or semi-automatic schema derivation using Schema.derived.

class Object
trait Matchable
class Any

Type members

Classlikes

class customise(val f: Schema[_] => Schema[_]) extends StaticAnnotation with Serializable
class default[T](val default: T, val encoded: Option[Any]) extends StaticAnnotation with Serializable
class deprecated extends StaticAnnotation with Serializable
class description(val text: String) extends StaticAnnotation with Serializable
class encodedExample(val example: Any) extends StaticAnnotation with Serializable
class encodedName(val name: String) extends StaticAnnotation with Serializable
class format(val format: String) extends StaticAnnotation with Serializable
class hidden extends StaticAnnotation with Serializable
class validate[T](val v: Validator[T]) extends StaticAnnotation with Serializable

Adds the v validator to the schema using Schema.validate. Note that the type of the validator must match exactly the type of the class/field. This is not checked at compile-time, and might cause run-time exceptions. To validate elements of collections or Options, use validateEach.

Adds the v validator to the schema using Schema.validate. Note that the type of the validator must match exactly the type of the class/field. This is not checked at compile-time, and might cause run-time exceptions. To validate elements of collections or Options, use validateEach.

class validateEach[T](val v: Validator[T]) extends StaticAnnotation with Serializable

Adds the v validators to elements of the schema, when the annotated class or field is a collection or Option. The type of the validator must match exactly the type of the collection's elements. This is not checked at compile-time, and might cause run-time exceptions. E.g. to validate that when an Option[Int] is defined, the value is smaller than 5, you should use:

Adds the v validators to elements of the schema, when the annotated class or field is a collection or Option. The type of the validator must match exactly the type of the collection's elements. This is not checked at compile-time, and might cause run-time exceptions. E.g. to validate that when an Option[Int] is defined, the value is smaller than 5, you should use:

case class Payload(
 @validateEach(Validator.max(4, exclusive = true))
 aField: Option[Int]
)