Trait/Object

scodec.stream.codec

StreamCodec

Related Docs: object StreamCodec | package codec

Permalink

trait StreamCodec[A] extends StreamGenCodec[A, A]

Source
StreamCodec.scala
Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. StreamCodec
  2. StreamGenCodec
  3. StreamDecoder
  4. StreamEncoder
  5. AnyRef
  6. Any
Implicitly
  1. by TransformSyntax
  2. by any2stringadd
  3. by StringFormat
  4. by Ensuring
  5. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Abstract Value Members

  1. abstract def decoder: Stream[Cursor, A]

    Permalink

    The Stream backing this StreamDecoder.

    The Stream backing this StreamDecoder. All functions on StreamDecoder are defined in terms of this Stream.

    Definition Classes
    StreamDecoder
  2. abstract def encoder: Step[A]

    Permalink
    Definition Classes
    StreamEncoder

Concrete Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. def +(other: String): String

    Permalink
    Implicit information
    This member is added by an implicit conversion from StreamCodec[A] to any2stringadd[StreamCodec[A]] performed by method any2stringadd in scala.Predef.
    Definition Classes
    any2stringadd
  4. final def ++[A2 >: A](d: ⇒ decode.StreamDecoder[A2]): decode.StreamDecoder[A2]

    Permalink

    Run this StreamDecoder, then d, then concatenate the two streams.

    Run this StreamDecoder, then d, then concatenate the two streams.

    Definition Classes
    StreamDecoder
  5. def ++(e: ⇒ encode.StreamEncoder[A]): encode.StreamEncoder[A]

    Permalink

    Run this StreamEncoder, followed by e.

    Run this StreamEncoder, followed by e.

    Definition Classes
    StreamEncoder
  6. def ->[B](y: B): (StreamCodec[A], B)

    Permalink
    Implicit information
    This member is added by an implicit conversion from StreamCodec[A] to ArrowAssoc[StreamCodec[A]] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @inline()
  7. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  8. def as[B](implicit as: Transformer[A, B]): StreamCodec[B]

    Permalink
    Implicit information
    This member is added by an implicit conversion from StreamCodec[A] to TransformSyntax[StreamCodec, A] performed by method TransformSyntax in scodec. This conversion will take place only if an implicit value of type Transform[StreamCodec] is in scope.
    Definition Classes
    TransformSyntax
  9. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  10. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  11. final def collect[B](pf: PartialFunction[A, B]): decode.StreamDecoder[B]

    Permalink

    Transform the output of this StreamDecoder using the partial function pf.

    Transform the output of this StreamDecoder using the partial function pf.

    Definition Classes
    StreamDecoder
  12. final def decode(bits: ⇒ BitVector): Stream[Task, A]

    Permalink

    Decoding a stream of A values from the given BitVector.

    Decoding a stream of A values from the given BitVector. This function does not retain a reference to bits, allowing it to be be garbage collected as the returned stream is traversed.

    Definition Classes
    StreamDecoder
  13. def decodeAllValid(bits: ⇒ BitVector): Vector[A]

    Permalink

    Decode the given BitVector, returning a strict Vector of the results, and throwing an exception in the event of a decoding error.

    Decode the given BitVector, returning a strict Vector of the results, and throwing an exception in the event of a decoding error.

    Definition Classes
    StreamDecoder
  14. final def decodeAsyncResource[R](acquire: Task[R])(read: (R) ⇒ BitVector, release: (R) ⇒ Task[Unit]): Stream[Task, A]

    Permalink

    Resource-safe version of decode.

    Resource-safe version of decode. Acquires a resource, decodes a stream of values, and releases the resource when the returned Stream[Task,A] is finished being consumed. The acquire and release actions may be asynchronous.

    Definition Classes
    StreamDecoder
  15. final def decodeChannel(in: ⇒ ReadableByteChannel, chunkSizeInBytes: Int = 1024 * 1000 * 16, direct: Boolean = false): Stream[Task, A]

    Permalink

    Resource-safe version of decode for a ReadableByteChannel resource.

    Resource-safe version of decode for a ReadableByteChannel resource. This is just a convenience function which calls decodeResource, using scodec.bits.BitVector.fromChannel as the read function, and which closes in after the returned Stream[Task,A] is consumed.

    Definition Classes
    StreamDecoder
  16. final def decodeInputStream(in: ⇒ InputStream, chunkSizeInBytes: Int = 1024 * 1000 * 16): Stream[Task, A]

    Permalink

    Resource-safe version of decode for an InputStream resource.

    Resource-safe version of decode for an InputStream resource. This is just a convenience function which calls decodeResource, using scodec.bits.BitVector.fromInputStream as the read function, and which closes in after the returned Stream[Task,A] is consumed.

    Definition Classes
    StreamDecoder
  17. final def decodeMmap(in: ⇒ FileChannel, chunkSizeInBytes: Int = 1024 * 1000 * 16): Stream[Task, A]

    Permalink

    Resource-safe version of decode for a ReadableByteChannel resource.

    Resource-safe version of decode for a ReadableByteChannel resource. This is just a convenience function which calls decodeResource, using scodec.bits.BitVector.fromChannel as the read function, and which closes in after the returned Stream[Task,A] is consumed.

    Definition Classes
    StreamDecoder
  18. final def decodeResource[R](acquire: ⇒ R)(read: (R) ⇒ BitVector, release: (R) ⇒ Unit): Stream[Task, A]

    Permalink

    Resource-safe version of decode.

    Resource-safe version of decode. Acquires a resource, decodes a stream of values, and releases the resource when the returned Stream[Task,A] is finished being consumed. If the acquire and release actions are asynchronous, use decodeAsyncResource.

    Definition Classes
    StreamDecoder
  19. def drop(n: Long): decode.StreamDecoder[A]

    Permalink

    Ignore the first n decoded values.

    Ignore the first n decoded values.

    Definition Classes
    StreamDecoder
  20. def dropWhile(f: (A) ⇒ Boolean): decode.StreamDecoder[A]

    Permalink

    Ignore decoded values as long as the predicate tests true.

    Ignore decoded values as long as the predicate tests true.

    Definition Classes
    StreamDecoder
  21. final def edit[B](f: (Stream[Cursor, A]) ⇒ Stream[Cursor, B]): decode.StreamDecoder[B]

    Permalink

    Modify the Stream[Cursor,A] backing this StreamDecoder.

    Modify the Stream[Cursor,A] backing this StreamDecoder.

    Definition Classes
    StreamDecoder
  22. def edit[B](f: (Step[A]) ⇒ Step[B]): encode.StreamEncoder[B]

    Permalink

    Modify the Pull backing this StreamEncoder.

    Modify the Pull backing this StreamEncoder.

    Definition Classes
    StreamEncoder
  23. def editDecoder[O2](f: (StreamDecoder[A]) ⇒ StreamDecoder[O2]): StreamGenCodec[A, O2]

    Permalink
    Definition Classes
    StreamGenCodec
  24. def editEncoder[I2](f: (StreamEncoder[A]) ⇒ StreamEncoder[I2]): StreamGenCodec[I2, A]

    Permalink
    Definition Classes
    StreamGenCodec
  25. final def encode[F[_]](in: Stream[F, A]): Stream[F, BitVector]

    Permalink

    Encode the input stream of A values using this StreamEncoder.

    Encode the input stream of A values using this StreamEncoder.

    Definition Classes
    StreamEncoder
  26. def encodeAllValid(in: Seq[A]): BitVector

    Permalink

    Encode the given sequence of A values to a BitVector, raising an exception in the event of an encoding error.

    Encode the given sequence of A values to a BitVector, raising an exception in the event of an encoding error.

    Definition Classes
    StreamEncoder
  27. def ensuring(cond: (StreamCodec[A]) ⇒ Boolean, msg: ⇒ Any): StreamCodec[A]

    Permalink
    Implicit information
    This member is added by an implicit conversion from StreamCodec[A] to Ensuring[StreamCodec[A]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  28. def ensuring(cond: (StreamCodec[A]) ⇒ Boolean): StreamCodec[A]

    Permalink
    Implicit information
    This member is added by an implicit conversion from StreamCodec[A] to Ensuring[StreamCodec[A]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  29. def ensuring(cond: Boolean, msg: ⇒ Any): StreamCodec[A]

    Permalink
    Implicit information
    This member is added by an implicit conversion from StreamCodec[A] to Ensuring[StreamCodec[A]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  30. def ensuring(cond: Boolean): StreamCodec[A]

    Permalink
    Implicit information
    This member is added by an implicit conversion from StreamCodec[A] to Ensuring[StreamCodec[A]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  31. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  32. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  33. def exmap[B](f: (A) ⇒ Attempt[B], g: (B) ⇒ Attempt[A]): StreamCodec[B]

    Permalink
    Implicit information
    This member is added by an implicit conversion from StreamCodec[A] to TransformSyntax[StreamCodec, A] performed by method TransformSyntax in scodec. This conversion will take place only if an implicit value of type Transform[StreamCodec] is in scope.
    Definition Classes
    TransformSyntax
  34. def exmapc[B](f: (A) ⇒ Attempt[B])(g: (B) ⇒ Attempt[A]): StreamCodec[B]

    Permalink
    Implicit information
    This member is added by an implicit conversion from StreamCodec[A] to TransformSyntax[StreamCodec, A] performed by method TransformSyntax in scodec. This conversion will take place only if an implicit value of type Transform[StreamCodec] is in scope.
    Definition Classes
    TransformSyntax
  35. def filter(f: (A) ⇒ Boolean): decode.StreamDecoder[A]

    Permalink

    Skip any decoded values for which the predicate tests false.

    Skip any decoded values for which the predicate tests false.

    Definition Classes
    StreamDecoder
  36. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  37. def firstAfter(f: (A) ⇒ Boolean): decode.StreamDecoder[A]

    Permalink

    Equivalent to dropWhile(f).take(1) - returns a stream of (at most) one element, consisting of the first output for which f tests false.

    Equivalent to dropWhile(f).take(1) - returns a stream of (at most) one element, consisting of the first output for which f tests false.

    Definition Classes
    StreamDecoder
  38. final def flatMap[B](f: (A) ⇒ decode.StreamDecoder[B]): decode.StreamDecoder[B]

    Permalink

    Monadic bind for this StreamDecoder.

    Monadic bind for this StreamDecoder. Runs a stream decoder for each A produced by this StreamDecoder, then concatenates all the resulting streams of results. This is the same 'idea' as List.flatMap.

    Definition Classes
    StreamDecoder
  39. final def flatMapS[B](f: (A) ⇒ Stream[Cursor, B]): decode.StreamDecoder[B]

    Permalink

    Like flatMap, but takes a function that produces a Stream[Cursor,B].

    Like flatMap, but takes a function that produces a Stream[Cursor,B].

    Definition Classes
    StreamDecoder
  40. def formatted(fmtstr: String): String

    Permalink
    Implicit information
    This member is added by an implicit conversion from StreamCodec[A] to StringFormat[StreamCodec[A]] performed by method StringFormat in scala.Predef.
    Definition Classes
    StringFormat
    Annotations
    @inline()
  41. def fuse[OO >: A](implicit ev: =:=[OO, A]): StreamCodec[OO]

    Permalink

    Promote to a StreamCodec[O] given evidence that I and O are equal.

    Promote to a StreamCodec[O] given evidence that I and O are equal.

    Definition Classes
    StreamGenCodec
  42. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  43. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  44. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  45. def isolate(numberOfBits: Long): decode.StreamDecoder[A]

    Permalink

    Alias for decode.isolate(numberOfBits)(this).

    Alias for decode.isolate(numberOfBits)(this).

    Definition Classes
    StreamDecoder
  46. def isolateBytes(numberOfBytes: Long): decode.StreamDecoder[A]

    Permalink

    Alias for decode.isolateBytes(numberOfBytes)(this).

    Alias for decode.isolateBytes(numberOfBytes)(this).

    Definition Classes
    StreamDecoder
  47. def many: StreamCodec[A]

    Permalink

    Run this StreamDecoder zero or more times until the input is exhausted.

    Run this StreamDecoder zero or more times until the input is exhausted.

    Definition Classes
    StreamCodecStreamGenCodecStreamDecoderStreamEncoder
  48. def many1: decode.StreamDecoder[A]

    Permalink

    Run this StreamDecoder one or more times until the input is exhausted.

    Run this StreamDecoder one or more times until the input is exhausted.

    Definition Classes
    StreamDecoder
  49. final def map[B](f: (A) ⇒ B): decode.StreamDecoder[B]

    Permalink

    Transform the output of this StreamDecoder using the function f.

    Transform the output of this StreamDecoder using the function f.

    Definition Classes
    StreamDecoder
  50. final def mapEither[B](f: (A) ⇒ Either[Err, B]): decode.StreamDecoder[B]

    Permalink

    Transform the output of this StreamDecoder, converting left values to decoding failures.

    Transform the output of this StreamDecoder, converting left values to decoding failures.

    Definition Classes
    StreamDecoder
  51. def narrow[B](f: (A) ⇒ Attempt[B], g: (B) ⇒ A): StreamCodec[B]

    Permalink
    Implicit information
    This member is added by an implicit conversion from StreamCodec[A] to TransformSyntax[StreamCodec, A] performed by method TransformSyntax in scodec. This conversion will take place only if an implicit value of type Transform[StreamCodec] is in scope.
    Definition Classes
    TransformSyntax
  52. def narrowc[B](f: (A) ⇒ Attempt[B])(g: (B) ⇒ A): StreamCodec[B]

    Permalink
    Implicit information
    This member is added by an implicit conversion from StreamCodec[A] to TransformSyntax[StreamCodec, A] performed by method TransformSyntax in scodec. This conversion will take place only if an implicit value of type Transform[StreamCodec] is in scope.
    Definition Classes
    TransformSyntax
  53. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  54. def nonEmpty(errIfEmpty: Err): decode.StreamDecoder[A]

    Permalink

    Raises a decoding error if the given decoder emits no results, otherwise runs s as normal.

    Raises a decoding error if the given decoder emits no results, otherwise runs s as normal.

    Definition Classes
    StreamDecoder
  55. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  56. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  57. final def or[A2 >: A](d: decode.StreamDecoder[A2]): decode.StreamDecoder[A2]

    Permalink

    Alias for scodec.stream.decode.or(this,d).

    Alias for scodec.stream.decode.or(this,d). Runs this, then runs d if this emits no elements. Example: tryOnce(codecs.int32).or(once(codecs.uint32)). This function does no backtracking of its own; any desired backtracking should be handled by this.

    Definition Classes
    StreamDecoder
  58. def or(other: encode.StreamEncoder[A]): encode.StreamEncoder[A]

    Permalink
    Definition Classes
    StreamEncoder
  59. def peek: decode.StreamDecoder[A]

    Permalink

    Alias for scodec.stream.decode.peek(this).

    Alias for scodec.stream.decode.peek(this).

    Definition Classes
    StreamDecoder
  60. val self: StreamCodec[A]

    Permalink
    Implicit information
    This member is added by an implicit conversion from StreamCodec[A] to TransformSyntax[StreamCodec, A] performed by method TransformSyntax in scodec. This conversion will take place only if an implicit value of type Transform[StreamCodec] is in scope.
    Definition Classes
    TransformSyntax
  61. def sepBy[B](implicit B: Lazy[Decoder[B]]): decode.StreamDecoder[A]

    Permalink

    Alternate between decoding A values using this StreamDecoder, and decoding B values which are ignored.

    Alternate between decoding A values using this StreamDecoder, and decoding B values which are ignored.

    Definition Classes
    StreamDecoder
  62. final def strict: Decoder[Vector[A]]

    Permalink

    Create a strict (i.e., non-stream) decoder.

    Create a strict (i.e., non-stream) decoder.

    Definition Classes
    StreamDecoder
  63. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  64. def take(n: Long): StreamCodec[A]

    Permalink

    Decode at most n values using this StreamDecoder.

    Decode at most n values using this StreamDecoder.

    Definition Classes
    StreamCodecStreamGenCodecStreamDecoderStreamEncoder
  65. def takeWhile(f: (A) ⇒ Boolean): decode.StreamDecoder[A]

    Permalink

    Decode values as long as the predicate tests true.

    Decode values as long as the predicate tests true.

    Definition Classes
    StreamDecoder
  66. final def through[B](p: Pipe[Pure, A, B]): decode.StreamDecoder[B]

    Permalink

    Transform the output of this StreamDecoder using the given single-input stream transducer.

    Transform the output of this StreamDecoder using the given single-input stream transducer.

    Definition Classes
    StreamDecoder
  67. final def through2[B, C](d: decode.StreamDecoder[B])(t: Pipe2[Pure, A, B, C]): decode.StreamDecoder[C]

    Permalink

    Combine the output of this StreamDecoder with another streaming decoder, using the given binary stream transducer.

    Combine the output of this StreamDecoder with another streaming decoder, using the given binary stream transducer. Note that both d and this will operate on the same input BitVector, so this combinator is more useful for expressing alternation between two decoders.

    Definition Classes
    StreamDecoder
  68. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  69. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  70. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  71. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  72. def widen[B](f: (A) ⇒ B, g: (B) ⇒ Attempt[A]): StreamCodec[B]

    Permalink
    Implicit information
    This member is added by an implicit conversion from StreamCodec[A] to TransformSyntax[StreamCodec, A] performed by method TransformSyntax in scodec. This conversion will take place only if an implicit value of type Transform[StreamCodec] is in scope.
    Definition Classes
    TransformSyntax
  73. def widenOpt[B](f: (A) ⇒ B, g: (B) ⇒ Option[A]): StreamCodec[B]

    Permalink
    Implicit information
    This member is added by an implicit conversion from StreamCodec[A] to TransformSyntax[StreamCodec, A] performed by method TransformSyntax in scodec. This conversion will take place only if an implicit value of type Transform[StreamCodec] is in scope.
    Definition Classes
    TransformSyntax
  74. def widenOptc[B](f: (A) ⇒ B)(g: (B) ⇒ Option[A]): StreamCodec[B]

    Permalink
    Implicit information
    This member is added by an implicit conversion from StreamCodec[A] to TransformSyntax[StreamCodec, A] performed by method TransformSyntax in scodec. This conversion will take place only if an implicit value of type Transform[StreamCodec] is in scope.
    Definition Classes
    TransformSyntax
  75. def widenc[B](f: (A) ⇒ B)(g: (B) ⇒ Attempt[A]): StreamCodec[B]

    Permalink
    Implicit information
    This member is added by an implicit conversion from StreamCodec[A] to TransformSyntax[StreamCodec, A] performed by method TransformSyntax in scodec. This conversion will take place only if an implicit value of type Transform[StreamCodec] is in scope.
    Definition Classes
    TransformSyntax
  76. def withFilter(f: (A) ⇒ Boolean): decode.StreamDecoder[A]

    Permalink

    Skip any decoded values for which the predicate tests false.

    Skip any decoded values for which the predicate tests false.

    Definition Classes
    StreamDecoder
  77. def xmap[B](f: (A) ⇒ B, g: (B) ⇒ A): StreamCodec[B]

    Permalink
    Implicit information
    This member is added by an implicit conversion from StreamCodec[A] to TransformSyntax[StreamCodec, A] performed by method TransformSyntax in scodec. This conversion will take place only if an implicit value of type Transform[StreamCodec] is in scope.
    Definition Classes
    TransformSyntax
  78. final def xmapc[B](f: (A) ⇒ B)(g: (B) ⇒ A): encode.StreamEncoder[B]

    Permalink

    Transform the input type of this StreamEncoder.

    Transform the input type of this StreamEncoder.

    Definition Classes
    StreamEncoder
  79. final def |[A2 >: A](d: decode.StreamDecoder[A2]): decode.StreamDecoder[A2]

    Permalink

    Operator alias for this.or(d).

    Operator alias for this.or(d).

    Definition Classes
    StreamDecoder
  80. def [B](y: B): (StreamCodec[A], B)

    Permalink
    Implicit information
    This member is added by an implicit conversion from StreamCodec[A] to ArrowAssoc[StreamCodec[A]] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc

Shadowed Implicit Value Members

  1. def xmapc[B](f: (A) ⇒ B)(g: (B) ⇒ A): StreamCodec[B]

    Permalink
    Implicit information
    This member is added by an implicit conversion from StreamCodec[A] to TransformSyntax[StreamCodec, A] performed by method TransformSyntax in scodec. This conversion will take place only if an implicit value of type Transform[StreamCodec] is in scope.
    Shadowing
    This implicitly inherited member is shadowed by one or more members in this class.
    To access this member you can use a type ascription:
    (streamCodec: TransformSyntax[StreamCodec, A]).xmapc(f)(g)
    Definition Classes
    TransformSyntax

Deprecated Value Members

  1. def pxmap[B](f: (A) ⇒ B, g: (B) ⇒ Option[A]): StreamCodec[B]

    Permalink
    Implicit information
    This member is added by an implicit conversion from StreamCodec[A] to TransformSyntax[StreamCodec, A] performed by method TransformSyntax in scodec. This conversion will take place only if an implicit value of type Transform[StreamCodec] is in scope.
    Definition Classes
    TransformSyntax
    Annotations
    @deprecated
    Deprecated

    (Since version 1.7.0) Use widenOpt instead

Inherited from StreamGenCodec[A, A]

Inherited from decode.StreamDecoder[A]

Inherited from encode.StreamEncoder[A]

Inherited from AnyRef

Inherited from Any

Inherited by implicit conversion TransformSyntax from StreamCodec[A] to TransformSyntax[StreamCodec, A]

Inherited by implicit conversion any2stringadd from StreamCodec[A] to any2stringadd[StreamCodec[A]]

Inherited by implicit conversion StringFormat from StreamCodec[A] to StringFormat[StreamCodec[A]]

Inherited by implicit conversion Ensuring from StreamCodec[A] to Ensuring[StreamCodec[A]]

Inherited by implicit conversion ArrowAssoc from StreamCodec[A] to ArrowAssoc[StreamCodec[A]]

Ungrouped