Skip to main content

Crate bevy_mod_scripting_bindings

Crate bevy_mod_scripting_bindings 

Source
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 ScriptValue enum which is used to pass values between scripting languages and Rust.
type_data
Contains various Reflect type data we use in BMS.
world_extensions
Implementations of WorldExtensions trait 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§

AccessBitField
Describes the state of an access lock
AccessByteSet
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.
AccessMap
A map of access claims
ThreadScriptContext
Context passed down indirectly to script related functions, used to avoid prop drilling problems.
ThreadWorldContainer
A world container that stores the world in a thread local
WorldAccessGuard
Provides safe access to the world via [AnyAccessMap] permissions, which enforce aliasing rules at runtime in multi-thread environments

Enums§

DynWorldAccessError
A class of errors related to accessing the world with untyped acccess information
WorldAccessRange
Describes access ranges in and outside a bevy world

Traits§

CachedRegistry
A registry which is cached withing the WorldAccessGuard to avoid many access lookups.
DisplayCodeLocation
A trait for displaying a code location nicely
DynamicSystemMeta
A trait for controlling system world access at runtime.

Type Aliases§

RegistryCache
Aliases the type used as the registry cache for the world guard.
WorldGuard
Prefer to directly using WorldAccessGuard. If the underlying type changes, this alias will be updated.
WorldGuardRef
Similar to WorldGuard, but without the arc, use for when you don’t need the outer Arc.