FieldSyntax

Companion:
object
Source:
FieldSyntax.scala
class Object
trait Matchable
class Any
class ValidationModule[F, V, E]
class AccumulateVM[F, E]
class ValidatedNecVM[F, E]
class ValidatedNelVM[F, E]
class FailFastVM[F, E]
object DefaultFailFastVM.type
object FieldSyntax.type
trait all
class ZValidationModule[V, E]
object all.type

Extensions

Extensions

extension [P](field: Field[P])
inline def sub[S](inline selector: P => S): Field[S]

Returns subfield using selector function to extract value and as path

Returns subfield using selector function to extract value and as path

Example

scala> val request = Request(User("ann"))
scala> val field = Field.from(request)
val field: jap.fields.Field[Request] = request:Request(User(ann))
scala> field.sub(_.user.name)
val res1: jap.fields.Field[String] = request.user.name:ann
Source:
FieldSyntax.scala
extension (field: Field.type)
inline def from[V](inline value: V): Field[V]

Returns jap.fields.Field that has provided value and infers its jap.fields.FieldPath from field selects

Returns jap.fields.Field that has provided value and infers its jap.fields.FieldPath from field selects

Example:

scala> val request = Request(User("ann"))
val request: Request = Request(User(ann))
scala> val field = Field.from(request.user.name)
val field: jap.fields.Field[String] = request.user.name:ann
Source:
FieldSyntax.scala
inline def sub[V](inline value: V): Field[V]

Similar to Field.from but drops first selector path

Similar to Field.from but drops first selector path

Example:

scala> val request = Request(User("ann"))
val request: Request = Request(User(ann))
scala> val field = Field.sub(request.user.name)
val field: jap.fields.Field[String] = user.name:ann
Source:
FieldSyntax.scala