winoteam / rescript-big

🎑 Zero-cost bindings to Big.js library.

Home Page:https://github.com/winoteam/rescript-big

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

rescript-big

Actions Status

Zero-cost bindings to Big.js library.

In this version only these methods are supported: toFixed, plus, minus, div, times, valueOf, round, eq, gt, gte, lt and lte

It also have some converters and shortcuts for converting an existing value or making a Big value, such as: fromFloator toFloat.

It's accompanied with an Operators module which override some operators like +., *., /. and -.

πŸ“¦ Installation

Run the following command:

$ yarn add rescript-big

Then add rescript-big to your bsconfig.json's dependencies:

 {
   "bs-dependencies": [
+    "rescript-big"
   ]
 }

πŸ’» Usage

open! Big.Operators

let a = 201.57512->Big.fromFloat
Js.log(a->Big.toFixed(2)) // 201.58

// Compiler error: 1. is a float, wanted Big.t
let c = a *. 1.

// OK
let b = 1.->Big.fromFloat
let c = a *. b
Js.log(Big.valueOf(c)) // 201.57512

πŸ•Ί Contribute

πŸš€ Want to hack on rescript-big? Follow the next instructions

  1. Fork this repository to your own GitHub account and then clone it to your local device
  2. Install dependencies using Yarn: yarn
  3. Ensure that the tests are passing using yarn test
  4. Send a pull request πŸ™Œ

Remember to add tests for your change if possible.

πŸ‘‹ Questions

If you have any questions, feel free to open an issue. Please check the Big.js docs before submitting an issue.

About

🎑 Zero-cost bindings to Big.js library.

https://github.com/winoteam/rescript-big

License:MIT License


Languages

Language:ReScript 90.0%Language:TypeScript 8.7%Language:JavaScript 1.3%