CborArrayEncoderStream
import { CborArrayEncoderStream } from "jsr:@ende/cbor";class
class CborArrayEncoderStream implements TransformStream<CborStreamInput, Uint8Array>A TransformStream that encodes a
ReadableStream
Example: Usage
import { assert, assertEquals } from "@ende/assert";
import {
CborArrayDecodedStream,
CborArrayEncoderStream,
CborSequenceDecoderStream,
} from "@ende/cbor";
const rawMessage = ["a".repeat(100), "b".repeat(100), "c".repeat(100)];
for await (
const value of ReadableStream.from(rawMessage)
.pipeThrough(new CborArrayEncoderStream())
.pipeThrough(new CborSequenceDecoderStream())
) {
assert(value instanceof CborArrayDecodedStream);
let i = 0;
for await (const text of value) {
assert(typeof text === "string");
assertEquals(text, rawMessage[i++]);
}
}
Constructors
constructor
new CborArrayEncoderStream()Constructs a new instance.
Static methods
from
static from(asyncIterable: AsyncIterable<CborStreamInput> | Iterable<CborStreamInput>): CborArrayEncoderStreamCreates a CborArrayEncoderStream instance from an iterable of CborStreamInput chunks.
asyncIterable: AsyncIterable<CborStreamInput> | Iterable<CborStreamInput>The value to encode of type AsyncIterable
or Iterable .
Returns
A CborArrayEncoderStream instance of the encoded data.
Example: Usage
import { assert, assertEquals } from "@ende/assert";
import {
CborArrayDecodedStream,
CborArrayEncoderStream,
CborSequenceDecoderStream,
} from "@ende/cbor";
const rawMessage = ["a".repeat(100), "b".repeat(100), "c".repeat(100)];
for await (
const value of CborArrayEncoderStream.from(rawMessage)
.readable
.pipeThrough(new CborSequenceDecoderStream())
) {
assert(value instanceof CborArrayDecodedStream);
let i = 0;
for await (const text of value) {
assert(typeof text === "string");
assertEquals(text, rawMessage[i++]);
}
}
Methods
readable
get readable(): ReadableStream<Uint8Array>The ReadableStream
Returns
A ReadableStream
Example: Usage
import { assert, assertEquals } from "@ende/assert";
import {
CborArrayDecodedStream,
CborArrayEncoderStream,
CborSequenceDecoderStream,
} from "@ende/cbor";
const rawMessage = ["a".repeat(100), "b".repeat(100), "c".repeat(100)];
for await (
const value of ReadableStream.from(rawMessage)
.pipeThrough(new CborArrayEncoderStream())
.pipeThrough(new CborSequenceDecoderStream())
) {
assert(value instanceof CborArrayDecodedStream);
let i = 0;
for await (const text of value) {
assert(typeof text === "string");
assertEquals(text, rawMessage[i++]);
}
}
writable
get writable(): WritableStream<CborStreamInput>The WritableStream
Returns
A WritableStream
Example: Usage
import { assert, assertEquals } from "@ende/assert";
import {
CborArrayDecodedStream,
CborArrayEncoderStream,
CborSequenceDecoderStream,
} from "@ende/cbor";
const rawMessage = ["a".repeat(100), "b".repeat(100), "c".repeat(100)];
for await (
const value of ReadableStream.from(rawMessage)
.pipeThrough(new CborArrayEncoderStream())
.pipeThrough(new CborSequenceDecoderStream())
) {
assert(value instanceof CborArrayDecodedStream);
let i = 0;
for await (const text of value) {
assert(typeof text === "string");
assertEquals(text, rawMessage[i++]);
}
}