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( ... )
Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. CodecForOptional
  2. Decode
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Abstract Value Members

  1. abstract def encode(t: T): Option[R]
  2. abstract def meta: CodecMeta[T, CF, R]
  3. abstract def rawDecode(s: Option[R]): DecodeResult[T]
    Definition Classes
    CodecForOptionalDecode

Concrete Value Members

  1. 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
  2. def map[TT](f: (T) ⇒ TT)(g: (TT) ⇒ T): CodecForOptional[TT, CF, R]
  3. def mapDecode[TT](f: (T) ⇒ DecodeResult[TT])(g: (TT) ⇒ T): CodecForOptional[TT, CF, R]
  4. def validate(v: Validator[T]): CodecForOptional[T, CF, R]