Decoder

object Decoder extends DecoderFunctions
Companion for Decoder.
Companion
class
class Object
trait Matchable
class Any

Document{}

def apply[A](f: BitVector => Attempt[DecodeResult[A]]): Decoder[A]
Creates a decoder from the specified function.
def pure[A](a: A): Decoder[A]
Creates a decoder that always decodes the specified value and returns the input bit vector unmodified.
def liftAttempt[A](attempt: Attempt[A]): Decoder[A]
Lifts a value of Attempt[A] in to a Decoder.
def get: Decoder[BitVector]
Gets a decoder that returns the input bit vector as its value and also returns the value as its remainder.
def set(remainder: BitVector): Decoder[Unit]
Gets a decoder that ignores its input bit vector and sets the remainder to the specified value.
def modify(f: BitVector => BitVector): Decoder[Unit]
Gets a decoder that transforms the input bit vector with the specified function and returns the result as the remainder.
final def decodeBoth[A, B](decA: Decoder[A], decB: Decoder[B])(buffer: BitVector): Attempt[DecodeResult[(A, B)]]
Decodes a tuple (A, B) by first decoding A and then using the remaining bits to decode B.
Inhertied from
DecoderFunctions
final def decodeBothCombine[A, B, C](decA: Decoder[A], decB: Decoder[B])(buffer: BitVector)(f: (A, B) => C): Attempt[DecodeResult[C]]
Decodes a C by first decoding A and then using the remaining bits to decode B, then applying the decoded values to the specified function to generate a C.
Inhertied from
DecoderFunctions
final def choiceDecoder[A](decoders: Decoder[A]*): Decoder[A]
Creates a decoder that decodes with each of the specified decoders, returning
the first successful result.
Inhertied from
DecoderFunctions

Type members

Classlikes

final class AsSyntax[A](self: Decoder[A]) extends AnyVal

Value members

Methods

inline def apply[A](using d: Decoder[A]): Decoder[A]

Givens

Givens

given given_Transform_Decoder: Transform[[A] =>> Decoder[A]]