CborTextEncoderStream
import { CborTextEncoderStream } from "jsr:@ende/cbor";class
class CborTextEncoderStream implements TransformStream<string, Uint8Array>A TransformStream that encodes a ReadableStream
Notice: Each chunk of the ReadableStream
Example: Usage
import { assert, assertEquals } from "@ende/assert";
import {
CborSequenceDecoderStream,
CborTextDecodedStream,
CborTextEncoderStream,
} from "@ende/cbor";
const rawMessage = "a".repeat(100);
for await (
const value of ReadableStream.from([rawMessage])
.pipeThrough(new CborTextEncoderStream())
.pipeThrough(new CborSequenceDecoderStream())
) {
assert(typeof value === "string" || value instanceof CborTextDecodedStream);
if (value instanceof CborTextDecodedStream) {
assertEquals((await Array.fromAsync(value)).join(""), rawMessage);
} else assertEquals(value, rawMessage);
}
Constructors
constructor
new CborTextEncoderStream()Constructs a new instance.
Static methods
from
static from(asyncIterable: AsyncIterable<string> | Iterable<string>): CborTextEncoderStreamCreates a CborTextEncoderStream instance from an iterable of string chunks.
asyncIterable: AsyncIterable<string> | Iterable<string>The value to encode of type AsyncIterable
or Iterable
Returns
A CborTextEncoderStream instance of the encoded data.
Example: Usage
import { assert, assertEquals } from "@ende/assert";
import {
CborSequenceDecoderStream,
CborTextDecodedStream,
CborTextEncoderStream,
} from "@ende/cbor";
const rawMessage = "a".repeat(100);
for await (
const value of CborTextEncoderStream.from([rawMessage])
.readable
.pipeThrough(new CborSequenceDecoderStream())
) {
assert(typeof value === "string" || value instanceof CborTextDecodedStream);
if (value instanceof CborTextDecodedStream) {
assertEquals((await Array.fromAsync(value)).join(""), rawMessage);
} else assertEquals(value, rawMessage);
}
Methods
readable
get readable(): ReadableStream<Uint8Array>The ReadableStream
Returns
A ReadableStream
Example: Usage
import { assert, assertEquals } from "@ende/assert";
import {
CborSequenceDecoderStream,
CborTextDecodedStream,
CborTextEncoderStream,
} from "@ende/cbor";
const rawMessage = "a".repeat(100);
for await (
const value of ReadableStream.from([rawMessage])
.pipeThrough(new CborTextEncoderStream())
.pipeThrough(new CborSequenceDecoderStream())
) {
assert(typeof value === "string" || value instanceof CborTextDecodedStream);
if (value instanceof CborTextDecodedStream) {
assertEquals((await Array.fromAsync(value)).join(""), rawMessage);
} else assertEquals(value, rawMessage);
}
writable
get writable(): WritableStream<string>The WritableStream
Returns
A WritableStream
Example: Usage
import { assert, assertEquals } from "@ende/assert";
import {
CborSequenceDecoderStream,
CborTextDecodedStream,
CborTextEncoderStream,
} from "@ende/cbor";
const rawMessage = "a".repeat(100);
for await (
const value of ReadableStream.from([rawMessage])
.pipeThrough(new CborTextEncoderStream())
.pipeThrough(new CborSequenceDecoderStream())
) {
assert(typeof value === "string" || value instanceof CborTextDecodedStream);
if (value instanceof CborTextDecodedStream) {
assertEquals((await Array.fromAsync(value)).join(""), rawMessage);
} else assertEquals(value, rawMessage);
}