Expand description
The vm module compiles and executes lexed BESL programs for deterministic host-side evaluation.
Structs§
- Buffer
- The
Bufferstruct provides mutable CPU storage for binding structured host data to a VM invocation. - Buffer
Layout - The
BufferLayoutstruct provides the host-visible packed memory contract for one VM buffer binding. - Buffer
Member Layout - The
BufferMemberLayoutstruct defines how host code addresses one named member in packed VM memory. - Descriptor
Bindings - The
DescriptorBindingsstruct provides invocation-scoped host resources to a compiled BESL program. - Executable
Program - The
ExecutableProgramstruct provides a reusable host-side execution form for one lexed BESL program. - Execution
Config - The
ExecutionConfigstruct bounds a VM invocation and supplies its shader-visible thread coordinates. - Mesh
Outputs - The
MeshOutputsstruct captures mesh-stage topology and positions for VM assertions. - Resource
Slot - The
ResourceSlotstruct provides a stable flat lookup key for host resources and VM interface resources. - Specialization
Values - The
SpecializationValuesstruct supplies host-selected values for BESL specialization declarations. - Task
Outputs - The
TaskOutputsstruct captures task-stage mesh dispatch counts and payload values for VM assertions. - Texture
- The
Texturestruct provides deterministic CPU texels for shader sampling, image access, and atomic assertions. - Workgroup
State - The
WorkgroupStatestruct provides task-stage invocations with explicitly shared workgroup storage.
Enums§
- Descriptor
Layout - The
DescriptorLayoutenum stores the VM resource layout required by one descriptor slot. - Value
- The
Valueenum stores the VM values that can move between registers, locals, and buffers. - Value
Type - The
ValueTypeenum describes portable BESL values and resource handles used by VM layouts and registers. - VmError
Functions§
- builtin_
position_ slot - Returns the interface slot reserved for the vertex position builtin.
- input_
slot - output_
slot