Dart API Referencefixnumintx

intx abstract class

A fixed-precision integer.

abstract class intx implements Comparable {

  // Arithmetic operations.
  intx operator +(other);
  intx operator -(other);
  // The unary '-' operator.  Note that -MIN_VALUE will be equal
  // to MIN_VALUE due to overflow.
  intx operator -();
  intx operator *(other);
  intx operator %(other);
  // Truncating division.
  intx operator ~/(other);
  intx remainder(other);

  // Note: no / operator

  // Bit-operations.
  intx operator &(other);
  intx operator |(other);
  intx operator ^(other);
  intx operator ~();
  intx operator <<(int shiftAmount);
  intx operator >>(int shiftAmount);
  intx shiftRightUnsigned(int shiftAmount);

  // Relational operations, may be applied to intx or int.
  int compareTo(Comparable other);
  bool operator ==(other);
  bool operator <(other);
  bool operator <=(other);
  bool operator >(other);
  bool operator >=(other);

  // Testers.
  bool get isEven;
  bool get isMaxValue;
  bool get isMinValue;
  bool get isNegative;
  bool get isOdd;
  bool get isZero;

  int get hashCode;

  intx abs();

  /**
   * Returns the number of leading zeros in this [intx] as an [int]
   * between 0 and 64.
   */
  int numberOfLeadingZeros();

  /**
   * Returns the number of trailing zeros in this [intx] as an [int]
   * between 0 and 64.
   */
  int numberOfTrailingZeros();

  /**
   * Converts this [intx] to a [List] of [int], starting with the least
   * significant byte.
   */
  List<int> toBytes();

  /**
   * Converts this [intx] to an [int].  On some platforms, inputs with large
   * absolute values (i.e., > 2^52) may lose some of their low bits.
   */
  int toInt();

  /**
   * Converts an [intx] to 32 bits.  Narrower values are sign extended and
   * wider values have their high bits truncated.
   */
  int32 toInt32();

  /**
   * Converts an [intx] to 64 bits.
   */
  int64 toInt64();

  /**
   * Returns the value of this [intx] as a decimal [String].
   */
  String toString();

  /**
   * Returns the value of this [intx] as a hexadecimal [String].
   */
  String toHexString();

  /**
   * Returns the value of this [intx] as a [String] in the given radix.
   * [radix] must be an integer between 2 and 16, inclusive.
   */
  String toRadixString(int radix);
}

Subclasses

int32, int64

Implements

Comparable

Properties

final int hashCode #

Get a hash code for this object.

All objects have hash codes. Hash codes are guaranteed to be the same for objects that are equal when compared using the equality operator ==. Other than that there are no guarantees about the hash codes. They will not be consistent between runs and there are no distribution guarantees.

If a subclass overrides hashCode it should override the equality operator as well to maintain consistency.

docs inherited from Object
int get hashCode;

final bool isEven #

bool get isEven;

final bool isMaxValue #

bool get isMaxValue;

final bool isMinValue #

bool get isMinValue;

final bool isNegative #

bool get isNegative;

final bool isOdd #

bool get isOdd;

final bool isZero #

bool get isZero;

Operators

intx operator +(other) #

intx operator +(other);

intx operator -() #

intx operator -();

intx operator -(other) #

intx operator -(other);

intx operator *(other) #

intx operator *(other);

intx operator ~/(other) #

intx operator ~/(other);

intx operator %(other) #

intx operator %(other);

intx operator &(other) #

intx operator &(other);

intx operator |(other) #

intx operator |(other);

intx operator ^(other) #

intx operator ^(other);

intx operator ~() #

intx operator ~();

intx operator <<(int shiftAmount) #

intx operator <<(int shiftAmount);

intx operator >>(int shiftAmount) #

intx operator >>(int shiftAmount);

bool operator <(other) #

bool operator <(other);

bool operator <=(other) #

bool operator <=(other);

bool operator >(other) #

bool operator >(other);

bool operator >=(other) #

bool operator >=(other);

bool operator ==(other) #

The equality operator.

The default behavior for all Objects is to return true if and only if this and other are the same object.

If a subclass overrides the equality operator it should override the hashCode method as well to maintain consistency.

docs inherited from Object
bool operator ==(other);

Methods

intx abs() #

intx abs();

int compareTo(Comparable other) #

Compares this object to another Comparable

Returns a value like a Comparator when comparing this to other.

May throw an ArgumentError if other is of a type that is not comparable to this.

docs inherited from Comparable
int compareTo(Comparable other);

int numberOfLeadingZeros() #

Returns the number of leading zeros in this intx as an int between 0 and 64.

int numberOfLeadingZeros();

int numberOfTrailingZeros() #

Returns the number of trailing zeros in this intx as an int between 0 and 64.

int numberOfTrailingZeros();

intx remainder(other) #

intx remainder(other);

intx shiftRightUnsigned(int shiftAmount) #

intx shiftRightUnsigned(int shiftAmount);

List<int> toBytes() #

Converts this intx to a List of int, starting with the least significant byte.

List<int> toBytes();

String toHexString() #

Returns the value of this intx as a hexadecimal String.

String toHexString();

int toInt() #

Converts this intx to an int. On some platforms, inputs with large absolute values (i.e., > 2^52) may lose some of their low bits.

int toInt();

int32 toInt32() #

Converts an intx to 32 bits. Narrower values are sign extended and wider values have their high bits truncated.

int32 toInt32();

int64 toInt64() #

Converts an intx to 64 bits.

int64 toInt64();

String toRadixString(int radix) #

Returns the value of this intx as a String in the given radix. radix must be an integer between 2 and 16, inclusive.

String toRadixString(int radix);

String toString() #

Returns the value of this intx as a decimal String.

String toString();