Private
bufferPrivate
offsetPrivate
ensureProtected
serializeSerializes a string. UTF8 string is supported. Serializes the string's bytes length "l" first, and then serializes "l" bytes of the string content.
BCS layout for "string": string_length | string_content. string_length is the bytes length of the string that is uleb128 encoded. string_length is a u32 integer.
const serializer = new Serializer();
serializer.serializeStr("çå∞≠¢õß∂ƒ∫");
assert(serializer.getBytes() === new Uint8Array([24, 0xc3, 0xa7, 0xc3, 0xa5, 0xe2, 0x88, 0x9e,
0xe2, 0x89, 0xa0, 0xc2, 0xa2, 0xc3, 0xb5, 0xc3, 0x9f, 0xe2, 0x88, 0x82, 0xc6, 0x92, 0xe2, 0x88, 0xab]));
Serializes a uint16 number.
BCS layout for "uint16": Two bytes. Binary format in little-endian representation.
const serializer = new Serializer();
serializer.serializeU16(4660);
assert(serializer.getBytes() === new Uint8Array([0x34, 0x12]));
Serializes a uint32 number.
BCS layout for "uint32": Four bytes. Binary format in little-endian representation.
const serializer = new Serializer();
serializer.serializeU32(305419896);
assert(serializer.getBytes() === new Uint8Array([0x78, 0x56, 0x34, 0x12]));
Serializes a uint64 number.
BCS layout for "uint64": Eight bytes. Binary format in little-endian representation.
const serializer = new Serializer();
serializer.serializeU64(1311768467750121216);
assert(serializer.getBytes() === new Uint8Array([0x00, 0xEF, 0xCD, 0xAB, 0x78, 0x56, 0x34, 0x12]));
Private
serializeOptional
littleEndian: booleanGenerated using TypeDoc
Returns the buffered bytes