bevy_reflect/impls/alloc/
string.rs

1use crate::{
2    std_traits::ReflectDefault,
3    type_registry::{ReflectDeserialize, ReflectSerialize},
4};
5use bevy_reflect_derive::impl_reflect_opaque;
6
7impl_reflect_opaque!(::alloc::string::String(
8    Clone,
9    Debug,
10    Hash,
11    PartialEq,
12    Serialize,
13    Deserialize,
14    Default
15));
16
17#[cfg(test)]
18mod tests {
19    use alloc::string::String;
20    use bevy_reflect::PartialReflect;
21
22    #[test]
23    fn should_partial_eq_string() {
24        let a: &dyn PartialReflect = &String::from("Hello");
25        let b: &dyn PartialReflect = &String::from("Hello");
26        let c: &dyn PartialReflect = &String::from("World");
27        assert!(a.reflect_partial_eq(b).unwrap_or_default());
28        assert!(!a.reflect_partial_eq(c).unwrap_or_default());
29    }
30}