New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

as-bignum

Package Overview
Dependencies
Maintainers
1
Versions
34
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

as-bignum

128 and 256 bits integer and fixed point arithmetics for AssemblyScript. Also support checking overflow/underflow

  • 0.2.40
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
300
increased by13.21%
Maintainers
1
Weekly downloads
 
Created
Source

NPM registryBuild StatusNPM license

WebAssembly fixed length big numbers written on AssemblyScript

Status: Work in progress

Provide wide numeric types such as u128, u256, i128, i256 and fixed points and also its arithmetic operations.

Namespace safe contain equivalents with overflow/underflow traps.

All kind of types pretty useful for economical and cryptographic usages and provide deterministic behavior.

Install

yarn add as-bignum

or

npm i as-bignum

Usage via AssemblyScript

import { u128 } from "as-bignum/assembly";
// Before 0.20.x
// import { u128 } from "as-bignum";

declare function logF64(value: f64): void;
declare function logU128(hi: u64, lo: u64): void;

var a = u128.One;
var b = u128.from(-32); // same as u128.from<i32>(-32)
var c = new u128(0x1, -0xF);
var d = u128.from(0x0123456789ABCDEF); // same as u128.from<i64>(0x0123456789ABCDEF)
var e = u128.from('0x0123456789ABCDEF01234567');
var f = u128.fromString('11100010101100101', 2); // same as u128.from('0b11100010101100101')
var r = d / c + (b << 5) + e;

logF64(r.as<f64>());
logU128(r.hi, r.lo);

Usage via JavaScript/Typescript

TODO

List of types

  • u128 unsigned type (tested)
  • u256 unsigned type (very basic)
  • i128 signed type
  • i256 signed type

  • safe.u128 unsigned type (tested)

  • safe.u256 unsigned type

  • safe.i128 signed type

  • safe.i256 signed type


  • fp128<Q> generic fixed point signed type٭ (very basic for now)
  • fp256<Q> generic fixed point signed type٭

  • safe.fp128<Q> generic fixed point signed type٭
  • safe.fp256<Q> generic fixed point signed type٭

٭ typename Q is a type representing count of fractional bits

Keywords

FAQs

Package last updated on 23 Jun 2023

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc