# Int32

Edit on GitHubUtilities for working with the Int32 type.

## Added in `0.2.0`

No other changes yet.
## Conversions

Functions for converting between Numbers and the Int32 type.

### Int32.**fromNumber**

## Added in `0.2.0`

No other changes yet.
Converts a Number to an Int32.

Parameters:

param | type | description |
---|---|---|

`number` |
`Number` |
The value to convert |

Returns:

type | description |
---|---|

`Int32` |
The Number represented as an Int32 |

### Int32.**toNumber**

## Added in `0.2.0`

No other changes yet.
Converts an Int32 to a Number.

Parameters:

param | type | description |
---|---|---|

`value` |
`Int32` |
The value to convert |

Returns:

type | description |
---|---|

`Number` |
The Int32 represented as a Number |

## Operations

Mathematical operations for Int32 values.

### Int32.**incr**

## Added in `0.2.0`

No other changes yet.
Increments the value by one.

Parameters:

param | type | description |
---|---|---|

`value` |
`Int32` |
The value to increment |

Returns:

type | description |
---|---|

`Int32` |
The incremented value |

### Int32.**decr**

## Added in `0.2.0`

No other changes yet.
Decrements the value by one.

Parameters:

param | type | description |
---|---|---|

`value` |
`Int32` |
The value to decrement |

Returns:

type | description |
---|---|

`Int32` |
The decremented value |

### Int32.**add**

## Added in `0.2.0`

No other changes yet.
Computes the sum of its operands.

Parameters:

param | type | description |
---|---|---|

`x` |
`Int32` |
The first operand |

`y` |
`Int32` |
The second operand |

Returns:

type | description |
---|---|

`Int32` |
The sum of the two operands |

### Int32.**sub**

## Added in `0.2.0`

No other changes yet.
Computes the difference of its operands.

Parameters:

param | type | description |
---|---|---|

`x` |
`Int32` |
The first operand |

`y` |
`Int32` |
The second operand |

Returns:

type | description |
---|---|

`Int32` |
The difference of the two operands |

### Int32.**mul**

## Added in `0.2.0`

No other changes yet.
Computes the product of its operands.

Parameters:

param | type | description |
---|---|---|

`x` |
`Int32` |
The first operand |

`y` |
`Int32` |
The second operand |

Returns:

type | description |
---|---|

`Int32` |
The product of the two operands |

### Int32.**div**

## Added in `0.2.0`

No other changes yet.
Computes the quotient of its operands using signed division.

Parameters:

param | type | description |
---|---|---|

`x` |
`Int32` |
The first operand |

`y` |
`Int32` |
The second operand |

Returns:

type | description |
---|---|

`Int32` |
The quotient of its operands |

### Int32.**divU**

## Added in `0.2.0`

No other changes yet.
Computes the quotient of its operands using unsigned division.

Parameters:

param | type | description |
---|---|---|

`x` |
`Int32` |
The first operand |

`y` |
`Int32` |
The second operand |

Returns:

type | description |
---|---|

`Int32` |
The quotient of its operands |

### Int32.**rem**

## Added in `0.2.0`

No other changes yet.
Computes the remainder of the division of its operands using signed division.

Parameters:

param | type | description |
---|---|---|

`x` |
`Int32` |
The first operand |

`y` |
`Int32` |
The second operand |

Returns:

type | description |
---|---|

`Int32` |
The remainder of its operands |

### Int32.**remU**

## Added in `0.2.0`

No other changes yet.
Computes the remainder of the division of its operands using unsigned division.

Parameters:

param | type | description |
---|---|---|

`x` |
`Int32` |
The first operand |

`y` |
`Int32` |
The second operand |

Returns:

type | description |
---|---|

`Int32` |
The remainder of its operands |

### Int32.**mod**

## Added in `0.2.0`

No other changes yet.
Computes the remainder of the division of the first operand by the second. The result will have the sign of the second operand.

Parameters:

param | type | description |
---|---|---|

`x` |
`Int32` |
The first operand |

`y` |
`Int32` |
The second operand |

Returns:

type | description |
---|---|

`Int32` |
The modulus of its operands |

Throws:

`ModuloByZero`

- When
`y`

is zero

## Bitwise operations

Functions for operating on bits of Int32 values.

### Int32.**rotl**

## Added in `0.4.0`

No other changes yet.
Rotates the bits of the value left by the given number of bits.

Parameters:

param | type | description |
---|---|---|

`value` |
`Int32` |
The value to rotate |

`amount` |
`Int32` |
The number of bits to rotate by |

Returns:

type | description |
---|---|

`Int32` |
The rotated value |

### Int32.**rotr**

## Added in `0.4.0`

No other changes yet.
Rotates the bits of the value right by the given number of bits.

Parameters:

param | type | description |
---|---|---|

`value` |
`Int32` |
The value to rotate |

`amount` |
`Int32` |
The number of bits to rotate by |

Returns:

type | description |
---|---|

`Int32` |
The rotated value |

### Int32.**shl**

## Added in `0.2.0`

No other changes yet.
Shifts the bits of the value left by the given number of bits.

Parameters:

param | type | description |
---|---|---|

`value` |
`Int32` |
The value to shift |

`amount` |
`Int32` |
The number of bits to shift by |

Returns:

type | description |
---|---|

`Int32` |
The shifted value |

### Int32.**shr**

## Added in `0.2.0`

No other changes yet.
Shifts the bits of the value right by the given number of bits, preserving the sign bit.

Parameters:

param | type | description |
---|---|---|

`value` |
`Int32` |
The value to shift |

`amount` |
`Int32` |
The amount to shift by |

Returns:

type | description |
---|---|

`Int32` |
The shifted value |

### Int32.**shrU**

## Added in `0.2.0`

No other changes yet.
Shifts the bits of the value right by the given number of bits.

Parameters:

param | type | description |
---|---|---|

`value` |
`Int32` |
The value to shift |

`amount` |
`Int32` |
The amount to shift by |

Returns:

type | description |
---|---|

`Int32` |
The shifted value |

## Comparisons

Functions for comparing Int32 values.

### Int32.**eq**

## Added in `0.4.0`

No other changes yet.
Checks if the first value is equal to the second value.

Parameters:

param | type | description |
---|---|---|

`x` |
`Int32` |
The first value |

`y` |
`Int32` |
The second value |

Returns:

type | description |
---|---|

`Bool` |
`true` if the first value is equal to the second value or `false` otherwise |

### Int32.**ne**

## Added in `0.4.0`

No other changes yet.
Checks if the first value is not equal to the second value.

Parameters:

param | type | description |
---|---|---|

`x` |
`Int32` |
The first value |

`y` |
`Int32` |
The second value |

Returns:

type | description |
---|---|

`Bool` |
`true` if the first value is not equal to the second value or `false` otherwise |

### Int32.**eqz**

## Added in `0.4.0`

No other changes yet.
Checks if the given value is equal to zero.

Parameters:

param | type | description |
---|---|---|

`value` |
`Int32` |
The value to inspect |

Returns:

type | description |
---|---|

`Bool` |
`true` if the first value is equal to zero or `false` otherwise |

### Int32.**lt**

## Added in `0.2.0`

No other changes yet.
Checks if the first value is less than the second value.

Parameters:

param | type | description |
---|---|---|

`x` |
`Int32` |
The first value |

`y` |
`Int32` |
The second value |

Returns:

type | description |
---|---|

`Bool` |
`true` if the first value is less than the second value or `false` otherwise |

### Int32.**ltU**

## Added in `0.5.0`

No other changes yet.
Checks if the first unsigned value is less than the second unsigned value.

Parameters:

param | type | description |
---|---|---|

`x` |
`Int32` |
The first value |

`y` |
`Int32` |
The second value |

Returns:

type | description |
---|---|

`Bool` |
`true` if the first value is less than the second value or `false` otherwise |

### Int32.**gt**

## Added in `0.2.0`

No other changes yet.
Checks if the first value is greater than the second value.

Parameters:

param | type | description |
---|---|---|

`x` |
`Int32` |
The first value |

`y` |
`Int32` |
The second value |

Returns:

type | description |
---|---|

`Bool` |
`true` if the first value is greater than the second value or `false` otherwise |

### Int32.**gtU**

## Added in `0.5.0`

No other changes yet.
Checks if the first unsigned value is greater than the second unsigned value.

Parameters:

param | type | description |
---|---|---|

`x` |
`Int32` |
The first value |

`y` |
`Int32` |
The second value |

Returns:

type | description |
---|---|

`Bool` |
`true` if the first value is greater than the second value or `false` otherwise |

### Int32.**lte**

## Added in `0.2.0`

No other changes yet.
Checks if the first value is less than or equal to the second value.

Parameters:

param | type | description |
---|---|---|

`x` |
`Int32` |
The first value |

`y` |
`Int32` |
The second value |

Returns:

type | description |
---|---|

`Bool` |
`true` if the first value is less than or equal to the second value or `false` otherwise |

### Int32.**lteU**

## Added in `0.5.0`

No other changes yet.
Checks if the first unsigned value is less than or equal to the second unsigned value.

Parameters:

param | type | description |
---|---|---|

`x` |
`Int32` |
The first value |

`y` |
`Int32` |
The second value |

Returns:

type | description |
---|---|

`Bool` |
`true` if the first value is less than or equal to the second value or `false` otherwise |

### Int32.**gte**

## Added in `0.2.0`

No other changes yet.
Checks if the first value is greater than or equal to the second value.

Parameters:

param | type | description |
---|---|---|

`x` |
`Int32` |
The first value |

`y` |
`Int32` |
The second value |

Returns:

type | description |
---|---|

`Bool` |
`true` if the first value is greater than or equal to the second value or `false` otherwise |

### Int32.**gteU**

## Added in `0.5.0`

No other changes yet.
Checks if the first unsigned value is greater than or equal to the second unsigned value.

Parameters:

param | type | description |
---|---|---|

`x` |
`Int32` |
The first value |

`y` |
`Int32` |
The second value |

Returns:

type | description |
---|---|

`Bool` |
`true` if the first value is greater than or equal to the second value or `false` otherwise |

## Bitwise logic

Boolean operations on the bits of Int32 values.

### Int32.**lnot**

## Added in `0.2.0`

No other changes yet.
Computes the bitwise NOT of the given value.

Parameters:

param | type | description |
---|---|---|

`value` |
`Int32` |
The given value |

Returns:

type | description |
---|---|

`Int32` |
Containing the inverted bits of the given value |

### Int32.**land**

## Added in `0.2.0`

No other changes yet.
Computes the bitwise AND (`&`

) on the given operands.

Parameters:

param | type | description |
---|---|---|

`x` |
`Int32` |
The first operand |

`y` |
`Int32` |
The second operand |

Returns:

type | description |
---|---|

`Int32` |
Containing a `1` in each bit position for which the corresponding bits of both operands are `1` |

### Int32.**lor**

## Added in `0.2.0`

No other changes yet.
Computes the bitwise OR (`|`

) on the given operands.

Parameters:

param | type | description |
---|---|---|

`x` |
`Int32` |
The first operand |

`y` |
`Int32` |
The second operand |

Returns:

type | description |
---|---|

`Int32` |
Containing a `1` in each bit position for which the corresponding bits of either or both operands are `1` |

### Int32.**lxor**

## Added in `0.2.0`

No other changes yet.
Computes the bitwise XOR (`^`

) on the given operands.

Parameters:

param | type | description |
---|---|---|

`x` |
`Int32` |
The first operand |

`y` |
`Int32` |
The second operand |

Returns:

type | description |
---|---|

`Int32` |
Containing a `1` in each bit position for which the corresponding bits of either but not both operands are `1` |

### Int32.**clz**

## Added in `0.4.0`

No other changes yet.
Counts the number of leading zero bits in the value.

Parameters:

param | type | description |
---|---|---|

`value` |
`Int32` |
The value to inspect |

Returns:

type | description |
---|---|

`Int32` |
The amount of leading zeros |

### Int32.**ctz**

## Added in `0.4.0`

No other changes yet.
Counts the number of trailing zero bits in the value.

Parameters:

param | type | description |
---|---|---|

`value` |
`Int32` |
The value to inspect |

Returns:

type | description |
---|---|

`Int32` |
The amount of trailing zeros |

### Int32.**popcnt**

## Added in `0.4.0`

No other changes yet.
Counts the number of bits set to `1`

in the value, also known as a population count.

Parameters:

param | type | description |
---|---|---|

`value` |
`Int32` |
The value to inspect |

Returns:

type | description |
---|---|

`Int32` |
The amount of 1-bits in its operand |