TypedNumbers
Super simple type-safe fixed-length integers for TypeScript/JavaScript
About •
Installation •
Usage •
Naming Scheme •
License
About
I've made this library while building a little Intel 8080 emulator in JavaScript.
I noticed the lack of typed numbers in JavaScript, and how useful they could be, and then made this idea into a whole library!
Installation
With npm:
$ npm install typed-numbers
With pnpm (recommended):
$ pnpm install typed-numbers
With yarn:
$ yarn add typed-numbers
or you can directly add it to your website via unpkg:
<script src="https://unpkg.com/typed-numbers"></script>
Usage
If this project gains more attention I'll add some documentation!
import { u8, u16 } from 'typed-numbers';
function getFirstByte(num: u16): u8 {
return u8(num & 0xf);
}
getFirstByte(127);
getFirstByte(u8(127));
getFirstByte(u16(127));
const num = u8(255);
num = u8(num + 1);
console.log(num);
Naming scheme
The library uses the fixed-length integer naming scheme from Rust.
If you want to use another naming scheme just rename the types at import:
import { i8 as int8 } from 'typed-numbers';
or:
import { i8 as byte } from 'typed-numbers';
License
MIT License