bevy_reflect/impls/core/
time.rs1use crate::{
2 std_traits::ReflectDefault,
3 type_registry::{ReflectDeserialize, ReflectSerialize},
4};
5use bevy_reflect_derive::impl_reflect_opaque;
6
7impl_reflect_opaque!(::core::time::Duration(
8 Clone,
9 Debug,
10 Hash,
11 PartialEq,
12 Serialize,
13 Deserialize,
14 Default
15));
16
17#[cfg(test)]
18mod tests {
19 use bevy_reflect::{ReflectSerialize, TypeRegistry};
20 use core::time::Duration;
21
22 #[test]
23 fn can_serialize_duration() {
24 let mut type_registry = TypeRegistry::default();
25 type_registry.register::<Duration>();
26
27 let reflect_serialize = type_registry
28 .get_type_data::<ReflectSerialize>(core::any::TypeId::of::<Duration>())
29 .unwrap();
30 let _serializable = reflect_serialize.get_serializable(&Duration::ZERO);
31 }
32}