All Downloads are FREE. Search and download functionalities are using the official Maven repository.

scodec.codecs.BooleanCodec.scala Maven / Gradle / Ivy

There is a newer version: 1.11.3
Show newest version
package scodec
package codecs

import scodec.bits.BitVector

private[codecs] object BooleanCodec extends Codec[Boolean] {

  override def sizeBound = SizeBound.exact(1)

  override def encode(b: Boolean) =
    Attempt.successful(if (b) BitVector.high(1) else BitVector.low(1))

  override def decode(buffer: BitVector) =
    if (buffer.isEmpty) Attempt.failure(Err.insufficientBits(1, 0))
    else Attempt.successful(DecodeResult(buffer.head, buffer.tail))

  override def toString = "bool"
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy