Skip to content

memory


alloc_mem

userdata memory.alloc_mem(int size)

Returns userdata representing a block of memory
Example Usage
local mem = memory.alloc_mem(4) -- allocate 4 bytes

get_address

int memory.get_address(userdata mem)

Returns the address of memory associated with userdata
Example Usage
local address = memory.get_address(mem)

read_s8

int memory.read_s8(int address)

Reads and returns a signed 8-bit integer at the provided address
Example Usage
local value = memory.read_s8(address)

read_u8

int memory.read_u8(int address)

Reads and returns an unsigned 8-bit integer at the provided address
Example Usage
local value = memory.read_u8(address)

read_s16

int memory.read_s16(int address)

Reads and returns a signed 16-bit integer at the provided address
Example Usage
local value = memory.read_s16(address)

read_u16

int memory.read_u16(int address)

Reads and returns an unsigned 16-bit integer at the provided address
Example Usage
local value = memory.read_u16(address)

read_s32

int memory.read_s32(int address)

Reads and returns a signed 32-bit integer at the provided address
Example Usage
local value = memory.read_s32(address)

read_u32

int memory.read_u32(int address)

Reads and returns an unsigned 32-bit integer at the provided address
Example Usage
local value = memory.read_u32(address)

read_float

float memory.read_float(int address)

Reads and returns a float at the provided address
Example Usage
local value = memory.read_float(address)

read_s64

int memory.read_s64(int address)

Reads and returns a signed 64-bit integer at the provided address
Example Usage
local value = memory.read_s64(address)

read_u64

int memory.read_u64(int address)

Reads and returns an unsigned 64-bit integer at the provided address
Example Usage
local value = memory.read_u64(address)

read_vec3

vec3 memory.read_vec3(int address)

Reads and returns a vec3 at the provided address
Example Usage
local value = memory.read_vec3(address)

write_s8

void memory.write_s8(int address, int value)

Writes a signed 8-bit integer at the provided address
Example Usage
memory.write_s8(address, value)

write_u8

void memory.write_u8(int address, int value)

Writes an unsigned 8-bit integer at the provided address
Example Usage
memory.write_u8(address, value)

write_s16

void memory.write_s16(int address, int value)

Writes a signed 16-bit integer at the provided address
Example Usage
memory.write_s16(address, value)

write_u16

void memory.write_u16(int address, int value)

Writes an unsigned 16-bit integer at the provided address
Example Usage
memory.write_u16(address, value)

write_s32

void memory.write_s32(int address, int value)

Writes a signed 32-bit integer at the provided address
Example Usage
memory.write_s32(address, value)

write_u32

void memory.write_u32(int address, int value)

Writes an unsigned 32-bit integer at the provided address
Example Usage
memory.write_u32(address, value)

write_float

void memory.write_float(int address, float value)

Writes a float at the provided address
Example Usage
memory.write_float(address, value)

write_s64

void memory.write_s64(int address, int value)

Writes a signed 64-bit integer at the provided address
Example Usage
memory.write_s64(address, value)

write_u64

void memory.write_u64(int address, int value)

Writes an unsigned 64-bit integer at the provided address
Example Usage
memory.write_u64(address, value)

write_vec3

void memory.write_vec3(int address, vec3 value)

Writes a vec3 at the provided address
Example Usage
memory.write_vec3(address, value)