mini\Util\Math\Int\NativeInt final class

Documentation

Pure PHP arbitrary precision integer using decimal limbs (base 10^9)

Stores numbers as array of 9-digit chunks internally. Only converts to/from decimal string on I/O.

This is the fastest pure PHP implementation - used as fallback when GMP and bcmath extensions are not available.

Inheritance

Implements: mini\Util\Math\Int\IntValue Stringable

Constants (2)

Name Value
CHUNK 9
BASE 1000000000

Properties (2)

private readonly array $limbs

Little-endian: limbs[0] is least significant

private readonly bool $negative

Methods (37)

Documentation missing

Documentation missing

Create directly from limbs (internal use, avoids conversion)

Documentation missing

Documentation missing

Documentation missing

Documentation missing

Documentation missing

Documentation missing

Documentation missing

Documentation missing

Documentation missing

Documentation missing

Documentation missing

Documentation missing

Documentation missing

Documentation missing

Documentation missing

Documentation missing

Documentation missing

Documentation missing

Documentation missing

Documentation missing

Documentation missing

Documentation missing

Documentation missing

Documentation missing

Documentation missing

Fast multiplication by a single-limb value (< BASE)

Fast division by a single-limb value (< BASE)

Documentation missing

Documentation missing

Documentation missing

Documentation missing

Documentation missing

Documentation missing

Documentation missing

Source

src/Util/Math/Int/NativeInt.php:14-593