Path: blob/main/crates/bevy_reflect/src/impls/alloc/vec.rs
6600 views
use bevy_reflect_derive::impl_type_path;12use crate::impls::macros::impl_reflect_for_veclike;3#[cfg(feature = "functions")]4use crate::{5from_reflect::FromReflect, type_info::MaybeTyped, type_path::TypePath,6type_registry::GetTypeRegistration,7};89impl_reflect_for_veclike!(10::alloc::vec::Vec<T>,11::alloc::vec::Vec::insert,12::alloc::vec::Vec::remove,13::alloc::vec::Vec::push,14::alloc::vec::Vec::pop,15[T]16);17impl_type_path!(::alloc::vec::Vec<T>);18#[cfg(feature = "functions")]19crate::func::macros::impl_function_traits!(::alloc::vec::Vec<T>; <T: FromReflect + MaybeTyped + TypePath + GetTypeRegistration>);2021#[cfg(test)]22mod tests {23use alloc::vec;24use bevy_reflect::PartialReflect;2526#[test]27fn should_partial_eq_vec() {28let a: &dyn PartialReflect = &vec![1, 2, 3];29let b: &dyn PartialReflect = &vec![1, 2, 3];30let c: &dyn PartialReflect = &vec![3, 2, 1];31assert!(a.reflect_partial_eq(b).unwrap_or_default());32assert!(!a.reflect_partial_eq(c).unwrap_or_default());33}34}353637