| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- import type { IReader, IReaderResettable } from './types';
- export declare class Reader implements IReader, IReaderResettable {
- uint8: Uint8Array;
- view: DataView;
- x: number;
- end: number;
- constructor(uint8?: Uint8Array, view?: DataView, x?: number, end?: number);
- reset(uint8: Uint8Array): void;
- size(): number;
- /**
- * Get current byte value without advancing the cursor.
- */
- peek(): number;
- /**
- * @deprecated Use peek() instead.
- */
- peak(): number;
- skip(length: number): void;
- buf(size?: number): Uint8Array;
- subarray(start?: number, end?: number): Uint8Array;
- /**
- * Creates a new {@link Reader} that references the same underlying memory
- * buffer. But with independent cursor and end.
- *
- * Preferred over {@link buf} since it also provides a DataView and is much
- * faster to allocate a new {@link Slice} than a new {@link Uint8Array}.
- *
- * @param start Start offset relative to the current cursor position.
- * @param end End offset relative to the current cursor position.
- * @returns A new {@link Reader} instance.
- */
- slice(start?: number, end?: number): Reader;
- /**
- * Similar to {@link slice} but also advances the cursor. Returns a new
- * {@link Reader} that references the same underlying memory buffer, starting
- * from the current cursor position.
- *
- * @param size Number of bytes to cut from the current position.
- * @returns A new {@link Reader} instance.
- */
- cut(size?: number): Reader;
- u8(): number;
- i8(): number;
- u16(): number;
- i16(): number;
- u32(): number;
- i32(): number;
- u64(): bigint;
- i64(): bigint;
- f32(): number;
- f64(): number;
- utf8(size: number): string;
- ascii(length: number): string;
- }
|