Bevy Reflection on Steroids

A series of supplementary extensions to the bevy_reflect crate that powers aspects of the Bevy game engine.

bevy_reflect provides is a general reflection framework for Rust structs, with rudimentary support for traits.

Highlights

This crate provides a much more intuitive and user-friendly way of interacting with reflected types through arbitrary trait objects.

By implementing [DynamicTrait] for dyn MyTrait, reflection is made available to all dynamic trait object references of that type. The only requirement is that the trait has [DowncastReflect] as a supertrait, and that a call to the macro impl_dynamic_trait!(MyTrait, ReflectMyTrait) is present in the code.