rhai/src
2023-04-21 10:20:19 +08:00
..
api Use .take instead of mem::take(). 2023-04-21 10:20:19 +08:00
ast Use .take instead of mem::take(). 2023-04-21 10:20:19 +08:00
bin Update rustyline. 2023-02-20 10:06:26 +08:00
config Use SusLock to hold pre-calculated indexer hashes. 2022-11-25 11:49:00 +08:00
eval Use .take instead of mem::take(). 2023-04-21 10:20:19 +08:00
func Use .take instead of mem::take(). 2023-04-21 10:20:19 +08:00
module Use .take instead of mem::take(). 2023-04-21 10:20:19 +08:00
packages Remove indirection. 2023-03-23 13:37:10 +08:00
serde Remove indirection. 2023-03-23 13:37:10 +08:00
types Use .take instead of mem::take(). 2023-04-21 10:20:19 +08:00
defer.rs Simplify match. 2023-04-05 23:15:55 +08:00
engine.rs Remove indirection. 2023-03-23 13:37:10 +08:00
lib.rs Rename auto_restore! to defer! 2023-03-25 21:13:34 +08:00
optimizer.rs Use .take instead of mem::take(). 2023-04-21 10:20:19 +08:00
parser.rs Fix builds. 2023-04-20 22:45:30 +08:00
README.md Add info into README's. 2023-04-12 12:09:14 +08:00
reify.rs Improve reify! syntax. 2022-12-09 16:41:01 +08:00
tests.rs Fine tune Engine size. 2023-03-07 16:52:37 +08:00
tokenizer.rs Add is_symbol_disabled and is_custom_keyword. 2023-04-11 11:38:48 +08:00

Source Structure

Root Sources

Source file Description
lib.rs Crate root
engine.rs The scripting engine, defines the Engine type
tokenizer.rs Script tokenizer/lexer
parser.rs Script parser
optimizer.rs Script optimizer
defer.rs Utilities for deferred clean-up of resources
reify.rs Utilities for making generic types concrete
tests.rs Unit tests (not integration tests, which are in the main tests sub-directory)

Sub-Directories

Sub-directory Description
config Configuration
types Common data types (e.g. Dynamic, errors)
api Public API for the scripting engine
ast AST definition
module Support for modules
packages Pre-defined packages
func Registering and calling functions (native Rust and script-defined)
eval AST evaluation
serde Support for serde and metadata
bin Pre-built CLI binaries