# bit

LuaBitOp-compatible bit operations. Every argument is normalised to a 32-bit integer.

Function | Signature | Returns
--- | --- | ---
`bit.tobit` | `(value: number)` | value as a 32-bit int
`bit.tohex` | `(value: number[, n: integer])` | hex string, `n` digits (negative for uppercase, default 8)
`bit.bnot` | `(value: number)` | bitwise NOT
`bit.band` | `(value: number, ...)` | AND of all arguments
`bit.bor` | `(value: number, ...)` | OR of all arguments
`bit.bxor` | `(value: number, ...)` | XOR of all arguments
`bit.lshift` | `(value: number, shift: integer)` | left shift
`bit.rshift` | `(value: number, shift: integer)` | logical right shift
`bit.arshift` | `(value: number, shift: integer)` | arithmetic right shift
`bit.rol` | `(value: number, shift: integer)` | rotate left
`bit.ror` | `(value: number, shift: integer)` | rotate right
`bit.bswap` | `(value: number)` | byte-swapped 32-bit int