JsonTaggedAdtCodec

org.latestbit.circe.adt.codec.impl.JsonTaggedAdtCodec
See theJsonTaggedAdtCodec companion object
sealed trait JsonTaggedAdtCodec[T] extends Decoder[T], AsObject[T]

Attributes

Companion
object
Graph
Supertypes
trait AsObject[T]
trait AsRoot[T]
trait Encoder[T]
trait Decoder[T]
trait Serializable
class Object
trait Matchable
class Any
Show all
Known subtypes

Members list

Value members

Inherited methods

final def apply(a: T): Json

Convert a value to JSON.

Convert a value to JSON.

Attributes

Inherited from:
AsObject
def apply(c: HCursor): Result[A]

Decode the given HCursor.

Decode the given HCursor.

Attributes

Inherited from:
Decoder
final def at(field: String): Decoder[A]

Create a new decoder that attempts to navigate to the specified field before decoding.

Create a new decoder that attempts to navigate to the specified field before decoding.

Attributes

Inherited from:
Decoder
final def contramap[B](f: B => T): Encoder[B]

Create a new Encoder by applying a function to a value of type B before encoding as an A.

Create a new Encoder by applying a function to a value of type B before encoding as an A.

Attributes

Inherited from:
Encoder
final def contramapObject[B](f: B => T): AsObject[B]

Create a new Encoder.AsObject by applying a function to a value of type B before encoding as an A.

Create a new Encoder.AsObject by applying a function to a value of type B before encoding as an A.

Attributes

Inherited from:
AsObject
def decodeAccumulating(c: HCursor): AccumulatingResult[A]

Attributes

Inherited from:
Decoder
final def decodeJson(j: Json): Result[A]

Decode the given Json value.

Decode the given Json value.

Attributes

Inherited from:
Decoder
final def either[B](decodeB: Decoder[B]): Decoder[Either[A, B]]

Choose the first succeeding decoder, wrapping the result in a disjunction.

Choose the first succeeding decoder, wrapping the result in a disjunction.

Attributes

Inherited from:
Decoder
final def emap[B](f: T => Either[String, B]): Decoder[B]

Create a new decoder that performs some operation on the result if this one succeeds.

Create a new decoder that performs some operation on the result if this one succeeds.

Value parameters

f

a function returning either a value or an error message

Attributes

Inherited from:
Decoder
final def emapTry[B](f: T => Try[B]): Decoder[B]

Create a new decoder that performs some operation on the result if this one succeeds.

Create a new decoder that performs some operation on the result if this one succeeds.

Value parameters

f

a function returning either a value or an error message

Attributes

Inherited from:
Decoder
def encodeObject(a: T): JsonObject

Convert a value to a JSON object.

Convert a value to a JSON object.

Attributes

Inherited from:
AsObject
final def ensure(errors: T => List[String]): Decoder[A]

Build a new instance that fails with one or more errors if the condition does not hold for the result.

Build a new instance that fails with one or more errors if the condition does not hold for the result.

If the result of the function applied to the decoded value is the empty list, the new decoder will succeed with that value.

Attributes

Inherited from:
Decoder
final def ensure(pred: T => Boolean, message: => String): Decoder[A]

Build a new instance that fails if the condition does not hold for the result.

Build a new instance that fails if the condition does not hold for the result.

Note that in the case of chained calls to this method, only the first failure will be returned.

Attributes

Inherited from:
Decoder
final def flatMap[B](f: T => Decoder[B]): Decoder[B]

Monadically bind a function over this Decoder.

Monadically bind a function over this Decoder.

Attributes

Inherited from:
Decoder
final def handleErrorWith(f: DecodingFailure => Decoder[T]): Decoder[A]

Create a new instance that handles any of this instance's errors with the given function.

Create a new instance that handles any of this instance's errors with the given function.

Note that in the case of accumulating decoding, only the first error will be used in recovery.

Attributes

Inherited from:
Decoder
final def kleisli: Kleisli[Result, HCursor, A]

Convert to a Kleisli arrow.

Convert to a Kleisli arrow.

Attributes

Inherited from:
Decoder
final def map[B](f: T => B): Decoder[B]

Map a function over this Decoder.

Map a function over this Decoder.

Attributes

Inherited from:
Decoder
final def mapJson(f: Json => Json): Encoder[A]

Create a new Encoder by applying a function to the output of this one.

Create a new Encoder by applying a function to the output of this one.

Attributes

Inherited from:
Encoder
final def mapJsonObject(f: JsonObject => JsonObject): AsObject[A]

Create a new Encoder.AsObject by applying a function to the output of this one.

Create a new Encoder.AsObject by applying a function to the output of this one.

Attributes

Inherited from:
AsObject
final def or[AA >: T](d: => Decoder[AA]): Decoder[AA]

Choose the first succeeding decoder.

Choose the first succeeding decoder.

Attributes

Inherited from:
Decoder
final def prepare(f: ACursor => ACursor): Decoder[A]

Create a new decoder that performs some operation on the incoming JSON before decoding.

Create a new decoder that performs some operation on the incoming JSON before decoding.

Attributes

Inherited from:
Decoder
final def product[B](fb: Decoder[B]): Decoder[(A, B)]

Run two decoders and return their results as a pair.

Run two decoders and return their results as a pair.

Attributes

Inherited from:
Decoder
def tryDecode(c: ACursor): Result[A]

Decode the given ACursor.

Decode the given ACursor.

Note that if you override the default implementation, you should also be sure to override tryDecodeAccumulating in order for fail-fast and accumulating decoding to be consistent.

Attributes

Inherited from:
Decoder
def tryDecodeAccumulating(c: ACursor): AccumulatingResult[A]

Attributes

Inherited from:
Decoder
final def validate(pred: HCursor => Boolean, message: => String): Decoder[A]

Build a new instance that fails if the condition does not hold for the input.

Build a new instance that fails if the condition does not hold for the input.

Attributes

Inherited from:
Decoder
final def validate(errors: HCursor => List[String]): Decoder[A]

Build a new instance that fails if the condition does not hold for the input.

Build a new instance that fails if the condition does not hold for the input.

Attributes

Inherited from:
Decoder
final def withErrorMessage(message: String): Decoder[A]

Build a new instance with the specified error message.

Build a new instance with the specified error message.

Attributes

Inherited from:
Decoder