From af4336c5016d3c70334d281e4c407c64b11129bc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Joaqu=C3=ADn=20Le=C3=B3n?= <51842726+Joakker@users.noreply.github.com> Date: Wed, 21 Jun 2023 13:24:32 -0400 Subject: [PATCH] Reflect UUID (#8905) For those who wish to be able to `#[reflect]` stuff using the `Uuid` type I'm very unfamiliar with the codebase, so please tell me if I'm missing something --- crates/bevy_reflect/src/impls/uuid.rs | 15 +++++++++++++++ crates/bevy_reflect/src/lib.rs | 2 ++ 2 files changed, 17 insertions(+) create mode 100644 crates/bevy_reflect/src/impls/uuid.rs diff --git a/crates/bevy_reflect/src/impls/uuid.rs b/crates/bevy_reflect/src/impls/uuid.rs new file mode 100644 index 0000000000..4bd1df67e1 --- /dev/null +++ b/crates/bevy_reflect/src/impls/uuid.rs @@ -0,0 +1,15 @@ +use crate as bevy_reflect; + +use crate::{std_traits::ReflectDefault, ReflectDeserialize, ReflectSerialize}; +use bevy_reflect_derive::{impl_from_reflect_value, impl_reflect_value}; +use bevy_utils::Uuid; + +impl_reflect_value!(::bevy_utils::Uuid( + Serialize, + Deserialize, + Default, + Debug, + PartialEq, + Hash +)); +impl_from_reflect_value!(Uuid); diff --git a/crates/bevy_reflect/src/lib.rs b/crates/bevy_reflect/src/lib.rs index 7fc8f162a2..9bdd043810 100644 --- a/crates/bevy_reflect/src/lib.rs +++ b/crates/bevy_reflect/src/lib.rs @@ -463,6 +463,7 @@ mod impls { mod smol_str; mod std; + mod uuid; #[cfg(feature = "glam")] pub use self::glam::*; @@ -471,6 +472,7 @@ mod impls { #[cfg(feature = "smallvec")] pub use self::smallvec::*; pub use self::std::*; + pub use self::uuid::*; } mod enums;