UNPKG

@yubing744/rooch-sdk

Version:
37 lines (36 loc) 1.12 kB
import { BinaryDeserializer } from "../serde/binaryDeserializer"; const _BcsDeserializer = class extends BinaryDeserializer { deserializeUleb128AsU32() { let value = 0; for (let shift = 0; shift < 32; shift += 7) { const x = this.deserializeU8(); const digit = x & 127; value = value | digit << shift; if (value < 0 || value > _BcsDeserializer.MAX_UINT_32) { throw new Error("Overflow while parsing uleb128-encoded uint32 value"); } if (digit == x) { if (shift > 0 && digit == 0) { throw new Error("Invalid uleb128 number (unexpected zero digit)"); } return value; } } throw new Error("Overflow while parsing uleb128-encoded uint32 value"); } deserializeLen() { return this.deserializeUleb128AsU32(); } deserializeVariantIndex() { return this.deserializeUleb128AsU32(); } checkThatKeySlicesAreIncreasing(_key1, _key2) { return; } }; let BcsDeserializer = _BcsDeserializer; BcsDeserializer.MAX_UINT_32 = 2 ** 32 - 1; export { BcsDeserializer }; //# sourceMappingURL=bcsDeserializer.js.map