Skip to main content

Crate besl

Crate besl 

Source
Expand description

Use this crate to parse, link, and execute Byte Engine Shader Language (BESL) source.

Call compile_to_besl for the normal parse-and-link path. Next, pass the linked NodeReference to the resource-management shader generator or use vm when tests need to execute BESL semantics directly.

See the BESL language reference for syntax, interfaces, stages, sidecar settings, and supported operations.

Re-exports§

pub use lexer::Expressions;
pub use lexer::Node;
pub use lexer::Nodes;
pub use lexer::Operators;
pub use crate::lexer::BindingTypes;
pub use crate::lexer::NodeReference;

Modules§

lexer
Resolves parsed BESL syntax into a linked semantic tree for compilation.
parser
Parses BESL tokens into syntax nodes that preserve the source structure.
vm
The vm module compiles and executes lexed BESL programs for deterministic host-side evaluation.

Macros§

besl_struct_node
Builds a BESL parser struct node from Rust-style struct syntax.

Enums§

CompilationError

Traits§

BeslStructDefinition
The BeslStructDefinition trait exposes a Rust struct as a BESL parser struct definition.

Functions§

compile_to_besl
Parses and links BESL source into a JSPD.
lex
Resolves a parsed syntax tree and returns its linked root node.
parse
Parses BESL source and returns the root syntax node.

Type Aliases§

ParserNode
A shared parser node used by BESL syntax trees.

Derive Macros§

BeslStruct