object codec
- Source
- codec.scala
- Alphabetic
- By Inheritance
- codec
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
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
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[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
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
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: Any): 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
- val eventuallyQuotedUTF8String: Codec[String]
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
lazy val
floatAsString: Codec[Float]
Float encoded as string value
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
-
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
-
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](sz: Int)(codec: Codec[Vector[A]]): Codec[Vector[A]]
will encode vectors of
A
with at max size ofsz
* -
def
minItems[A](sz: Int)(codec: Codec[Vector[A]]): Codec[Vector[A]]
will encode vectors of
A
with min size of at leastsz
* -
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
-
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
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]): 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
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
xor[A](codec: Codec[A], or: BitVector): Codec[A]
Performs Xor operation of
codec
withor