Skip to content

Latest commit

 

History

History
72 lines (58 loc) · 3.13 KB

README.ru.md

File metadata and controls

72 lines (58 loc) · 3.13 KB

CircleCI Master Version GitHub GitHub issues npm GitHub top language

🚧 Ожидайте релиз

Если вам важна стабильность и последовательность библиотеки, подождите релиза. Сейчас API может меняться.

О проекте

Это небольшая и легковесная библиотека для бинарной конвертации, написанная на TypeScript. Она позволяет конвертировать парсить и приводить к бинарному виду JavaScript значения.

Или она может быть использована как часть более крупной библиотеки сериализации (P.S. В разработке)

Установка

🐈 при помощи yarn:
yarn add tobin

🔧 при помощи npm:
npm i tobin

Репозиторий и обсуждения

💾 repo: https://github.com/jkulvich/tobin
💬 issues: https://github.com/jkulvich/tobin/issues

Поддерживаемые типы

  • Byte
  • SByte
  • Int16
  • UInt16
  • Int32
  • UInt32
  • Int64 // Только ES2020 с BigInt
  • UInt64 // Только ES2020 с BigInt
  • Float
  • Double
  • Bool
  • String
    • String // Строка завершающаяся null символом (стандартная)
    • ShortString // Короткая строка (максимум 255 байт)
    • FixedString // Строка фиксированного размера. Завершается null, если короче размера

Примеры

Формально:

tobin.(convert|parse)(S?Byte|U?Int16|U?Int32|U?Int64|Float|Double|Bool|(Short|Fixed)?String)
import tobin from "tobin"

tobin.convertInt32(500) // [0, 0, 1, 244]
tobin.convertInt32(-500) // [128, 0, 1, 244]
tobin.convertUInt16(65535) // [255, 255]
tobin.convertByte(128) // [128]
tobin.convertString("Hello") // [104, 101, 108, 108, 111, 0]
tobin.convertShortString("Hello") // [ 5, 104, 101, 108, 108, 111 ]

tobin.parseSByte(new Uint8Array([129])) // -1
tobin.parseString(new Uint8Array([104, 101, 108, 108, 111, 0])) // "Hello"
tobin.parseShortString(new Uint8Array([5, 104, 101, 108, 108, 111])) // "Hello"