trait CodecForOptional[T, CF <: CodecFormat, R] extends Decode[T, Option[R]]
A Codec which can encode to optional raw values / decode from optional *raw* values. An optional raw value specifies if the raw value should be included in the output, or not. Depending on the codec, decoding from an optional value might yield DecodeResult.Missing.
Should be used for inputs/outputs which can be mapped to an optional value.
The main difference comparing to Codec is the signature of the encode
and rawDecode
methods. For each
Codec, a CodecForOptional can be derived.
- Self Type
- CodecForOptional[T, CF, R]
- Annotations
- @implicitNotFound("""Cannot find a codec for type: ${T}, formatted as: ${CF}.
Did you define a codec for: ${T}?
Did you import the codecs for: ${CF}?
Is there an implicit schema for: ${T}, and all of its components?
(codecs are looked up as implicit values of type Codec[${T}, ${CF}, _];
schemas are looked up as implicit values of type Schema[${T}])
""")
Linear Supertypes
Ordering
- Alphabetic
- By Inheritance
Inherited
- CodecForOptional
- Decode
- AnyRef
- Any
- Hide All
- Show All
Visibility
- Public
- Protected
Abstract Value Members
- abstract def encode(t: T): Option[R]
- abstract def meta: CodecMeta[T, CF, R]
- abstract def rawDecode(s: Option[R]): DecodeResult[T]
- Definition Classes
- CodecForOptional → Decode
Concrete Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##(): Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- def decode(r: Option[R]): DecodeResult[T]
- calls
rawDecode
- catches any exceptions that might occur, converting them to decode failures - validates the result- calls
rawDecode
- catches any exceptions that might occur, converting them to decode failures - validates the result- Definition Classes
- Decode
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def map[TT](f: (T) => TT)(g: (TT) => T): CodecForOptional[TT, CF, R]
- def mapDecode[TT](f: (T) => DecodeResult[TT])(g: (TT) => T): CodecForOptional[TT, CF, R]
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- def validate(v: Validator[T]): CodecForOptional[T, CF, R]
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()