object codec
- Source
- codec.scala
- Alphabetic
- By Inheritance
- codec
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Type Members
- implicit final class ByteVectorCodecSyntax extends AnyVal
- implicit final class UnitCodecSyntax extends AnyVal
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
- val ISO-8859-1: Codec[String]
- val SPACE: Codec[Unit]
codec that encodes/decodes to space *
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- val asciiToken: Codec[String]
- def bitsOfString(s: String, chs: Charset = StandardCharsets.UTF_8): BitVector
converts string to bits, given supplied encoding *
- lazy val bitsWsRemoved: Codec[BitVector]
- lazy val boolAsString: Codec[Boolean]
- def bytesUntil(f: (Byte) => Boolean): Codec[ByteVector]
Decodes bytes util
f
holds.Decodes bytes util
f
holds. Encodes as identity - lazy val bytesWsRemoved: Codec[ByteVector]
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- def constantString1(s: String): Codec[Unit]
codec that encodes and deoces to supplied string *
- def constantString1CaseInsensitive(s: String): Codec[Unit]
like
constantString1
but decodes when matches case insensitive.like
constantString1
but decodes when matches case insensitive. Works fro ascii only. * - def default[A](codec: Codec[A], default: A): Codec[A]
Codec with a default value that is implied if there is no value in the supplied bits.
Codec with a default value that is implied if there is no value in the supplied bits.
If the value that is to be encoded is equal to the default value of the codec, then we do not encode anything.
- codec
The codec to attempt to be decoded
- val defaultHttpQuotableChars: Set[Char]
- val defaultQuotableChars: Set[Char]
- lazy val digits: Codec[Int]
- def dropWhile(encodeAs: BitVector)(f: (Byte) => Boolean): Codec[Unit]
drops while
f
holds.drops while
f
holds. Then when encoding usesencodeAs
* - def duration[N](units: TimeUnit, mkN: (Double) => N)(codec: Codec[N])(implicit N: Numeric[N]): Codec[FiniteDuration]
creates duration from specified units *
- def durationIntMs(codec: Codec[Int]): Codec[FiniteDuration]
encodes duration in Ms for Int *
- def enclosedBy[A](open: Char, close: Char)(codec: Codec[A]): Codec[A]
When decoding takes up bytes if open and close character are found.
When decoding takes up bytes if open and close character are found. if there are multiple open characters found, this decodes until matching close characters are found. When encoding wraps the result of codec to open and close characters
- val epochTimestamp: Codec[Date]
encodes as ms since epoch *
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- val eventuallyQuotedAsciiString: Codec[String]
- def eventuallyQuotedString(quotableChars: Set[Char], quote: Char = '"', escape: Char = '\\', charset: Charset = StandardCharsets.UTF_8): Codec[String]
Decodes string from eventually quoted string.
Decodes string from eventually quoted string. If the decoded string was not quoted and contains chars within
quotableChars
the encoding will fail- quotableChars
Chars that must be quoted
- quote
A quoting char
- escape
An escape char used to escape quote and eventually other chars.
- charset
Charset
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- lazy val floatAsString: Codec[Float]
Float encoded as string value
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def guard[A](c: Codec[A])(f: (A) => Option[Err]): Codec[A]
Applies predicate
f
to check whetherA
was decoded successfully, or may be encoded.Applies predicate
f
to check whetherA
was decoded successfully, or may be encoded. Iff
yields to String, then this signals failure - def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- val httpMaybeQuotedUTF8String: Codec[String]
- def ignoreBytes(f: (Byte) => Boolean): Codec[Unit]
a codec that will ignore when decoding all bytes until
f
holds, On encoding will encode to empty * - val ignoreWS: Codec[Unit]
codec that ignores any Whitespace when decoding *
- lazy val intAsString: Codec[Int]
Int encoded as string value
- def intBounded(codec: Codec[Int])(min: Int, max: Int): Codec[Int]
int codec, that allows min/max bounds inclusive *
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- lazy val longAsString: Codec[Long]
Int encoded as string value
- def lookahead2(codec: Codec[Unit]): Codec[Boolean]
correct version of lookahead that won't encode
codec
when encoding * - def maxItems[A, F[_] <: Iterable[_]](sz: Int)(codec: Codec[F[A]]): Codec[F[A]]
will encode a collection of
A
with at max size ofsz
* - def maybe[A](codec: Codec[A]): Codec[Option[A]]
A maybe value, that should be encoded only if there is some value present.
A maybe value, that should be encoded only if there is some value present.
Tries to decode the value using the given codec, if the decode fails we return None.
- codec
The codec to attempt to be decoded/encoded
- def minItems[A, F[_] <: Iterable[_]](sz: Int)(codec: Codec[F[A]]): Codec[F[A]]
will encode a collection of
A
with min size of at leastsz
* - 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()
- val quotedAsciiString: Codec[String]
codec for ascii strings that may be quoted *
- val quotedAsciiToken: Codec[String]
- def quotedString(charset: Charset, quote: Char = '"', escape: Char = '\\'): Codec[String]
A generic codec to encode quoted string.
A generic codec to encode quoted string.
Quoted string starts with Ascii
quote
char and continues with any character, compatible with charset. Characters may be escaped byescape
and correct character. Anyquote
char must be escaped.- charset
Charset of the string. Must be ASCII backward compatible, not using first 7 bits of each byte for the characters except the ascii ones.
- quote
Quote enclosing the string. Must be ascii character
- escape
Escape char, must be ascii.
- val quotedUTF8String: Codec[String]
- def recover2(codec: Codec[Unit]): Codec[Boolean]
like Recover codec, but with fixed encode *
- def set[A](codec: Codec[A]): Codec[Set[A]]
Codec for a set of a given
A
.Codec for a set of a given
A
.- codec
The codec of
A
that is to be used for decoding values.
- def stringBounded(codec: Codec[String])(min: Int, max: Int): Codec[String]
string codec, that allows min/max bounds on size inclusive *
- def stringEnumerated(discriminator: Codec[String], enumeration: Enumeration): DiscriminatorCodec[Value, String]
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def tagged[A, T](codec: Codec[A]): Codec[@@[A, T]]
tags value
A
withT
* - def takeWhile[A](codec: Codec[A])(f: (Byte) => Boolean): Codec[A]
takes bytes until
f
holds, then decodes viacodec
* - def takeWhile[A](discriminator: ByteVector, encodingDiscriminator: ByteVector, codec: Codec[A], maxLength: Int = Int.MaxValue): Codec[A]
A codec that takes all bytes until
discriminator
is found.A codec that takes all bytes until
discriminator
is found. Thencodec
is applied to getA
Remainder AFTER discriminator is returned - def takeWhileChar[A](codec: Codec[A])(char: Char, chars: Char*): Codec[A]
takes bytes until char or chars are encountered *
- def terminated[A](codec: Codec[A], terminator: Terminator[Unit]): Codec[A]
A codec, that on decoding will first decode via
terminator
and when that will be successful, will take all bits returned byterminator
and passes them to be decoded bycodec
.A codec, that on decoding will first decode via
terminator
and when that will be successful, will take all bits returned byterminator
and passes them to be decoded bycodec
.On encoding, this will encode
A
followed by terminator.- codec
Codec that encodes/decodes
A
- terminator
Terminator that returns sequence of data for
codec
- def terminatedBy[A](delimiter: ByteVector, encDelimiter: ByteVector, codec: Codec[A]): Codec[A]
Decodes bytes that are terminated by supplied byte, and then applies codec on bytes decoded differs from
codec ~ delimiter
so the delimiter is scanned first and thencodec
is applied.Decodes bytes that are terminated by supplied byte, and then applies codec on bytes decoded differs from
codec ~ delimiter
so the delimiter is scanned first and thencodec
is applied.The delimiter is not part of any remainder returned when decoding.
instead using delimiter to encode, encDelimiter is used.
- def toString(): String
- Definition Classes
- AnyRef → Any
- def token(codec: Codec[String], terminator: Char = ' '): Codec[String]
Decodes to token(string) eventually terminated by
terminator
.Decodes to token(string) eventually terminated by
terminator
. Terminator is not customed by this codec.. encodes to codec. Terminator must be Ascii Char- codec
codec to terminate the value
- terminator
tzerminator
- def untilEOL[A](codec: Codec[A], encodeNewLine: BitVector = BitVector.view("\r\n".getBytes)): Codec[A]
codec that decodes codec, until EOL signature is found.
codec that decodes codec, until EOL signature is found. EOL is defined as crlf or lf only*
- def untilWs[A](codec: Codec[A]): Codec[A]
codec that takes until any whitespace and then this applies supplied codec *
- val utf8Token: Codec[String]
- def vectorV[A](codec: Codec[A]): Codec[Vector[A]]
like vector[A], but instead consuming all bytes on decoding will try to consume all bytes that match for
A
and will leave last bytes that did not match as remainder.like vector[A], but instead consuming all bytes on decoding will try to consume all bytes that match for
A
and will leave last bytes that did not match as remainder. May encode to Vector.empty ifA
did not match at all.- codec
Codec for
A
- def vectorVDelimited[A](codec: Codec[A], delimiter: Codec[Unit], firstWithDelimiter: Boolean = false): Codec[Vector[A]]
Like VectorV, but the items are delimited by
Delimiter
.Like VectorV, but the items are delimited by
Delimiter
. Last item will not be terminated bydelimiter
- firstWithDelimiter
if set to true, first element will start with delimiter
- 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()
- final def xor[A](codec: Codec[A], or: BitVector): Codec[A]
Performs Xor operation of
codec
withor