@vicimpa/data-buffer
TypeScript icon, indicating that this package has built-in type declarations

0.0.6 • Public • Published

Описание и документация для библиотеки @vicimpa/data-buffer

@vicimpa/data-buffer - это TypeScript библиотека для работы с буферами данных. Она предоставляет удобные методы для чтения и записи различных типов данных в буфер.

Конечно, давайте добавим примеры кода для каждого метода класса DataBuffer.

Установка

npm install @vicimpa/data-buffer

Использование

import { DataBuffer } from "@vicimpa/data-buffer";

const buffer = new DataBuffer();
buffer.writeint32(42);
buffer.start();
const value = buffer.readint32();
console.log(value); // 42

Эти примеры помогут вам понять, как использовать методы класса DataBuffer для работы с буферами данных.

DataBuffer

Класс DataBuffer предоставляет методы для работы с буфером данных.

Свойства
  • static BUFFER_SIZE: number - Размер буфера по умолчанию (1 МБ).
  • byteLength: number - Возвращает текущую длину буфера в байтах.
  • buffer: ArrayBuffer - Возвращает текущий буфер данных.
  • cursor: number - Текущая позиция курсора в буфере.
Методы
  • constructor(data: number | ArrayBuffer = 0) - Конструктор. Инициализирует буфер с заданным размером или данными.

    • data: number | ArrayBuffer - Размер буфера в байтах или начальные данные для буфера.
  • start() - Устанавливает курсор в начало буфера.

  • reset() - Сбрасывает буфер и устанавливает курсор в начало.

  • read(c?: number, offset?: number): ArrayBuffer - Читает данные из буфера.

    • c?: number - Начальная позиция для чтения. Если не указана, используется текущая позиция курсора.
    • offset?: number - Количество байтов для чтения. Если не указано, читается до конца буфера.
  • readVarint(): number - Читает Varint из буфера.

  • readLEB128(): bigint - Читает LEB128 из буфера.

  • writeLEB128(value: bigint) - Записывает LEB128 в буфер.

    • value: bigint - Значение для записи.
  • writeVarint(value: number) - Записывает Varint в буфер.

    • value: number - Значение для записи.
  • readboolean(c?: number, m?: number): boolean - Читает boolean из буфера.

    • c?: number - Начальная позиция для чтения. Если не указана, используется текущая позиция курсора.
    • m?: number - Количество байтов для чтения. По умолчанию 1.
  • readint8(c?: number, m?: number): number - Читает 8-битное целое число из буфера.

    • c?: number - Начальная позиция для чтения. Если не указана, используется текущая позиция курсора.
    • m?: number - Количество байтов для чтения. По умолчанию 1.
  • readuint8(c?: number, m?: number): number - Читает 8-битное беззнаковое целое число из буфера.

    • c?: number - Начальная позиция для чтения. Если не указана, используется текущая позиция курсора.
    • m?: number - Количество байтов для чтения. По умолчанию 1.
  • readint16(c?: number, m?: number): number - Читает 16-битное целое число из буфера.

    • c?: number - Начальная позиция для чтения. Если не указана, используется текущая позиция курсора.
    • m?: number - Количество байтов для чтения. По умолчанию 2.
  • readuint16(c?: number, m?: number): number - Читает 16-битное беззнаковое целое число из буфера.

    • c?: number - Начальная позиция для чтения. Если не указана, используется текущая позиция курсора.
    • m?: number - Количество байтов для чтения. По умолчанию 2.
  • readint32(c?: number, m?: number): number - Читает 32-битное целое число из буфера.

    • c?: number - Начальная позиция для чтения. Если не указана, используется текущая позиция курсора.
    • m?: number - Количество байтов для чтения. По умолчанию 4.
  • readuint32(c?: number, m?: number): number - Читает 32-битное беззнаковое целое число из буфера.

    • c?: number - Начальная позиция для чтения. Если не указана, используется текущая позиция курсора.
    • m?: number - Количество байтов для чтения. По умолчанию 4.
  • readfloat32(c?: number, m?: number): number - Читает 32-битное число с плавающей запятой из буфера.

    • c?: number - Начальная позиция для чтения. Если не указана, используется текущая позиция курсора.
    • m?: number - Количество байтов для чтения. По умолчанию 4.
  • readfloat64(c?: number, m?: number): number - Читает 64-битное число с плавающей запятой из буфера.

    • c?: number - Начальная позиция для чтения. Если не указана, используется текущая позиция курсора.
    • m?: number - Количество байтов для чтения. По умолчанию 8.
  • readbigint64(c?: number, m?: number): bigint - Читает 64-битное целое число из буфера.

    • c?: number - Начальная позиция для чтения. Если не указана, используется текущая позиция курсора.
    • m?: number - Количество байтов для чтения. По умолчанию 8.
  • readbiguint64(c?: number, m?: number): bigint - Читает 64-битное беззнаковое целое число из буфера.

    • c?: number - Начальная позиция для чтения. Если не указана, используется текущая позиция курсора.
    • m?: number - Количество байтов для чтения. По умолчанию 8.
  • readstring(c?: number): string - Читает строку из буфера.

    • c?: number - Начальная позиция для чтения. Если не указана, используется текущая позиция курсора.
  • write(value: ArrayBuffer | Uint8Array, c?: number) - Записывает данные в буфер.

    • value: ArrayBuffer | Uint8Array - Данные для записи.
    • c?: number - Начальная позиция для записи. Если не указана, используется текущая позиция курсора.
  • writeboolean(value: boolean, c?: number, m?: number) - Записывает boolean в буфер.

    • value: boolean - Значение для записи.
    • c?: number - Начальная позиция для записи. Если не указана, используется текущая позиция курсора.
    • m?: number - Количество байтов для записи. По умолчанию 1.
  • writeint8(value: number, c?: number, m?: number) - Записывает 8-битное целое число в буфер.

    • value: number - Значение для записи.
    • c?: number - Начальная позиция для записи. Если не указана, используется текущая позиция курсора.
    • m?: number - Количество байтов для записи. По умолчанию 1.
  • writeuint8(value: number, c?: number, m?: number) - Записывает 8-битное беззнаковое целое число в буфер.

    • value: number - Значение для записи.
    • c?: number - Начальная позиция для записи. Если не указана, используется текущая позиция курсора.
    • m?: number - Количество байтов для записи. По умолчанию 1.
  • writeint16(value: number, c?: number, m?: number) - Записывает 16-битное целое число в буфер.

    • value: number - Значение для записи.
    • c?: number - Начальная позиция для записи. Если не указана, используется текущая позиция курсора.
    • m?: number - Количество байтов для записи. По умолчанию 2.
  • writeuint16(value: number, c?: number, m?: number) - Записывает 16-битное беззнаковое целое число в буфер.

    • value: number - Значение для записи.
    • c?: number - Начальная позиция для записи. Если не указана, используется текущая позиция курсора.
    • m?: number - Количество байтов для записи. По умолчанию 2.
  • writeint32(value: number, c?: number, m?: number) - Записывает 32-битное целое число в буфер.

    • value: number - Значение для записи.
    • c?: number - Начальная позиция для записи. Если не указана, используется текущая позиция курсора.
    • m?: number - Количество байтов для записи. По умолчанию 4.
  • writeuint32(value: number, c?: number, m?: number) - Записывает 32-битное беззнаковое целое число в буфер.

    • value: number - Значение для записи.
    • c?: number - Начальная позиция для записи. Если не указана, используется текущая позиция курсора.
    • m?: number - Количество байтов для записи. По умолчанию 4.
  • writefloat32(value: number, c?: number, m?: number) - Записывает 32-битное число с плавающей запятой в буфер.

    • value: number - Значение для записи.
    • c?: number - Начальная позиция для записи. Если не указана, используется текущая позиция курсора.
    • m?: number - Количество байтов для записи. По умолчанию 4.
  • writefloat64(value: number, c?: number, m?: number) - Записывает 64-битное число с плавающей запятой в буфер.

    • value: number - Значение для записи.
    • c?: number - Начальная позиция для записи. Если не указана, используется текущая позиция курсора.
    • m?: number - Количество байтов для записи. По умолчанию 8.
  • writebigint64(value: bigint, c?: number, m?: number) - Записывает 64-битное целое число в буфер.

    • value: bigint - Значение для записи.
    • c?: number - Начальная позиция для записи. Если не указана, используется текущая позиция курсора.
    • m?: number - Количество байтов для записи. По умолчанию 8.
  • writebiguint64(value: bigint, c?: number, m?: number) - Записывает 64-битное беззнаковое целое число в буфер.

    • value: bigint - Значение для записи.
    • c?: number - Начальная позиция для записи. Если не указана, используется текущая позиция курсора.
    • m?: number - Количество байтов для записи. По умолчанию 8.
  • writestring(value: string, c?: number) - Записывает строку в буфер.

    • value: string - Значение для записи.
    • c?: number - Начальная позиция для записи. Если не указана, используется текущая позиция курсора.

Заключение

Библиотека @vicimpa/data-buffer предоставляет мощные и удобные инструменты для работы с буферами данных в TypeScript. Она поддерживает чтение и запись различных типов данных, что делает её полезной для широкого спектра задач.

Package Sidebar

Install

npm i @vicimpa/data-buffer

Weekly Downloads

9

Version

0.0.6

License

GPL-3.0-only

Unpacked Size

57.9 kB

Total Files

5

Last publish

Collaborators

  • vicimpa