# BigInt class

An arbitrarily large integer.

Implements
  - Comparable<BigInt>

## Constructors

BigInt.from(num value)
  Allocates a big integer from the provided `value` number.
  factory

## Properties

bitLength → int
  Returns the minimum number of bits required to store this big integer. [...]
  read-only
isEven → bool
  Whether this big integer is even.
  read-only
isNegative → bool
  Whether this number is negative.
  read-only
isOdd → bool
  Whether this big integer is odd.
  read-only
isValidInt → bool
  Whether this big integer can be represented as an `int` without losing precision. [...]
  read-only
sign → int
  Returns the sign of this big integer. [...]
  read-only
hashCode → int
  The hash code for this object. [...]
  read-only, inherited
runtimeType → Type
  A representation of the runtime type of the object.
  read-only, inherited

## Methods

abs() → BigInt
  Returns the absolute value of this integer. [...]
compareTo(BigInt other) → int
  Compares this to `other`. [...]
gcd(BigInt other) → BigInt
  Returns the greatest common divisor of this big integer and `other`. [...]
modInverse(BigInt modulus) → BigInt
  Returns the modular multiplicative inverse of this big integer modulo `modulus`. [...]
modPow(BigInt exponent, BigInt modulus) → BigInt
  Returns this integer to the power of `exponent` modulo `modulus`. [...]
pow(int exponent) → BigInt
  Returns `this` to the power of `exponent`. [...]
remainder(BigInt other) → BigInt
  Returns the remainder of the truncating division of `this` by `other`. [...]
toDouble() → double
  Returns this BigInt as a double. [...]
toInt() → int
  Returns this BigInt as an int. [...]
toRadixString(int radix) → String
  Converts this to a string representation in the given `radix`. [...]
toSigned(int width) → BigInt
  Returns the least significant `width` bits of this integer, extending the highest retained bit to the sign. This is the same as truncating the value to fit in `width` bits using an signed 2-s complement representation. The returned value has the same bit value in all positions higher than `width`. [...]
toString() → String
  Returns a String-representation of this integer. [...]
toUnsigned(int width) → BigInt
  Returns the least significant `width` bits of this big integer as a non-negative number (i.e. unsigned representation). The returned value has zeros in all bit positions higher than `width`. [...]
noSuchMethod(Invocation invocation) → dynamic
  Invoked when a non-existent method or property is accessed. [...]
  inherited

## Operators

operator %(BigInt other) → BigInt
  Euclidean modulo operator. [...]
operator &(BigInt other) → BigInt
  Bit-wise and operator. [...]
operator *(BigInt other) → BigInt
  Multiplication operator.
operator +(BigInt other) → BigInt
  Addition operator.
operator -(BigInt other) → BigInt
  Subtraction operator.
operator /(BigInt other) → double
  Division operator.
operator <(BigInt other) → bool
  Relational less than operator.
operator <<(int shiftAmount) → BigInt
  Shift the bits of this integer to the left by `shiftAmount`. [...]
operator <=(BigInt other) → bool
  Relational less than or equal operator.
operator >(BigInt other) → bool
  Relational greater than operator.
operator >=(BigInt other) → bool
  Relational greater than or equal operator.
operator >>(int shiftAmount) → BigInt
  Shift the bits of this integer to the right by `shiftAmount`. [...]
operator ^(BigInt other) → BigInt
  Bit-wise exclusive-or operator. [...]
operator unary-() → BigInt
  Return the negative value of this integer. [...]
operator |(BigInt other) → BigInt
  Bit-wise or operator. [...]
operator ~() → BigInt
  The bit-wise negate operator. [...]
operator ~/(BigInt other) → BigInt
  Truncating division operator. [...]
operator ==(dynamic other) → bool
  The equality operator. [...]
  inherited

## Static Properties

one → BigInt
  read-only
two → BigInt
  read-only
zero → BigInt
  read-only

## Static Methods

parse(String source, { int radix }) → BigInt
  Parses `source` as a, possibly signed, integer literal and returns its value. [...]
tryParse(String source, { int radix }) → BigInt
  Parses `source` as a, possibly signed, integer literal and returns its value. [...]