@pixi-spine/base
Version:
Base of pixi-spine integration, common files for spine runtimes of different versions
1 lines • 5.97 kB
Source Map (JSON)
{"version":3,"file":"BinaryInput.mjs","sources":["../../src/core/BinaryInput.ts"],"sourcesContent":["/**\n * @public\n */\nexport class BinaryInput {\n constructor(data: Uint8Array, public strings = new Array<string>(), private index: number = 0, private buffer = new DataView(data.buffer)) {}\n\n readByte(): number {\n return this.buffer.getInt8(this.index++);\n }\n\n readUnsignedByte(): number {\n return this.buffer.getUint8(this.index++);\n }\n\n readShort(): number {\n const value = this.buffer.getInt16(this.index);\n\n this.index += 2;\n\n return value;\n }\n\n readInt32(): number {\n const value = this.buffer.getInt32(this.index);\n\n this.index += 4;\n\n return value;\n }\n\n readInt(optimizePositive: boolean) {\n let b = this.readByte();\n let result = b & 0x7f;\n\n if ((b & 0x80) != 0) {\n b = this.readByte();\n result |= (b & 0x7f) << 7;\n if ((b & 0x80) != 0) {\n b = this.readByte();\n result |= (b & 0x7f) << 14;\n if ((b & 0x80) != 0) {\n b = this.readByte();\n result |= (b & 0x7f) << 21;\n if ((b & 0x80) != 0) {\n b = this.readByte();\n result |= (b & 0x7f) << 28;\n }\n }\n }\n }\n\n return optimizePositive ? result : (result >>> 1) ^ -(result & 1);\n }\n\n readStringRef(): string | null {\n const index = this.readInt(true);\n\n return index == 0 ? null : this.strings[index - 1];\n }\n\n readString(): string | null {\n let byteCount = this.readInt(true);\n\n switch (byteCount) {\n case 0:\n return null;\n case 1:\n return '';\n }\n byteCount--;\n let chars = '';\n\n for (let i = 0; i < byteCount; ) {\n const b = this.readUnsignedByte();\n\n switch (b >> 4) {\n case 12:\n case 13:\n chars += String.fromCharCode(((b & 0x1f) << 6) | (this.readByte() & 0x3f));\n i += 2;\n break;\n case 14:\n chars += String.fromCharCode(((b & 0x0f) << 12) | ((this.readByte() & 0x3f) << 6) | (this.readByte() & 0x3f));\n i += 3;\n break;\n default:\n chars += String.fromCharCode(b);\n i++;\n }\n }\n\n return chars;\n }\n\n readFloat(): number {\n const value = this.buffer.getFloat32(this.index);\n\n this.index += 4;\n\n return value;\n }\n\n readBoolean(): boolean {\n return this.readByte() != 0;\n }\n}\n"],"names":[],"mappings":"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"}