Skip to content

@temporary-escape/mod-sdk / CborVisitor

Class: CborVisitor ​

Defined in: cbor.ts:550

Streaming cursor over a CBOR encoded buffer (guest side, no host calls).

Every as* method consumes exactly one CBOR item: it reads the current item and moves the cursor past it. Containers are entered with enterMap / enterArray and closed with leave. The get* methods are read-only peeks that do not move the cursor.

The numeric coercions mirror Engine::Cbor::Visitor / Adapter on the C++ side: asU8 reads a CBOR simple value, asU64/asI64 accept both integer major types, and asFloat/asDouble accept floats, integers and simple values.

Constructors ​

Constructor ​

ts
new CborVisitor(buffer: Uint8Array): CborVisitor;

Defined in: cbor.ts:551

Parameters ​

ParameterType
bufferUint8Array

Returns ​

CborVisitor

Methods ​

asAssetBlock() ​

ts
asAssetBlock(): AssetBlock | null;

Defined in: cbor.ts:1148

Returns ​

AssetBlock | null


asAssetBlockCategory() ​

ts
asAssetBlockCategory(): AssetBlockCategory | null;

Defined in: cbor.ts:1188

Returns ​

AssetBlockCategory | null


asAssetFaction() ​

ts
asAssetFaction(): AssetFaction | null;

Defined in: cbor.ts:1163

Returns ​

AssetFaction | null


asAssetImage() ​

ts
asAssetImage(): AssetImage | null;

Defined in: cbor.ts:1143

Returns ​

AssetImage | null


asAssetModel() ​

ts
asAssetModel(): AssetModel | null;

Defined in: cbor.ts:1153

Returns ​

AssetModel | null


asAssetPlanet() ​

ts
asAssetPlanet(): AssetPlanet | null;

Defined in: cbor.ts:1178

Returns ​

AssetPlanet | null


asAssetSectorType() ​

ts
asAssetSectorType(): AssetSectorType | null;

Defined in: cbor.ts:1173

Returns ​

AssetSectorType | null


asAssetShader() ​

ts
asAssetShader(): AssetShader | null;

Defined in: cbor.ts:1198

Returns ​

AssetShader | null


asAssetShipDesign() ​

ts
asAssetShipDesign(): AssetShipDesign | null;

Defined in: cbor.ts:1168

Returns ​

AssetShipDesign | null


asAssetSkybox() ​

ts
asAssetSkybox(): AssetSkybox | null;

Defined in: cbor.ts:1208

Returns ​

AssetSkybox | null


asAssetSound() ​

ts
asAssetSound(): AssetSound | null;

Defined in: cbor.ts:1193

Returns ​

AssetSound | null


asAssetSystemType() ​

ts
asAssetSystemType(): AssetSystemType | null;

Defined in: cbor.ts:1203

Returns ​

AssetSystemType | null


asAssetTexture() ​

ts
asAssetTexture(): AssetTexture | null;

Defined in: cbor.ts:1158

Returns ​

AssetTexture | null


asAssetTurret() ​

ts
asAssetTurret(): AssetTurret | null;

Defined in: cbor.ts:1183

Returns ​

AssetTurret | null


asBool() ​

ts
asBool(): bool;

Defined in: cbor.ts:780

Returns ​

bool


asBoolTypedArray() ​

ts
asBoolTypedArray(): StaticArray<number>;

Defined in: cbor.ts:987

Decodes tag 90 + a byte string of one-byte booleans.

Returns ​

StaticArray<number>


asBytes() ​

ts
asBytes(): Uint8Array;

Defined in: cbor.ts:816

Returns ​

Uint8Array


asDouble() ​

ts
asDouble(): number;

Defined in: cbor.ts:869

Returns ​

number


asF32TypedArray() ​

ts
asF32TypedArray(): StaticArray<number>;

Defined in: cbor.ts:950

Decodes tag 85 + a byte string of little-endian f32 values.

Returns ​

StaticArray<number>


asF64TypedArray() ​

ts
asF64TypedArray(): StaticArray<number>;

Defined in: cbor.ts:971

Decodes tag 86 + a byte string of little-endian f64 values.

Returns ​

StaticArray<number>


asFloat() ​

ts
asFloat(): number;

Defined in: cbor.ts:836

Returns ​

number


asI16() ​

ts
asI16(): number;

Defined in: cbor.ts:915

Reads an integer and narrows it to i16 (mirrors Cbor::Visitor::asI16).

Returns ​

number


asI32() ​

ts
asI32(): number;

Defined in: cbor.ts:927

Reads an integer and narrows it to i32 (mirrors Cbor::Visitor::asI32).

Returns ​

number


asI32TypedArray() ​

ts
asI32TypedArray(): StaticArray<number>;

Defined in: cbor.ts:955

Decodes tag 74 + a byte string of little-endian i32 values.

Returns ​

StaticArray<number>


asI64() ​

ts
asI64(): number;

Defined in: cbor.ts:740

Returns ​

number


asI8() ​

ts
asI8(): number;

Defined in: cbor.ts:903

Reads an integer and narrows it to i8 (mirrors Cbor::Visitor::asI8).

Returns ​

number


asMatrix3() ​

ts
asMatrix3(): Matrix3f;

Defined in: cbor.ts:1223

Decodes tag 90 + an array of three tag-85 columns.

Returns ​

Matrix3f


asMatrix4() ​

ts
asMatrix4(): Matrix4f;

Defined in: cbor.ts:1239

Decodes tag 91 + an array of four tag-85 columns.

Returns ​

Matrix4f


asNull() ​

ts
asNull(): void;

Defined in: cbor.ts:772

Consumes a CBOR null.

Returns ​

void


asQuaternion() ​

ts
asQuaternion(): Quaternion;

Defined in: cbor.ts:1214

Decodes tag 89 + a byte string of x, y, z, w floats.

Returns ​

Quaternion


asString() ​

ts
asString(): string;

Defined in: cbor.ts:797

Returns ​

string


asTimePoint() ​

ts
asTimePoint(): TimePoint;

Defined in: cbor.ts:1107

Reads epochTime (tag 1) or extendedTime (tag 1001).

Returns ​

TimePoint


asU16() ​

ts
asU16(): number;

Defined in: cbor.ts:909

Reads an integer and narrows it to u16 (mirrors Cbor::Visitor::asU16).

Returns ​

number


asU32() ​

ts
asU32(): number;

Defined in: cbor.ts:921

Reads an integer and narrows it to u32 (mirrors Cbor::Visitor::asU32).

Returns ​

number


asU64() ​

ts
asU64(): number;

Defined in: cbor.ts:732

Returns ​

number


asU8() ​

ts
asU8(): number;

Defined in: cbor.ts:713

Returns ​

number


asVector2b() ​

ts
asVector2b(): Vector2b;

Defined in: cbor.ts:1069

Returns ​

Vector2b


asVector2d() ​

ts
asVector2d(): Vector2d;

Defined in: cbor.ts:1045

Returns ​

Vector2d


asVector2f() ​

ts
asVector2f(): Vector2f;

Defined in: cbor.ts:997

Returns ​

Vector2f


asVector2i() ​

ts
asVector2i(): Vector2i;

Defined in: cbor.ts:1021

Returns ​

Vector2i


asVector3b() ​

ts
asVector3b(): Vector3b;

Defined in: cbor.ts:1077

Returns ​

Vector3b


asVector3d() ​

ts
asVector3d(): Vector3d;

Defined in: cbor.ts:1053

Returns ​

Vector3d


asVector3f() ​

ts
asVector3f(): Vector3f;

Defined in: cbor.ts:1005

Returns ​

Vector3f


asVector3i() ​

ts
asVector3i(): Vector3i;

Defined in: cbor.ts:1029

Returns ​

Vector3i


asVector4b() ​

ts
asVector4b(): Vector4b;

Defined in: cbor.ts:1085

Returns ​

Vector4b


asVector4d() ​

ts
asVector4d(): Vector4d;

Defined in: cbor.ts:1061

Returns ​

Vector4d


asVector4f() ​

ts
asVector4f(): Vector4f;

Defined in: cbor.ts:1013

Returns ​

Vector4f


asVector4i() ​

ts
asVector4i(): Vector4i;

Defined in: cbor.ts:1037

Returns ​

Vector4i


enterArray() ​

ts
enterArray(): void;

Defined in: cbor.ts:675

Enters the current array. Must be paired with leave().

Returns ​

void


enterMap() ​

ts
enterMap(): void;

Defined in: cbor.ts:657

Enters the current map. Must be paired with leave().

Returns ​

void


expectTag() ​

ts
expectTag(tag: number): void;

Defined in: cbor.ts:642

Verifies the current tag and consumes it, leaving the cursor on the value.

Parameters ​

ParameterType
tagnumber

Returns ​

void


getArraySize() ​

ts
getArraySize(): number;

Defined in: cbor.ts:612

Number of items of the current array (definite length only).

Returns ​

number


getMapSize() ​

ts
getMapSize(): number;

Defined in: cbor.ts:594

Number of key/value pairs of the current map (definite length only).

Returns ​

number


getTag() ​

ts
getTag(): number;

Defined in: cbor.ts:630

The tag number of the current item (does not consume the tag).

Returns ​

number


getTaggedValueType() ​

ts
getTaggedValueType(): CborType;

Defined in: cbor.ts:937

The major type of the value following the current tag, without consuming either the tag or the value. Used to disambiguate tag 90 (bTypedArray vs f32Matrix3).

Returns ​

CborType


getType() ​

ts
getType(): CborType;

Defined in: cbor.ts:575

The major type of the item the cursor is currently pointing at.

Returns ​

CborType


isBool() ​

ts
isBool(): bool;

Defined in: cbor.ts:749

True when the current simple item is a boolean (false/true).

Returns ​

bool


isEnd() ​

ts
isEnd(): bool;

Defined in: cbor.ts:580

True when the current container has no more items.

Returns ​

bool


isFloat() ​

ts
isFloat(): bool;

Defined in: cbor.ts:758

True when the current simple item is a float (half/single/double).

Returns ​

bool


isNull() ​

ts
isNull(): bool;

Defined in: cbor.ts:767

True when the current item is CBOR null (simple value 22).

Returns ​

bool


leave() ​

ts
leave(): void;

Defined in: cbor.ts:693

Closes the container opened by the matching enterMap/enterArray.

Returns ​

void


fromRaw() ​

ts
static fromRaw(dataStart: number, length: number): CborVisitor;

Defined in: cbor.ts:566

Wraps a raw (dataStart, length) region of guest memory without copying. Used to decode a buffer the host allocated directly in the guest's linear memory (see the canonical-ABI helpers in ./abi). The caller owns the buffer and must keep it alive for the visitor's lifetime.

Parameters ​

ParameterType
dataStartnumber
lengthnumber

Returns ​

CborVisitor