| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 | "use strict";Object.defineProperty(exports, "__esModule", { value: true });exports.BufferReader = void 0;const emptyBuffer = Buffer.allocUnsafe(0);class BufferReader {    constructor(offset = 0) {        this.offset = offset;        this.buffer = emptyBuffer;        // TODO(bmc): support non-utf8 encoding?        this.encoding = 'utf-8';    }    setBuffer(offset, buffer) {        this.offset = offset;        this.buffer = buffer;    }    int16() {        const result = this.buffer.readInt16BE(this.offset);        this.offset += 2;        return result;    }    byte() {        const result = this.buffer[this.offset];        this.offset++;        return result;    }    int32() {        const result = this.buffer.readInt32BE(this.offset);        this.offset += 4;        return result;    }    string(length) {        const result = this.buffer.toString(this.encoding, this.offset, this.offset + length);        this.offset += length;        return result;    }    cstring() {        const start = this.offset;        let end = start;        while (this.buffer[end++] !== 0) { }        this.offset = end;        return this.buffer.toString(this.encoding, start, end - 1);    }    bytes(length) {        const result = this.buffer.slice(this.offset, this.offset + length);        this.offset += length;        return result;    }}exports.BufferReader = BufferReader;//# sourceMappingURL=buffer-reader.js.map
 |