Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/multirious/epic_bevy_remote_reflection

Implement `bevy_reflect`'s `Reflect` trait for remote type, bypassing the orphan rule by editing trait-object's virtual table at runtime and without changes to `bevy_reflect`!
https://github.com/multirious/epic_bevy_remote_reflection

Last synced: 7 days ago
JSON representation

Implement `bevy_reflect`'s `Reflect` trait for remote type, bypassing the orphan rule by editing trait-object's virtual table at runtime and without changes to `bevy_reflect`!

Awesome Lists containing this project

README

        

# epic_bevy_remote_reflection

Implement `bevy_reflect`'s `Reflect` trait for remote type, bypassing the orphan
rule by editing trait-object's virtual table at runtime. No changes needed to `bevy_reflect`.

# Unsafe, do not use for production! (winked)

I only created this for fun.
Rust doesn't have a guarantee that the underlying virtual table memory layout will
stays the same between Rust releases. It's a part of the compiler, not the language.
So be aware of changes and untested versions!

Tested versions:
- `1.80`

https://geo-ant.github.io/blog/2023/rust-dyn-trait-objects-fat-pointers/