# `nupp.math.i32`
Signed 32-bit wrapping arithmetic.
## Functions
### `add` _function_
```nupp
local add: nosuspend function(a: int32, b: int32): int32
```
#### Arguments
| Name | Type | Description |
| --- | --- | --- |
| `a` | `int32` | |
| `b` | `int32` | |
#### Returns
| Type | Description |
| --- | --- |
| `int32` | |
### `andBits` _function_
```nupp
local andBits: nosuspend function(a: int32, b: int32): int32
```
#### Arguments
| Name | Type | Description |
| --- | --- | --- |
| `a` | `int32` | |
| `b` | `int32` | |
#### Returns
| Type | Description |
| --- | --- |
| `int32` | |
### `fromU32` _function_
```nupp
local fromU32: nosuspend function(a: uint32): int32
```
#### Arguments
| Name | Type | Description |
| --- | --- | --- |
| `a` | `uint32` | |
#### Returns
| Type | Description |
| --- | --- |
| `int32` | |
### `lessOrEqual` _function_
```nupp
local lessOrEqual: nosuspend function(a: int32, b: int32): boolean
```
#### Arguments
| Name | Type | Description |
| --- | --- | --- |
| `a` | `int32` | |
| `b` | `int32` | |
#### Returns
| Type | Description |
| --- | --- |
| `boolean` | |
### `lessThan` _function_
```nupp
local lessThan: nosuspend function(a: int32, b: int32): boolean
```
#### Arguments
| Name | Type | Description |
| --- | --- | --- |
| `a` | `int32` | |
| `b` | `int32` | |
#### Returns
| Type | Description |
| --- | --- |
| `boolean` | |
### `mul` _function_
```nupp
local mul: nosuspend function(a: int32, b: int32): int32
```
#### Arguments
| Name | Type | Description |
| --- | --- | --- |
| `a` | `int32` | |
| `b` | `int32` | |
#### Returns
| Type | Description |
| --- | --- |
| `int32` | |
### `notBits` _function_
```nupp
local notBits: nosuspend function(a: int32): int32
```
#### Arguments
| Name | Type | Description |
| --- | --- | --- |
| `a` | `int32` | |
#### Returns
| Type | Description |
| --- | --- |
| `int32` | |
### `orBits` _function_
```nupp
local orBits: nosuspend function(a: int32, b: int32): int32
```
#### Arguments
| Name | Type | Description |
| --- | --- | --- |
| `a` | `int32` | |
| `b` | `int32` | |
#### Returns
| Type | Description |
| --- | --- |
| `int32` | |
### `rotateLeft` _function_
```nupp
local rotateLeft: nosuspend function(a: int32, count: integer): int32
```
#### Arguments
| Name | Type | Description |
| --- | --- | --- |
| `a` | `int32` | |
| `count` | `integer` | |
#### Returns
| Type | Description |
| --- | --- |
| `int32` | |
### `rotateRight` _function_
```nupp
local rotateRight: nosuspend function(a: int32, count: integer): int32
```
#### Arguments
| Name | Type | Description |
| --- | --- | --- |
| `a` | `int32` | |
| `count` | `integer` | |
#### Returns
| Type | Description |
| --- | --- |
| `int32` | |
### `shiftLeft` _function_
```nupp
local shiftLeft: nosuspend function(a: int32, count: integer): int32
```
#### Arguments
| Name | Type | Description |
| --- | --- | --- |
| `a` | `int32` | |
| `count` | `integer` | |
#### Returns
| Type | Description |
| --- | --- |
| `int32` | |
### `shiftRightArithmetic` _function_
```nupp
local shiftRightArithmetic: nosuspend function(a: int32, count: integer): int32
```
#### Arguments
| Name | Type | Description |
| --- | --- | --- |
| `a` | `int32` | |
| `count` | `integer` | |
#### Returns
| Type | Description |
| --- | --- |
| `int32` | |
### `sub` _function_
```nupp
local sub: nosuspend function(a: int32, b: int32): int32
```
#### Arguments
| Name | Type | Description |
| --- | --- | --- |
| `a` | `int32` | |
| `b` | `int32` | |
#### Returns
| Type | Description |
| --- | --- |
| `int32` | |
### `toU32` _function_
```nupp
local toU32: nosuspend function(a: int32): uint32
```
#### Arguments
| Name | Type | Description |
| --- | --- | --- |
| `a` | `int32` | |
#### Returns
| Type | Description |
| --- | --- |
| `uint32` | |
### `wrap` _function_
```nupp
local wrap: nosuspend function(value: integer): int32
```
#### Arguments
| Name | Type | Description |
| --- | --- | --- |
| `value` | `integer` | |
#### Returns
| Type | Description |
| --- | --- |
| `int32` | |
### `xorBits` _function_
```nupp
local xorBits: nosuspend function(a: int32, b: int32): int32
```
#### Arguments
| Name | Type | Description |
| --- | --- | --- |
| `a` | `int32` | |
| `b` | `int32` | |
#### Returns
| Type | Description |
| --- | --- |
| `int32` | |