Attributes
- Companion
- trait
- Graph
-
- Supertypes
-
trait LowPriorityCodectrait CodecMacrostrait FormCodecMacrostrait CodecExtensions2trait CodecExtensionsclass Objecttrait Matchableclass AnyShow all
- Self type
-
Codec.type
Members list
Value members
Concrete methods
Value parameters
- defaultPartCodec
-
Default codec to use for parts which are not defined in
partCodecs
.None
, if extra parts should be discarded. - partCodecs
-
For each supported part, a (raw body type, codec) pair which encodes the part value into a raw value of the given type. A single part value might be encoded as multiple (or none) raw values.
Attributes
Inherited methods
Creates a codec for an enumeration, where the validator is derived using sttp.tapir.Validator.derivedEnumeration. This requires that all subtypes of the sealed hierarchy T
must be object
s.
Creates a codec for an enumeration, where the validator is derived using sttp.tapir.Validator.derivedEnumeration. This requires that all subtypes of the sealed hierarchy T
must be object
s.
This method cannot be implicit, as there's no way to constraint the type T
to be a sealed trait / class enumeration, so that this would be invoked only when necessary.
Type parameters
- L
-
The type of the low-level representation of the enum, typically a String or an Int.
- T
-
The type of the enum.
Attributes
- Inherited from:
- CodecMacros
Creates a codec for an Enumeration, where the validator is created using the enumeration's values. Unlike the default derivedEnumerationValue method, which provides the schema implicitly, this variant allows customising how the codec is created. This is useful if the low-level representation of the schema is different than a String
, or if the enumeration's values should be encoded in a different way than using .toString
.
Creates a codec for an Enumeration, where the validator is created using the enumeration's values. Unlike the default derivedEnumerationValue method, which provides the schema implicitly, this variant allows customising how the codec is created. This is useful if the low-level representation of the schema is different than a String
, or if the enumeration's values should be encoded in a different way than using .toString
.
Because of technical limitations of macros, the customisation arguments can't be given here directly, instead being delegated to CreateDerivedEnumerationSchema.
Type parameters
- L
-
The type of the low-level representation of the enum, typically a String or an Int.
- T
-
The type of the enum.
Attributes
- Inherited from:
- CodecMacros
Create a codec which during decoding, first tries to decode values on the left using c1
. If this fails for any reason, decoding is done using c2
. Both codecs must have the same low-level values and formats.
Create a codec which during decoding, first tries to decode values on the left using c1
. If this fails for any reason, decoding is done using c2
. Both codecs must have the same low-level values and formats.
For a right-biased variant see Codec.eitherRight.
The schema is defined to be an either schema as created by Schema.schemaForEither.
Attributes
- Inherited from:
- LowPriorityCodec
Givens
Inherited givens
Creates a codec for a string-based union of constant values, where the validator is derived using sttp.tapir.Validator.derivedStringBasedUnionEnumeration. This requires that the union is a union of string literals.
Creates a codec for a string-based union of constant values, where the validator is derived using sttp.tapir.Validator.derivedStringBasedUnionEnumeration. This requires that the union is a union of string literals.
Type parameters
- T
-
The type of the union.
Attributes
- Inherited from:
- CodecMacros
Attributes
- Inherited from:
- FormCodecMacros
Implicits
Implicits
A codec which expects only binary and close frames (all other frames cause a decoding error). Close frames correspond to None
, while text frames are handled using the given byteArrayCodec
and wrapped with Some
.
A codec which expects only binary and close frames (all other frames cause a decoding error). Close frames correspond to None
, while text frames are handled using the given byteArrayCodec
and wrapped with Some
.
Attributes
A codec which expects only binary frames (all other frames cause a decoding error) and handles the text using the given byteArrayCodec
.
A codec which expects only binary frames (all other frames cause a decoding error) and handles the text using the given byteArrayCodec
.
Attributes
Create a codec which decodes/encodes a list of low-level values to a list of high-level values, using the given base codec c
.
Create a codec which decodes/encodes a list of low-level values to a list of high-level values, using the given base codec c
.
The schema is copied from the base codec.
Attributes
Create a codec which requires that a list of low-level values contains a single element. Otherwise a decode failure is returned. The given base codec c
is used for decoding/encoding.
Create a codec which requires that a list of low-level values contains a single element. Otherwise a decode failure is returned. The given base codec c
is used for decoding/encoding.
The schema and validator are copied from the base codec.
Attributes
Create a codec which requires that a list of low-level values is empty or contains a single element. If it contains multiple elements, a decode failure is returned. The given base codec c
is used for decoding/encoding.
Create a codec which requires that a list of low-level values is empty or contains a single element. If it contains multiple elements, a decode failure is returned. The given base codec c
is used for decoding/encoding.
The schema and validator are copied from the base codec.
Attributes
Create a codec which decodes/encodes an optional low-level value to an optional high-level value. The given base codec c
is used for decoding/encoding.
Create a codec which decodes/encodes an optional low-level value to an optional high-level value. The given base codec c
is used for decoding/encoding.
The schema and validator are copied from the base codec.
Attributes
Create a codec which requires that an optional low-level value is defined. If it is None
, a decode failure is returned. The given base codec c
is used for decoding/encoding.
Create a codec which requires that an optional low-level value is defined. If it is None
, a decode failure is returned. The given base codec c
is used for decoding/encoding.
The schema and validator are copied from the base codec.
Attributes
Create a codec which decodes/encodes a list of low-level values to a set of high-level values, using the given base codec c
.
Create a codec which decodes/encodes a list of low-level values to a set of high-level values, using the given base codec c
.
The schema is copied from the base codec.
Attributes
A codec which expects only text and close frames (all other frames cause a decoding error). Close frames correspond to None
, while text frames are handled using the given stringCodec
and wrapped with Some
.
A codec which expects only text and close frames (all other frames cause a decoding error). Close frames correspond to None
, while text frames are handled using the given stringCodec
and wrapped with Some
.
Attributes
A codec which expects only text frames (all other frames cause a decoding error) and handles the text using the given stringCodec
.
A codec which expects only text frames (all other frames cause a decoding error) and handles the text using the given stringCodec
.
Attributes
Create a codec which decodes/encodes a list of low-level values to a vector of high-level values, using the given base codec c
.
Create a codec which decodes/encodes a list of low-level values to a vector of high-level values, using the given base codec c
.
The schema and validator are copied from the base codec.
Attributes
Inherited implicits
Creates a codec which handles values delimited using D
. The implicit T
-codec is used for handling each individual value.
Creates a codec which handles values delimited using D
. The implicit T
-codec is used for handling each individual value.
Upon decoding, the string is split using the delimiter, and then decoded using the T
-codec. Upon encoding, the values are first encoded using the T
-codec, and then combined using the delimiter.
The codec's schema has the explode
attribute set to false
.
Attributes
- Inherited from:
- CodecExtensions2
A default codec for enumerations, which returns a string-based enumeration codec, using the enum's .toString
to encode values, and performing a case-insensitive search through the possible values, converted to strings using .toString
.
A default codec for enumerations, which returns a string-based enumeration codec, using the enum's .toString
to encode values, and performing a case-insensitive search through the possible values, converted to strings using .toString
.
To customise the enum encoding/decoding functions, provide a custom implicit created using derivedEnumerationValueCustomise.
Attributes
- Inherited from:
- CodecMacros
Creates a codec for value class based on codecs defined in Codec
companion
Creates a codec for value class based on codecs defined in Codec
companion
Attributes
- Inherited from:
- CodecMacros
Create a codec which during decoding, first tries to decode values on the right using c2
. If this fails for any reason, decoding is done using c1
. Both codecs must have the same low-level values and formats.
Create a codec which during decoding, first tries to decode values on the right using c2
. If this fails for any reason, decoding is done using c1
. Both codecs must have the same low-level values and formats.
For a left-biased variant see Codec.eitherLeft. This right-biased version is the default when using implicit codec resolution.
The schema is defined to be an either schema as created by Schema.schemaForEither.
Attributes
- Inherited from:
- LowPriorityCodec