Hyperlinkv0.8.0-beta.28

Stream

Stream.encodeTextconsteffect/Stream.ts:9433
<E, R>(self: Stream<string, E, R>): Stream<Uint8Array, E, R>

Encodes a stream of strings into UTF-8 Uint8Array chunks.

Example (Encoding a stream of strings into UTF-8 Uint8Array chunks)

import { Console, Effect, Stream } from "effect"

const stream = Stream.make("Hello", " ", "World")
const program = Effect.gen(function*() {
  const encoded = Stream.encodeText(stream)
  const chunks = yield* Stream.runCollect(encoded)
  const bytes = chunks.map((chunk) => [...chunk])
  yield* Console.log(bytes)
})

Effect.runPromise(program)
// [[72, 101, 108, 108, 111], [32], [87, 111, 114, 108, 100]]
encoding
Source effect/Stream.ts:94335 lines
export const encodeText = <E, R>(self: Stream<string, E, R>): Stream<Uint8Array, E, R> =>
  suspend(() => {
    const encoder = new TextEncoder()
    return map(self, (chunk) => encoder.encode(chunk))
  })