Crate bevy_reflect_derive

Source
Expand description

This crate contains macros used by Bevy’s Reflect API.

The main export of this crate is the derive macro for Reflect. This allows types to easily implement Reflect along with other bevy_reflect traits, such as Struct, GetTypeRegistration, and more— all with a single derive!

Some other noteworthy exports include the derive macros for FromReflect and TypePath, as well as the reflect_trait attribute macro.

Macros§

impl_from_reflect_opaque
A macro used to generate a FromReflect trait implementation for the given type.
impl_reflect
A replacement for #[derive(Reflect)] to be used with foreign types which the definitions of cannot be altered.
impl_reflect_opaque
A macro used to generate reflection trait implementations for the given type.
impl_type_path
A replacement for deriving TypePath for use on foreign types.

Attribute Macros§

reflect_remote
Generates a wrapper type that can be used to “derive Reflect” for remote types.
reflect_trait
A macro that automatically generates type data for traits, which their implementors can then register.

Derive Macros§

FromReflect
Derives the FromReflect trait.
Reflect
The main derive macro used by bevy_reflect for deriving its Reflect trait.
TypePath
Derives the TypePath trait, providing a stable alternative to std::any::type_name.