If you need in stability, please wait for release before use. API may be change till release.
- ๐ท๐บ RUS - ะ ัััะบะฐั ะดะพะบัะผะตะฝัะฐัะธั
- ๐ฌ๐ง ENG - English documentation
This is small and lightweight library for binary conversion written on TypeScript. The library allows creating and parsing binary structures.
Or it can be used as a part of big binary serialization library.
(P.S. Coming soon)
๐ with yarn:
yarn add tobin
๐ง with 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 only with BigInt
- UInt64 // ES2020 only with BigInt
- Float
- Double
- Bool
- String
- String // Null Terminated String (default)
- ShortString // Short String (255 bytes max)
- FixedString // String with fixed size. Null Terminated if less than size
Formal:
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"