Expand description
This library does not contain any of its own functionality. Its available as a single place to find documentation for Garnish core libraries and as a convenience single dependency.
Modules§
- compiler
- Re-exports for parsing and building garnish scripts.
- helpers
- Helper functions created for core libraries that don’t have an implementation of GarnishData. These might be removed when an iterator interface is created for reading data instead of manual indexing.
- simple
- Re-exports for concrete implementations of garnish traits.
Structs§
- Empty
Context - Concrete object for when a runtime requires no context functionality. Can use constants
EMPTY_CONTEXT
andNO_CONTEXT
if needed as type parameters. - Runtime
Error - Error implementation for
crate::GarnishRuntime
instruction methods.
Enums§
- Error
Type - List of possible error types a
RuntimeError
can be categorized as. - Garnish
Data Type - List of Garnish data types.
- Instruction
- List of possible instructions a Garnish runtime can process.
Constants§
- EMPTY_
CONTEXT - Constant instantiation of
EmptyContext
. - NO_
CONTEXT - An
Option
set to None. Typed as a mutable reference to anEmptyContext
for use incrate::GarnishRuntime
instruction methods that require a context be passed.
Traits§
- Garnish
Context - Functionality required by Garnish contexts.
- Garnish
Data - Trait defining what a data access operations are required by a runtime.
- Garnish
Number - Arithmetic operations required so a runtime can resolve associated instruction.
- Garnish
Runtime - Trait containing instruction operations Garnish needs to execute.
All instruction methods (e.g. all except
GarnishRuntime::get_data
,GarnishRuntime::get_data_mut
should a Result. With the Ok value being the next instruction address to be executed if not sequential, otherwise return None - Type
Constants - Trait to provide constant values that a runtime will need access to.