Expand description
Abstractions to help with creating bindings between bevy and scripting languages.
Re-exports§
pub use allocator::*;pub use docgen::*;pub use error::*;pub use function::*;pub use globals::*;pub use conversions::*;pub use path::*;pub use query::*;pub use reference::*;pub use reflection_extensions::*;pub use schedule::*;pub use script_component::*;pub use script_value::*;pub use type_data::*;pub use world_extensions::*;
Modules§
- allocator
- An allocator used to control the lifetime of allocations
- conversions
- Conversions from untyped reflected values to concrete values
- docgen
- Documentation generation for scripting languages.
- error
- Error types for the bindings
- function
- Abstractions to do with dynamic script functions
- globals
- Contains abstractions for exposing “globals” to scripts, in a language-agnostic way.
- path
- BMS native reflection paths
- query
- Utilities for querying the world.
- reference
- Motivation
- reflection_
extensions - Various utility functions for working with reflection types.
- schedule
- Dynamic scheduling from scripts
- script_
component - Everything necessary to support scripts registering their own components
- script_
value - This module contains the
ScriptValueenum which is used to pass values between scripting languages and Rust. - type_
data - Contains various
Reflecttype data we use in BMS. - world_
extensions - Implementations of
WorldExtensionstrait on the world guard.
Macros§
- downcast_
into_ value - Downcasts a reference into a value of a given type or returns an error if the downcast fails.
- match_
by_ type - a utility for matching types by their
std::any::TypeId
Structs§
- Access
BitField - Describes the state of an access lock
- Access
Byte Set - A collection of AccessBitFields indexed by id of access. Must not be used with potentially large ID’s as it will allocate large amounts of memory.
- Access
Map - A map of access claims
- Thread
Script Context - Context passed down indirectly to script related functions, used to avoid prop drilling problems.
- Thread
World Container - A world container that stores the world in a thread local
- World
Access Guard - Provides safe access to the world via [
AnyAccessMap] permissions, which enforce aliasing rules at runtime in multi-thread environments
Enums§
- DynWorld
Access Error - A class of errors related to accessing the world with untyped acccess information
- World
Access Range - Describes access ranges in and outside a bevy world
Traits§
- Cached
Registry - A registry which is cached withing the
WorldAccessGuardto avoid many access lookups. - Display
Code Location - A trait for displaying a code location nicely
- Dynamic
System Meta - A trait for controlling system world access at runtime.
Type Aliases§
- Registry
Cache - Aliases the type used as the registry cache for the world guard.
- World
Guard - Prefer to directly using
WorldAccessGuard. If the underlying type changes, this alias will be updated. - World
Guard Ref - Similar to
WorldGuard, but without the arc, use for when you don’t need the outer Arc.