UNPKG

bigfloat

Version:

Fast arbitrary precision math library for computational geometry.

52 lines (51 loc) 2.22 kB
import { BigFloatBase } from './BigFloatBase'; export declare class BigFloat32 implements BigFloatBase<BigFloat32> { constructor(value?: BigFloat32 | number | string, base?: number); clone(): BigFloat32; setZero(): this; setValue(other: BigFloat32 | number | string, base?: number): this; private setBig; /** Set value from a floating point number (probably IEEE 754 double). */ private setNumber; private parseFraction; private setString; /** Trim zero limbs from most significant end. */ private trimMost; /** Trim zero limbs from least significant end. */ private trimLeast; /** Multiply by an integer and write output limbs to another list. */ private mulInt; private mulBig; /** Multiply and return product in a new BigFloat32. */ mul(multiplier: number | BigFloat32, product?: BigFloat32): BigFloat32; absDeltaFrom(other: number | BigFloat32): number; cmp: (other: number | BigFloat32) => number; isZero(): boolean; getSign(): 0 | 1 | -1; /** Return an arbitrary number with sign matching the result of this - other. */ deltaFrom(other: number | BigFloat32): number; private addBig; private subBig; private addSub; /** Add and return sum in a new BigFloat32. */ add(addend: number | BigFloat32, sum?: BigFloat32): BigFloat32; /** Subtract and return difference in a new BigFloat32. */ sub(subtrahend: number | BigFloat32, difference?: BigFloat32): BigFloat32; /** Round towards zero, to given number of base 2^32 fractional digits. */ truncate(fractionLimbCount: number): this; round(decimalCount: number): this; /** Divide by integer, replacing current value by quotient. Return integer remainder. */ private divInt; private fractionToString; getExpansion(output: number[]): number; valueOf(): number; /** Convert to string in any even base supported by Number.toString. * @return String in lower case. */ toString(base?: number): string; private sign; /** List of digits in base 2^32, least significant first. */ private limbList; /** Number of limbs belonging to fractional part. */ private fractionLen; private len; }