class IntegerDigitList extends AbstractDigitList (View source)

Handles a list of digits defined according to number base.

Properties

protected array $digits from AbstractDigitList
protected int[] $valueMap from AbstractDigitList
protected bool $caseSensitive from AbstractDigitList
protected bool $stringConflict from AbstractDigitList

Methods

setValueMap(array $map)

Sets the value map and determines if it's case sensitive.

bool
hasStringConflict()

Tells if there is conflict that prevents numbers from being represented as a string.

bool
isCaseSensitive()

Tells if the digits are case sensitive or not.

array
getDigits()

Returns all the digits in the list.

mixed
getDigit(int $value)

Returns the digit that represents the given value.

int
getValue(mixed $digit)

Returns the value for the given digit.

int
count()

Returns the number of different digits.

__construct(int $radix)

Creates a new instance of IntegerDigitList.

Details

protected setValueMap(array $map)

Sets the value map and determines if it's case sensitive.

Parameters

array $map List of values for digits

bool hasStringConflict()

Tells if there is conflict that prevents numbers from being represented as a string.

Return Value

bool True if a number cannot be represented using a string, false if it can

bool isCaseSensitive()

Tells if the digits are case sensitive or not.

Return Value

bool True if the digits are case sensitive, false if not

array getDigits()

Returns all the digits in the list.

Return Value

array List of digits in the list according to their value

mixed getDigit(int $value)

Returns the digit that represents the given value.

Parameters

int $value The value of the digit

Return Value

mixed The digit that represents the value

Exceptions

InvalidArgumentException If the value is invalid

int getValue(mixed $digit)

Returns the value for the given digit.

Parameters

mixed $digit Digit to search for

Return Value

int The value of the digit

Exceptions

InvalidDigitException if the digit is invalid

int count()

Returns the number of different digits.

Return Value

int the number of different digits

__construct(int $radix)

Creates a new instance of IntegerDigitList.

The digit list is defined by giving the radix (i.e. base) for the number system that defines the number of digits in the digit list. The actual digits are determined based on the given number.

If the given radix is 62 or less, the digits from the list 0-9A-Za-z are used. The digits are case insensitive, if the radix is 36 or less.

If the radix is 64, then the digits from the base64 standard are used. Base64 is always case sensitive.

If the radix is 63 or 65 to 256, then digits are represented by a single byte with equal byte value.

If the radix is 257 or greater, then each digit is represented by a string of #NNN (where NNN is the value of the digit). Each string has equal length, which depends on the given radix.

Parameters

int $radix Radix for the numeral system

Exceptions

InvalidArgumentException If the radix is invalid