tobin
v0.1.17
Published
Library for binary conversion
Downloads
20
Maintainers
Readme
:construction: Please, wait for release
If you need in stability, please wait for release before use. API may be change till release.
About
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)
Installation
:cat2: with yarn:yarn add tobin
:wrench: with npm:npm i tobin
Repo and issues
:floppy_disk: repo: https://github.com/jkulvich/tobin
:speech_balloon: issues: https://github.com/jkulvich/tobin/issues
Supported types
- [x] Byte
- [x] SByte
- [x] Int16
- [x] UInt16
- [x] Int32
- [x] UInt32
- [ ] Int64 // ES2020 only with BigInt
- [ ] UInt64 // ES2020 only with BigInt
- [ ] Float
- [ ] Double
- [x] Bool
- [ ] String
- [x] String // Null Terminated String (default)
- [x] ShortString // Short String (255 bytes max)
- [ ] FixedString // String with fixed size. Null Terminated if less than size
Examples
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"