bit.bxor Synchronous

Set bits that differ between successive 32-bit values. XOR is useful for toggling flags or comparing packed values at the bit level.

Syntax
Luau
bit.bxor(...values: any) -> number

Parameters

Function parameters
ParameterTypeDescription
...valuesanyValues to process in order. Finite numbers are truncated to unsigned 32-bit integers; nonnumeric and nonfinite values are skipped.

Returns

number

An unsigned 32-bit result represented as a Luau number.

Usage notes

Arithmetic wraps at 32 bits. With no valid numeric arguments the result is 0, including for AND and multiplication.

Differences from Volt

Volt documents its Bit Library setting as disabled by default. Kawaii enables bit by default. Disabling the setting removes the bit global and makes retained function references reject calls.

Availability

Bit is enabled by default. The bit global is removed when disabled, and its operations check the setting.

Example

Example
Luau
local flags = 0x05
print(bit.tohex(bit.bxor(flags, 0x01))) -- 4
Kawaii documentation