If you need in stability, please wait for release before use. API may be change till release.
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"