A bi-directional mapping between low-level values of type L
and high-level values of type H
. Low level values are formatted as CF
.
The mapping consists of a pair of functions, one to decode (L => H
), and one to encode (H => L
). Decoding can fail, and this is represented as a result of type DecodeResult.
A codec also contains optional meta-data in the schema
of the high-level value (which includes validators), as well as an instance of the format (which determines the media type of the low-level value).
Codec instances are used as implicit values, and are looked up when defining endpoint inputs/outputs. Depending on a particular endpoint input/output, it might require a codec which uses a specific format, or a specific low-level value.
Codec instances can be derived basing on other values (e.g. such as json encoders/decoders when integrating with json libraries). Or, they can be defined by hand for custom types, usually customising an existing, simpler codec.
Codecs can be chained with Mapping s using the map
function.
Type parameters
- CF
-
The format of encoded values. Corresponds to the media type.
- H
-
The type of the high-level value.
- L
-
The type of the low-level value.
Attributes
- Companion
- object
- Graph
-
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
Members list
Value members
Abstract methods
Concrete methods
- calls
rawDecode
- catches any exceptions that might occur, converting them to decode failures
- validates the result
Attributes
- calls
rawDecode
- catches any exceptions that might occur, converting them to decode failures
- validates the result
Attributes
- calls
rawDecode
- catches any exceptions that might occur, converting them to decode failures
- validates the result
Attributes
- calls
rawDecode
- catches any exceptions that might occur, converting them to decode failures
- validates the result
Attributes
- calls
rawDecode
- catches any exceptions that might occur, converting them to decode failures
- validates the result
Attributes
- calls
rawDecode
- catches any exceptions that might occur, converting them to decode failures
- validates the result
Attributes
- calls
rawDecode
- catches any exceptions that might occur, converting them to decode failures
- validates the result
Attributes
- calls
rawDecode
- catches any exceptions that might occur, converting them to decode failures
- validates the result
Attributes
- calls
rawDecode
- catches any exceptions that might occur, converting them to decode failures
- validates the result
Attributes
- calls
rawDecode
- catches any exceptions that might occur, converting them to decode failures
- validates the result
Attributes
- calls
rawDecode
- catches any exceptions that might occur, converting them to decode failures
- validates the result
Attributes
- calls
rawDecode
- catches any exceptions that might occur, converting them to decode failures
- validates the result
Attributes
- calls
rawDecode
- catches any exceptions that might occur, converting them to decode failures
- validates the result
Attributes
- calls
rawDecode
- catches any exceptions that might occur, converting them to decode failures
- validates the result
Attributes
- calls
rawDecode
- catches any exceptions that might occur, converting them to decode failures
- validates the result
Attributes
Maps this codec to the given higher-level type HH
.
Maps this codec to the given higher-level type HH
.
Type parameters
- HH
-
target type
Value parameters
- f
-
decoding function
- g
-
encoding function
Attributes
- See also
Maps this codec to the given higher-level type HH
.
Maps this codec to the given higher-level type HH
.
Type parameters
- HH
-
target type
Value parameters
- f
-
decoding function
- g
-
encoding function
Attributes
- See also
Maps this codec to the given higher-level type HH
.
Maps this codec to the given higher-level type HH
.
Type parameters
- HH
-
target type
Value parameters
- f
-
decoding function
- g
-
encoding function
Attributes
- See also
Maps this codec to the given higher-level type HH
.
Maps this codec to the given higher-level type HH
.
Type parameters
- HH
-
target type
Value parameters
- f
-
decoding function
- g
-
encoding function
Attributes
- See also
Maps this codec to the given higher-level type HH
.
Maps this codec to the given higher-level type HH
.
Type parameters
- HH
-
target type
Value parameters
- f
-
decoding function
- g
-
encoding function
Attributes
- See also
Maps this codec to the given higher-level type HH
.
Maps this codec to the given higher-level type HH
.
Type parameters
- HH
-
target type
Value parameters
- f
-
decoding function
- g
-
encoding function
Attributes
- See also
Maps this codec to the given higher-level type HH
.
Maps this codec to the given higher-level type HH
.
Type parameters
- HH
-
target type
Value parameters
- f
-
decoding function
- g
-
encoding function
Attributes
- See also
Maps this codec to the given higher-level type HH
.
Maps this codec to the given higher-level type HH
.
Type parameters
- HH
-
target type
Value parameters
- f
-
decoding function
- g
-
encoding function
Attributes
- See also
Maps this codec to the given higher-level type HH
.
Maps this codec to the given higher-level type HH
.
Type parameters
- HH
-
target type
Value parameters
- f
-
decoding function
- g
-
encoding function
Attributes
- See also
Maps this codec to the given higher-level type HH
.
Maps this codec to the given higher-level type HH
.
Type parameters
- HH
-
target type
Value parameters
- f
-
decoding function
- g
-
encoding function
Attributes
- See also
Maps this codec to the given higher-level type HH
.
Maps this codec to the given higher-level type HH
.
Type parameters
- HH
-
target type
Value parameters
- f
-
decoding function
- g
-
encoding function
Attributes
- See also
Maps this codec to the given higher-level type HH
.
Maps this codec to the given higher-level type HH
.
Type parameters
- HH
-
target type
Value parameters
- f
-
decoding function
- g
-
encoding function
Attributes
- See also
Maps this codec to the given higher-level type HH
.
Maps this codec to the given higher-level type HH
.
Type parameters
- HH
-
target type
Value parameters
- f
-
decoding function
- g
-
encoding function
Attributes
- See also
Maps this codec to the given higher-level type HH
.
Maps this codec to the given higher-level type HH
.
Type parameters
- HH
-
target type
Value parameters
- f
-
decoding function
- g
-
encoding function
Attributes
- See also
Maps this codec to the given higher-level type HH
.
Maps this codec to the given higher-level type HH
.
Type parameters
- HH
-
target type
Value parameters
- f
-
decoding function
- g
-
encoding function
Attributes
- See also
Adds the given validator to the codec's schema, and maps this codec to the given higher-level type HH
.
Adds the given validator to the codec's schema, and maps this codec to the given higher-level type HH
.
Unlike a .validate(v).map(f)(g)
invocation, during decoding the validator is run before applying the f
function. If there are validation errors, decoding fails. However, the validator is then invoked again on the fully decoded value.
This is useful to create codecs for types, which are unrepresentable unless the validator's condition is met, e.g. due to preconditions in the constructor.
Attributes
- See also
Adds the given validator to the codec's schema, and maps this codec to the given higher-level type HH
.
Adds the given validator to the codec's schema, and maps this codec to the given higher-level type HH
.
Unlike a .validate(v).map(f)(g)
invocation, during decoding the validator is run before applying the f
function. If there are validation errors, decoding fails. However, the validator is then invoked again on the fully decoded value.
This is useful to create codecs for types, which are unrepresentable unless the validator's condition is met, e.g. due to preconditions in the constructor.
Attributes
- See also
Adds the given validator to the codec's schema, and maps this codec to the given higher-level type HH
.
Adds the given validator to the codec's schema, and maps this codec to the given higher-level type HH
.
Unlike a .validate(v).map(f)(g)
invocation, during decoding the validator is run before applying the f
function. If there are validation errors, decoding fails. However, the validator is then invoked again on the fully decoded value.
This is useful to create codecs for types, which are unrepresentable unless the validator's condition is met, e.g. due to preconditions in the constructor.
Attributes
- See also
Adds the given validator to the codec's schema, and maps this codec to the given higher-level type HH
.
Adds the given validator to the codec's schema, and maps this codec to the given higher-level type HH
.
Unlike a .validate(v).map(f)(g)
invocation, during decoding the validator is run before applying the f
function. If there are validation errors, decoding fails. However, the validator is then invoked again on the fully decoded value.
This is useful to create codecs for types, which are unrepresentable unless the validator's condition is met, e.g. due to preconditions in the constructor.
Attributes
- See also
Adds the given validator to the codec's schema, and maps this codec to the given higher-level type HH
.
Adds the given validator to the codec's schema, and maps this codec to the given higher-level type HH
.
Unlike a .validate(v).map(f)(g)
invocation, during decoding the validator is run before applying the f
function. If there are validation errors, decoding fails. However, the validator is then invoked again on the fully decoded value.
This is useful to create codecs for types, which are unrepresentable unless the validator's condition is met, e.g. due to preconditions in the constructor.
Attributes
- See also
Adds the given validator to the codec's schema, and maps this codec to the given higher-level type HH
.
Adds the given validator to the codec's schema, and maps this codec to the given higher-level type HH
.
Unlike a .validate(v).map(f)(g)
invocation, during decoding the validator is run before applying the f
function. If there are validation errors, decoding fails. However, the validator is then invoked again on the fully decoded value.
This is useful to create codecs for types, which are unrepresentable unless the validator's condition is met, e.g. due to preconditions in the constructor.
Attributes
- See also
Adds the given validator to the codec's schema, and maps this codec to the given higher-level type HH
.
Adds the given validator to the codec's schema, and maps this codec to the given higher-level type HH
.
Unlike a .validate(v).map(f)(g)
invocation, during decoding the validator is run before applying the f
function. If there are validation errors, decoding fails. However, the validator is then invoked again on the fully decoded value.
This is useful to create codecs for types, which are unrepresentable unless the validator's condition is met, e.g. due to preconditions in the constructor.
Attributes
- See also
Adds the given validator to the codec's schema, and maps this codec to the given higher-level type HH
.
Adds the given validator to the codec's schema, and maps this codec to the given higher-level type HH
.
Unlike a .validate(v).map(f)(g)
invocation, during decoding the validator is run before applying the f
function. If there are validation errors, decoding fails. However, the validator is then invoked again on the fully decoded value.
This is useful to create codecs for types, which are unrepresentable unless the validator's condition is met, e.g. due to preconditions in the constructor.
Attributes
- See also
Adds the given validator to the codec's schema, and maps this codec to the given higher-level type HH
.
Adds the given validator to the codec's schema, and maps this codec to the given higher-level type HH
.
Unlike a .validate(v).map(f)(g)
invocation, during decoding the validator is run before applying the f
function. If there are validation errors, decoding fails. However, the validator is then invoked again on the fully decoded value.
This is useful to create codecs for types, which are unrepresentable unless the validator's condition is met, e.g. due to preconditions in the constructor.
Attributes
- See also
Adds the given validator to the codec's schema, and maps this codec to the given higher-level type HH
.
Adds the given validator to the codec's schema, and maps this codec to the given higher-level type HH
.
Unlike a .validate(v).map(f)(g)
invocation, during decoding the validator is run before applying the f
function. If there are validation errors, decoding fails. However, the validator is then invoked again on the fully decoded value.
This is useful to create codecs for types, which are unrepresentable unless the validator's condition is met, e.g. due to preconditions in the constructor.
Attributes
- See also
Adds the given validator to the codec's schema, and maps this codec to the given higher-level type HH
.
Adds the given validator to the codec's schema, and maps this codec to the given higher-level type HH
.
Unlike a .validate(v).map(f)(g)
invocation, during decoding the validator is run before applying the f
function. If there are validation errors, decoding fails. However, the validator is then invoked again on the fully decoded value.
This is useful to create codecs for types, which are unrepresentable unless the validator's condition is met, e.g. due to preconditions in the constructor.
Attributes
- See also
Adds the given validator to the codec's schema, and maps this codec to the given higher-level type HH
.
Adds the given validator to the codec's schema, and maps this codec to the given higher-level type HH
.
Unlike a .validate(v).map(f)(g)
invocation, during decoding the validator is run before applying the f
function. If there are validation errors, decoding fails. However, the validator is then invoked again on the fully decoded value.
This is useful to create codecs for types, which are unrepresentable unless the validator's condition is met, e.g. due to preconditions in the constructor.
Attributes
- See also
Adds the given validator to the codec's schema, and maps this codec to the given higher-level type HH
.
Adds the given validator to the codec's schema, and maps this codec to the given higher-level type HH
.
Unlike a .validate(v).map(f)(g)
invocation, during decoding the validator is run before applying the f
function. If there are validation errors, decoding fails. However, the validator is then invoked again on the fully decoded value.
This is useful to create codecs for types, which are unrepresentable unless the validator's condition is met, e.g. due to preconditions in the constructor.
Attributes
- See also
Adds the given validator to the codec's schema, and maps this codec to the given higher-level type HH
.
Adds the given validator to the codec's schema, and maps this codec to the given higher-level type HH
.
Unlike a .validate(v).map(f)(g)
invocation, during decoding the validator is run before applying the f
function. If there are validation errors, decoding fails. However, the validator is then invoked again on the fully decoded value.
This is useful to create codecs for types, which are unrepresentable unless the validator's condition is met, e.g. due to preconditions in the constructor.
Attributes
- See also
Adds the given validator to the codec's schema, and maps this codec to the given higher-level type HH
.
Adds the given validator to the codec's schema, and maps this codec to the given higher-level type HH
.
Unlike a .validate(v).map(f)(g)
invocation, during decoding the validator is run before applying the f
function. If there are validation errors, decoding fails. However, the validator is then invoked again on the fully decoded value.
This is useful to create codecs for types, which are unrepresentable unless the validator's condition is met, e.g. due to preconditions in the constructor.
Attributes
- See also
Adds a validator to the codec's schema.
Adds a validator to the codec's schema.
Note that validation is run on a fully decoded value. That is, during decoding, first the decoding functions are run, followed by validations. Hence any functions provided in subsequent .map
s or .mapDecode
s will be invoked before validation.
Attributes
- See also
Adds a validator to the codec's schema.
Adds a validator to the codec's schema.
Note that validation is run on a fully decoded value. That is, during decoding, first the decoding functions are run, followed by validations. Hence any functions provided in subsequent .map
s or .mapDecode
s will be invoked before validation.
Attributes
- See also
Adds a validator to the codec's schema.
Adds a validator to the codec's schema.
Note that validation is run on a fully decoded value. That is, during decoding, first the decoding functions are run, followed by validations. Hence any functions provided in subsequent .map
s or .mapDecode
s will be invoked before validation.
Attributes
- See also
Adds a validator to the codec's schema.
Adds a validator to the codec's schema.
Note that validation is run on a fully decoded value. That is, during decoding, first the decoding functions are run, followed by validations. Hence any functions provided in subsequent .map
s or .mapDecode
s will be invoked before validation.
Attributes
- See also
Adds a validator to the codec's schema.
Adds a validator to the codec's schema.
Note that validation is run on a fully decoded value. That is, during decoding, first the decoding functions are run, followed by validations. Hence any functions provided in subsequent .map
s or .mapDecode
s will be invoked before validation.
Attributes
- See also
Adds a validator to the codec's schema.
Adds a validator to the codec's schema.
Note that validation is run on a fully decoded value. That is, during decoding, first the decoding functions are run, followed by validations. Hence any functions provided in subsequent .map
s or .mapDecode
s will be invoked before validation.
Attributes
- See also
Adds a validator to the codec's schema.
Adds a validator to the codec's schema.
Note that validation is run on a fully decoded value. That is, during decoding, first the decoding functions are run, followed by validations. Hence any functions provided in subsequent .map
s or .mapDecode
s will be invoked before validation.
Attributes
- See also
Adds a validator to the codec's schema.
Adds a validator to the codec's schema.
Note that validation is run on a fully decoded value. That is, during decoding, first the decoding functions are run, followed by validations. Hence any functions provided in subsequent .map
s or .mapDecode
s will be invoked before validation.
Attributes
- See also
Adds a validator to the codec's schema.
Adds a validator to the codec's schema.
Note that validation is run on a fully decoded value. That is, during decoding, first the decoding functions are run, followed by validations. Hence any functions provided in subsequent .map
s or .mapDecode
s will be invoked before validation.
Attributes
- See also
Adds a validator to the codec's schema.
Adds a validator to the codec's schema.
Note that validation is run on a fully decoded value. That is, during decoding, first the decoding functions are run, followed by validations. Hence any functions provided in subsequent .map
s or .mapDecode
s will be invoked before validation.
Attributes
- See also
Adds a validator to the codec's schema.
Adds a validator to the codec's schema.
Note that validation is run on a fully decoded value. That is, during decoding, first the decoding functions are run, followed by validations. Hence any functions provided in subsequent .map
s or .mapDecode
s will be invoked before validation.
Attributes
- See also
Adds a validator to the codec's schema.
Adds a validator to the codec's schema.
Note that validation is run on a fully decoded value. That is, during decoding, first the decoding functions are run, followed by validations. Hence any functions provided in subsequent .map
s or .mapDecode
s will be invoked before validation.
Attributes
- See also
Adds a validator to the codec's schema.
Adds a validator to the codec's schema.
Note that validation is run on a fully decoded value. That is, during decoding, first the decoding functions are run, followed by validations. Hence any functions provided in subsequent .map
s or .mapDecode
s will be invoked before validation.
Attributes
- See also
Adds a validator to the codec's schema.
Adds a validator to the codec's schema.
Note that validation is run on a fully decoded value. That is, during decoding, first the decoding functions are run, followed by validations. Hence any functions provided in subsequent .map
s or .mapDecode
s will be invoked before validation.
Attributes
- See also
Adds a validator to the codec's schema.
Adds a validator to the codec's schema.
Note that validation is run on a fully decoded value. That is, during decoding, first the decoding functions are run, followed by validations. Hence any functions provided in subsequent .map
s or .mapDecode
s will be invoked before validation.
Attributes
- See also
Adds a validator which validates each element in the collection.
Adds a validator which validates each element in the collection.
Note that validation is run on a fully decoded value. That is, during decoding, first the decoding functions are run, followed by validations. Hence any functions provided in subsequent .map
s or .mapDecode
s will be invoked before validation.
Should only be used if the schema hasn't been created by .map
ping another one, but directly from Schema[U]
. Otherwise the shape of the schema doesn't correspond to the type T
, but to some lower-level representation of the type. This might cause invalid results at run-time.
Attributes
Adds a validator which validates each element in the collection.
Adds a validator which validates each element in the collection.
Note that validation is run on a fully decoded value. That is, during decoding, first the decoding functions are run, followed by validations. Hence any functions provided in subsequent .map
s or .mapDecode
s will be invoked before validation.
Should only be used if the schema hasn't been created by .map
ping another one, but directly from Schema[U]
. Otherwise the shape of the schema doesn't correspond to the type T
, but to some lower-level representation of the type. This might cause invalid results at run-time.
Attributes
Adds a validator which validates each element in the collection.
Adds a validator which validates each element in the collection.
Note that validation is run on a fully decoded value. That is, during decoding, first the decoding functions are run, followed by validations. Hence any functions provided in subsequent .map
s or .mapDecode
s will be invoked before validation.
Should only be used if the schema hasn't been created by .map
ping another one, but directly from Schema[U]
. Otherwise the shape of the schema doesn't correspond to the type T
, but to some lower-level representation of the type. This might cause invalid results at run-time.
Attributes
Adds a validator which validates each element in the collection.
Adds a validator which validates each element in the collection.
Note that validation is run on a fully decoded value. That is, during decoding, first the decoding functions are run, followed by validations. Hence any functions provided in subsequent .map
s or .mapDecode
s will be invoked before validation.
Should only be used if the schema hasn't been created by .map
ping another one, but directly from Schema[U]
. Otherwise the shape of the schema doesn't correspond to the type T
, but to some lower-level representation of the type. This might cause invalid results at run-time.
Attributes
Adds a validator which validates each element in the collection.
Adds a validator which validates each element in the collection.
Note that validation is run on a fully decoded value. That is, during decoding, first the decoding functions are run, followed by validations. Hence any functions provided in subsequent .map
s or .mapDecode
s will be invoked before validation.
Should only be used if the schema hasn't been created by .map
ping another one, but directly from Schema[U]
. Otherwise the shape of the schema doesn't correspond to the type T
, but to some lower-level representation of the type. This might cause invalid results at run-time.
Attributes
Adds a validator which validates each element in the collection.
Adds a validator which validates each element in the collection.
Note that validation is run on a fully decoded value. That is, during decoding, first the decoding functions are run, followed by validations. Hence any functions provided in subsequent .map
s or .mapDecode
s will be invoked before validation.
Should only be used if the schema hasn't been created by .map
ping another one, but directly from Schema[U]
. Otherwise the shape of the schema doesn't correspond to the type T
, but to some lower-level representation of the type. This might cause invalid results at run-time.
Attributes
Adds a validator which validates each element in the collection.
Adds a validator which validates each element in the collection.
Note that validation is run on a fully decoded value. That is, during decoding, first the decoding functions are run, followed by validations. Hence any functions provided in subsequent .map
s or .mapDecode
s will be invoked before validation.
Should only be used if the schema hasn't been created by .map
ping another one, but directly from Schema[U]
. Otherwise the shape of the schema doesn't correspond to the type T
, but to some lower-level representation of the type. This might cause invalid results at run-time.
Attributes
Adds a validator which validates each element in the collection.
Adds a validator which validates each element in the collection.
Note that validation is run on a fully decoded value. That is, during decoding, first the decoding functions are run, followed by validations. Hence any functions provided in subsequent .map
s or .mapDecode
s will be invoked before validation.
Should only be used if the schema hasn't been created by .map
ping another one, but directly from Schema[U]
. Otherwise the shape of the schema doesn't correspond to the type T
, but to some lower-level representation of the type. This might cause invalid results at run-time.
Attributes
Adds a validator which validates each element in the collection.
Adds a validator which validates each element in the collection.
Note that validation is run on a fully decoded value. That is, during decoding, first the decoding functions are run, followed by validations. Hence any functions provided in subsequent .map
s or .mapDecode
s will be invoked before validation.
Should only be used if the schema hasn't been created by .map
ping another one, but directly from Schema[U]
. Otherwise the shape of the schema doesn't correspond to the type T
, but to some lower-level representation of the type. This might cause invalid results at run-time.
Attributes
Adds a validator which validates each element in the collection.
Adds a validator which validates each element in the collection.
Note that validation is run on a fully decoded value. That is, during decoding, first the decoding functions are run, followed by validations. Hence any functions provided in subsequent .map
s or .mapDecode
s will be invoked before validation.
Should only be used if the schema hasn't been created by .map
ping another one, but directly from Schema[U]
. Otherwise the shape of the schema doesn't correspond to the type T
, but to some lower-level representation of the type. This might cause invalid results at run-time.
Attributes
Adds a validator which validates each element in the collection.
Adds a validator which validates each element in the collection.
Note that validation is run on a fully decoded value. That is, during decoding, first the decoding functions are run, followed by validations. Hence any functions provided in subsequent .map
s or .mapDecode
s will be invoked before validation.
Should only be used if the schema hasn't been created by .map
ping another one, but directly from Schema[U]
. Otherwise the shape of the schema doesn't correspond to the type T
, but to some lower-level representation of the type. This might cause invalid results at run-time.
Attributes
Adds a validator which validates each element in the collection.
Adds a validator which validates each element in the collection.
Note that validation is run on a fully decoded value. That is, during decoding, first the decoding functions are run, followed by validations. Hence any functions provided in subsequent .map
s or .mapDecode
s will be invoked before validation.
Should only be used if the schema hasn't been created by .map
ping another one, but directly from Schema[U]
. Otherwise the shape of the schema doesn't correspond to the type T
, but to some lower-level representation of the type. This might cause invalid results at run-time.
Attributes
Adds a validator which validates each element in the collection.
Adds a validator which validates each element in the collection.
Note that validation is run on a fully decoded value. That is, during decoding, first the decoding functions are run, followed by validations. Hence any functions provided in subsequent .map
s or .mapDecode
s will be invoked before validation.
Should only be used if the schema hasn't been created by .map
ping another one, but directly from Schema[U]
. Otherwise the shape of the schema doesn't correspond to the type T
, but to some lower-level representation of the type. This might cause invalid results at run-time.
Attributes
Adds a validator which validates each element in the collection.
Adds a validator which validates each element in the collection.
Note that validation is run on a fully decoded value. That is, during decoding, first the decoding functions are run, followed by validations. Hence any functions provided in subsequent .map
s or .mapDecode
s will be invoked before validation.
Should only be used if the schema hasn't been created by .map
ping another one, but directly from Schema[U]
. Otherwise the shape of the schema doesn't correspond to the type T
, but to some lower-level representation of the type. This might cause invalid results at run-time.
Attributes
Adds a validator which validates each element in the collection.
Adds a validator which validates each element in the collection.
Note that validation is run on a fully decoded value. That is, during decoding, first the decoding functions are run, followed by validations. Hence any functions provided in subsequent .map
s or .mapDecode
s will be invoked before validation.
Should only be used if the schema hasn't been created by .map
ping another one, but directly from Schema[U]
. Otherwise the shape of the schema doesn't correspond to the type T
, but to some lower-level representation of the type. This might cause invalid results at run-time.
Attributes
Adds a validator which validates the option's element, if it is present.
Adds a validator which validates the option's element, if it is present.
Note that validation is run on a fully decoded value. That is, during decoding, first the decoding functions are run, followed by validations. Hence any functions provided in subsequent .map
s or .mapDecode
s will be invoked before validation.
Should only be used if the schema hasn't been created by .map
ping another one, but directly from Schema[U]
. Otherwise the shape of the schema doesn't correspond to the type T
, but to some lower-level representation of the type. This might cause invalid results at run-time.
Attributes
Adds a validator which validates the option's element, if it is present.
Adds a validator which validates the option's element, if it is present.
Note that validation is run on a fully decoded value. That is, during decoding, first the decoding functions are run, followed by validations. Hence any functions provided in subsequent .map
s or .mapDecode
s will be invoked before validation.
Should only be used if the schema hasn't been created by .map
ping another one, but directly from Schema[U]
. Otherwise the shape of the schema doesn't correspond to the type T
, but to some lower-level representation of the type. This might cause invalid results at run-time.
Attributes
Adds a validator which validates the option's element, if it is present.
Adds a validator which validates the option's element, if it is present.
Note that validation is run on a fully decoded value. That is, during decoding, first the decoding functions are run, followed by validations. Hence any functions provided in subsequent .map
s or .mapDecode
s will be invoked before validation.
Should only be used if the schema hasn't been created by .map
ping another one, but directly from Schema[U]
. Otherwise the shape of the schema doesn't correspond to the type T
, but to some lower-level representation of the type. This might cause invalid results at run-time.
Attributes
Adds a validator which validates the option's element, if it is present.
Adds a validator which validates the option's element, if it is present.
Note that validation is run on a fully decoded value. That is, during decoding, first the decoding functions are run, followed by validations. Hence any functions provided in subsequent .map
s or .mapDecode
s will be invoked before validation.
Should only be used if the schema hasn't been created by .map
ping another one, but directly from Schema[U]
. Otherwise the shape of the schema doesn't correspond to the type T
, but to some lower-level representation of the type. This might cause invalid results at run-time.
Attributes
Adds a validator which validates the option's element, if it is present.
Adds a validator which validates the option's element, if it is present.
Note that validation is run on a fully decoded value. That is, during decoding, first the decoding functions are run, followed by validations. Hence any functions provided in subsequent .map
s or .mapDecode
s will be invoked before validation.
Should only be used if the schema hasn't been created by .map
ping another one, but directly from Schema[U]
. Otherwise the shape of the schema doesn't correspond to the type T
, but to some lower-level representation of the type. This might cause invalid results at run-time.
Attributes
Adds a validator which validates the option's element, if it is present.
Adds a validator which validates the option's element, if it is present.
Note that validation is run on a fully decoded value. That is, during decoding, first the decoding functions are run, followed by validations. Hence any functions provided in subsequent .map
s or .mapDecode
s will be invoked before validation.
Should only be used if the schema hasn't been created by .map
ping another one, but directly from Schema[U]
. Otherwise the shape of the schema doesn't correspond to the type T
, but to some lower-level representation of the type. This might cause invalid results at run-time.
Attributes
Adds a validator which validates the option's element, if it is present.
Adds a validator which validates the option's element, if it is present.
Note that validation is run on a fully decoded value. That is, during decoding, first the decoding functions are run, followed by validations. Hence any functions provided in subsequent .map
s or .mapDecode
s will be invoked before validation.
Should only be used if the schema hasn't been created by .map
ping another one, but directly from Schema[U]
. Otherwise the shape of the schema doesn't correspond to the type T
, but to some lower-level representation of the type. This might cause invalid results at run-time.
Attributes
Adds a validator which validates the option's element, if it is present.
Adds a validator which validates the option's element, if it is present.
Note that validation is run on a fully decoded value. That is, during decoding, first the decoding functions are run, followed by validations. Hence any functions provided in subsequent .map
s or .mapDecode
s will be invoked before validation.
Should only be used if the schema hasn't been created by .map
ping another one, but directly from Schema[U]
. Otherwise the shape of the schema doesn't correspond to the type T
, but to some lower-level representation of the type. This might cause invalid results at run-time.
Attributes
Adds a validator which validates the option's element, if it is present.
Adds a validator which validates the option's element, if it is present.
Note that validation is run on a fully decoded value. That is, during decoding, first the decoding functions are run, followed by validations. Hence any functions provided in subsequent .map
s or .mapDecode
s will be invoked before validation.
Should only be used if the schema hasn't been created by .map
ping another one, but directly from Schema[U]
. Otherwise the shape of the schema doesn't correspond to the type T
, but to some lower-level representation of the type. This might cause invalid results at run-time.
Attributes
Adds a validator which validates the option's element, if it is present.
Adds a validator which validates the option's element, if it is present.
Note that validation is run on a fully decoded value. That is, during decoding, first the decoding functions are run, followed by validations. Hence any functions provided in subsequent .map
s or .mapDecode
s will be invoked before validation.
Should only be used if the schema hasn't been created by .map
ping another one, but directly from Schema[U]
. Otherwise the shape of the schema doesn't correspond to the type T
, but to some lower-level representation of the type. This might cause invalid results at run-time.
Attributes
Adds a validator which validates the option's element, if it is present.
Adds a validator which validates the option's element, if it is present.
Note that validation is run on a fully decoded value. That is, during decoding, first the decoding functions are run, followed by validations. Hence any functions provided in subsequent .map
s or .mapDecode
s will be invoked before validation.
Should only be used if the schema hasn't been created by .map
ping another one, but directly from Schema[U]
. Otherwise the shape of the schema doesn't correspond to the type T
, but to some lower-level representation of the type. This might cause invalid results at run-time.
Attributes
Adds a validator which validates the option's element, if it is present.
Adds a validator which validates the option's element, if it is present.
Note that validation is run on a fully decoded value. That is, during decoding, first the decoding functions are run, followed by validations. Hence any functions provided in subsequent .map
s or .mapDecode
s will be invoked before validation.
Should only be used if the schema hasn't been created by .map
ping another one, but directly from Schema[U]
. Otherwise the shape of the schema doesn't correspond to the type T
, but to some lower-level representation of the type. This might cause invalid results at run-time.
Attributes
Adds a validator which validates the option's element, if it is present.
Adds a validator which validates the option's element, if it is present.
Note that validation is run on a fully decoded value. That is, during decoding, first the decoding functions are run, followed by validations. Hence any functions provided in subsequent .map
s or .mapDecode
s will be invoked before validation.
Should only be used if the schema hasn't been created by .map
ping another one, but directly from Schema[U]
. Otherwise the shape of the schema doesn't correspond to the type T
, but to some lower-level representation of the type. This might cause invalid results at run-time.
Attributes
Adds a validator which validates the option's element, if it is present.
Adds a validator which validates the option's element, if it is present.
Note that validation is run on a fully decoded value. That is, during decoding, first the decoding functions are run, followed by validations. Hence any functions provided in subsequent .map
s or .mapDecode
s will be invoked before validation.
Should only be used if the schema hasn't been created by .map
ping another one, but directly from Schema[U]
. Otherwise the shape of the schema doesn't correspond to the type T
, but to some lower-level representation of the type. This might cause invalid results at run-time.
Attributes
Adds a validator which validates the option's element, if it is present.
Adds a validator which validates the option's element, if it is present.
Note that validation is run on a fully decoded value. That is, during decoding, first the decoding functions are run, followed by validations. Hence any functions provided in subsequent .map
s or .mapDecode
s will be invoked before validation.
Should only be used if the schema hasn't been created by .map
ping another one, but directly from Schema[U]
. Otherwise the shape of the schema doesn't correspond to the type T
, but to some lower-level representation of the type. This might cause invalid results at run-time.