PartialReflect

Trait PartialReflect 

Source
pub trait PartialReflect:
    DynamicTypePath
    + Send
    + Sync
where Self: 'static,
{
Show 20 methods // Required methods fn get_represented_type_info(&self) -> Option<&'static TypeInfo>; fn into_partial_reflect(self: Box<Self>) -> Box<dyn PartialReflect>; fn as_partial_reflect(&self) -> &dyn PartialReflect; fn as_partial_reflect_mut(&mut self) -> &mut dyn PartialReflect; fn try_into_reflect( self: Box<Self>, ) -> Result<Box<dyn Reflect>, Box<dyn PartialReflect>>; fn try_as_reflect(&self) -> Option<&dyn Reflect>; fn try_as_reflect_mut(&mut self) -> Option<&mut dyn Reflect>; fn try_apply( &mut self, value: &dyn PartialReflect, ) -> Result<(), ApplyError>; fn reflect_ref(&self) -> ReflectRef<'_>; fn reflect_mut(&mut self) -> ReflectMut<'_>; fn reflect_owned(self: Box<Self>) -> ReflectOwned; // Provided methods fn apply(&mut self, value: &dyn PartialReflect) { ... } fn reflect_kind(&self) -> ReflectKind { ... } fn to_dynamic(&self) -> Box<dyn PartialReflect> { ... } fn reflect_clone(&self) -> Result<Box<dyn Reflect>, ReflectCloneError> { ... } fn reflect_clone_and_take<T: 'static>(&self) -> Result<T, ReflectCloneError> where Self: TypePath + Sized { ... } fn reflect_hash(&self) -> Option<u64> { ... } fn reflect_partial_eq(&self, _value: &dyn PartialReflect) -> Option<bool> { ... } fn debug(&self, f: &mut Formatter<'_>) -> Result { ... } fn is_dynamic(&self) -> bool { ... }
}
Expand description

The foundational trait of bevy_reflect, used for accessing and modifying data dynamically.

This is a supertrait of Reflect, meaning any type which implements Reflect implements PartialReflect by definition.

It’s recommended to use the derive macro for Reflect rather than manually implementing this trait. Doing so will automatically implement this trait as well as many other useful traits for reflection, including one of the appropriate subtraits: Struct, TupleStruct or Enum.

See the crate-level documentation to see how this trait and its subtraits can be used.

Required Methods§

Source

fn get_represented_type_info(&self) -> Option<&'static TypeInfo>

Returns the TypeInfo of the type represented by this value.

For most types, this will simply return their own TypeInfo. However, for dynamic types, such as DynamicStruct or DynamicList, this will return the type they represent (or None if they don’t represent any particular type).

This method is great if you have an instance of a type or a dyn Reflect, and want to access its TypeInfo. However, if this method is to be called frequently, consider using TypeRegistry::get_type_info as it can be more performant for such use cases.

Source

fn into_partial_reflect(self: Box<Self>) -> Box<dyn PartialReflect>

Casts this type to a boxed, reflected value.

This is useful for coercing trait objects.

Source

fn as_partial_reflect(&self) -> &dyn PartialReflect

Casts this type to a reflected value.

This is useful for coercing trait objects.

Source

fn as_partial_reflect_mut(&mut self) -> &mut dyn PartialReflect

Casts this type to a mutable, reflected value.

This is useful for coercing trait objects.

Source

fn try_into_reflect( self: Box<Self>, ) -> Result<Box<dyn Reflect>, Box<dyn PartialReflect>>

Attempts to cast this type to a boxed, fully-reflected value.

Source

fn try_as_reflect(&self) -> Option<&dyn Reflect>

Attempts to cast this type to a fully-reflected value.

Source

fn try_as_reflect_mut(&mut self) -> Option<&mut dyn Reflect>

Attempts to cast this type to a mutable, fully-reflected value.

Source

fn try_apply(&mut self, value: &dyn PartialReflect) -> Result<(), ApplyError>

Tries to apply a reflected value to this value.

Functions the same as the apply function but returns an error instead of panicking.

§Handling Errors

This function may leave self in a partially mutated state if a error was encountered on the way. consider maintaining a cloned instance of this data you can switch to if a error is encountered.

Source

fn reflect_ref(&self) -> ReflectRef<'_>

Returns an immutable enumeration of “kinds” of type.

See ReflectRef.

Source

fn reflect_mut(&mut self) -> ReflectMut<'_>

Returns a mutable enumeration of “kinds” of type.

See ReflectMut.

Source

fn reflect_owned(self: Box<Self>) -> ReflectOwned

Returns an owned enumeration of “kinds” of type.

See ReflectOwned.

Provided Methods§

Source

fn apply(&mut self, value: &dyn PartialReflect)

Applies a reflected value to this value.

If Self implements a reflection subtrait, then the semantics of this method are as follows:

  • If Self is a Struct, then the value of each named field of value is applied to the corresponding named field of self. Fields which are not present in both structs are ignored.
  • If Self is a TupleStruct or Tuple, then the value of each numbered field is applied to the corresponding numbered field of self. Fields which are not present in both values are ignored.
  • If Self is an Enum, then the variant of self is updated to match the variant of value. The corresponding fields of that variant are applied from value onto self. Fields which are not present in both values are ignored.
  • If Self is a List or Array, then each element of value is applied to the corresponding element of self. Up to self.len() items are applied, and excess elements in value are appended to self.
  • If Self is a Map, then for each key in value, the associated value is applied to the value associated with the same key in self. Keys which are not present in self are inserted, and keys from self which are not present in value are removed.
  • If Self is a Set, then each element of value is applied to the corresponding element of Self. If an element of value does not exist in Self then it is cloned and inserted. If an element from self is not present in value then it is removed.
  • If Self is none of these, then value is downcast to Self, cloned, and assigned to self.

Note that Reflect must be implemented manually for Lists, Maps, and Sets in order to achieve the correct semantics, as derived implementations will have the semantics for Struct, TupleStruct, Enum or none of the above depending on the kind of type. For lists, maps, and sets, use the list_apply, map_apply, and set_apply helper functions when implementing this method.

§Panics

Derived implementations of this method will panic:

  • If the type of value is not of the same kind as Self (e.g. if Self is a List, while value is a Struct).
  • If Self is any complex type and the corresponding fields or elements of self and value are not of the same type.
  • If Self is an opaque type and value cannot be downcast to Self
Source

fn reflect_kind(&self) -> ReflectKind

Returns a zero-sized enumeration of “kinds” of type.

See ReflectKind.

Source

fn to_dynamic(&self) -> Box<dyn PartialReflect>

Converts this reflected value into its dynamic representation based on its kind.

For example, a List type will internally invoke List::to_dynamic_list, returning DynamicList. A Struct type will invoke Struct::to_dynamic_struct, returning DynamicStruct. And so on.

If the kind is opaque, then the value will attempt to be cloned directly via reflect_clone, since opaque types do not have any standard dynamic representation.

To attempt to clone the value directly such that it returns a concrete instance of this type, use reflect_clone.

§Panics

This method will panic if the kind is opaque and the call to reflect_clone fails.

§Example
let value = (1, true, 3.14);
let dynamic_value = value.to_dynamic();
assert!(dynamic_value.is_dynamic())
Source

fn reflect_clone(&self) -> Result<Box<dyn Reflect>, ReflectCloneError>

Attempts to clone Self using reflection.

Unlike to_dynamic, which generally returns a dynamic representation of Self, this method attempts create a clone of Self directly, if possible.

If the clone cannot be performed, an appropriate ReflectCloneError is returned.

§Example
let value = (1, true, 3.14);
let cloned = value.reflect_clone().unwrap();
assert!(cloned.is::<(i32, bool, f64)>())
Source

fn reflect_clone_and_take<T: 'static>(&self) -> Result<T, ReflectCloneError>
where Self: TypePath + Sized,

For a type implementing PartialReflect, combines reflect_clone and take in a useful fashion, automatically constructing an appropriate ReflectCloneError if the downcast fails.

This is an associated function, rather than a method, because methods with generic types prevent dyn-compatibility.

Source

fn reflect_hash(&self) -> Option<u64>

Returns a hash of the value (which includes the type).

If the underlying type does not support hashing, returns None.

Source

fn reflect_partial_eq(&self, _value: &dyn PartialReflect) -> Option<bool>

Returns a “partial equality” comparison result.

If the underlying type does not support equality testing, returns None.

Source

fn debug(&self, f: &mut Formatter<'_>) -> Result

Debug formatter for the value.

Any value that is not an implementor of other Reflect subtraits (e.g. List, Map), will default to the format: "Reflect(type_path)", where type_path is the type path of the underlying type.

Source

fn is_dynamic(&self) -> bool

Indicates whether or not this type is a dynamic type.

Dynamic types include the ones built-in to this crate, such as DynamicStruct, DynamicList, and DynamicTuple. However, they may be custom types used as proxies for other types or to facilitate scripting capabilities.

By default, this method will return false.

Implementations§

Source§

impl dyn PartialReflect

Source

pub fn represents<T: Reflect + TypePath>(&self) -> bool

Returns true if the underlying value represents a value of type T, or false otherwise.

Read is for more information on underlying values and represented types.

Source

pub fn try_downcast<T: Any>( self: Box<dyn PartialReflect>, ) -> Result<Box<T>, Box<dyn PartialReflect>>

Downcasts the value to type T, consuming the trait object.

If the underlying value does not implement Reflect or is not of type T, returns Err(self).

For remote types, T should be the type itself rather than the wrapper type.

Source

pub fn try_take<T: Any>( self: Box<dyn PartialReflect>, ) -> Result<T, Box<dyn PartialReflect>>

Downcasts the value to type T, unboxing and consuming the trait object.

If the underlying value does not implement Reflect or is not of type T, returns Err(self).

For remote types, T should be the type itself rather than the wrapper type.

Source

pub fn try_downcast_ref<T: Any>(&self) -> Option<&T>

Downcasts the value to type T by reference.

If the underlying value does not implement Reflect or is not of type T, returns None.

For remote types, T should be the type itself rather than the wrapper type.

Source

pub fn try_downcast_mut<T: Any>(&mut self) -> Option<&mut T>

Downcasts the value to type T by mutable reference.

If the underlying value does not implement Reflect or is not of type T, returns None.

For remote types, T should be the type itself rather than the wrapper type.

Trait Implementations§

Source§

impl Debug for dyn PartialReflect

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl TypePath for dyn PartialReflect

Source§

fn type_path() -> &'static str

Returns the fully qualified path of the underlying type. Read more
Source§

fn short_type_path() -> &'static str

Returns a short, pretty-print enabled path to the type. Read more
Source§

fn type_ident() -> Option<&'static str>

Returns the name of the type, or None if it is anonymous. Read more
Source§

fn crate_name() -> Option<&'static str>

Returns the name of the crate the type is in, or None if it is anonymous. Read more
Source§

fn module_path() -> Option<&'static str>

Returns the path to the module the type is in, or None if it is anonymous. Read more

Implementations on Foreign Types§

Source§

impl PartialReflect for &'static str

Source§

impl PartialReflect for &'static Location<'static>

Source§

impl PartialReflect for &'static Path

Source§

impl PartialReflect for EulerRot

Source§

impl PartialReflect for Cow<'static, str>

Source§

impl PartialReflect for Cow<'static, Path>

Source§

impl PartialReflect for SocketAddr

Source§

impl PartialReflect for bool

Source§

impl PartialReflect for char

Source§

impl PartialReflect for f32

Source§

impl PartialReflect for f64

Source§

impl PartialReflect for i8

Source§

impl PartialReflect for i16

Source§

impl PartialReflect for i32

Source§

impl PartialReflect for i64

Source§

impl PartialReflect for i128

Source§

impl PartialReflect for isize

Source§

impl PartialReflect for u8

Source§

impl PartialReflect for u16

Source§

impl PartialReflect for u32

Source§

impl PartialReflect for u64

Source§

impl PartialReflect for u128

Source§

impl PartialReflect for ()

Source§

impl PartialReflect for usize

Source§

impl PartialReflect for BVec2

Source§

impl PartialReflect for BVec3

Source§

impl PartialReflect for BVec4

Source§

impl PartialReflect for BVec3A

Source§

impl PartialReflect for BVec4A

Source§

impl PartialReflect for Affine2

Source§

impl PartialReflect for Affine3A

Source§

impl PartialReflect for Mat3

Source§

impl PartialReflect for Mat2

Source§

impl PartialReflect for Mat3A

Source§

impl PartialReflect for Mat4

Source§

impl PartialReflect for Quat

Source§

impl PartialReflect for Vec3A

Source§

impl PartialReflect for Vec4

Source§

impl PartialReflect for Vec2

Source§

impl PartialReflect for Vec3

Source§

impl PartialReflect for DAffine2

Source§

impl PartialReflect for DAffine3

Source§

impl PartialReflect for DMat2

Source§

impl PartialReflect for DMat3

Source§

impl PartialReflect for DMat4

Source§

impl PartialReflect for DQuat

Source§

impl PartialReflect for DVec2

Source§

impl PartialReflect for DVec3

Source§

impl PartialReflect for DVec4

Source§

impl PartialReflect for I8Vec2

Source§

impl PartialReflect for I8Vec3

Source§

impl PartialReflect for I8Vec4

Source§

impl PartialReflect for I16Vec2

Source§

impl PartialReflect for I16Vec3

Source§

impl PartialReflect for I16Vec4

Source§

impl PartialReflect for IVec2

Source§

impl PartialReflect for IVec3

Source§

impl PartialReflect for IVec4

Source§

impl PartialReflect for I64Vec2

Source§

impl PartialReflect for I64Vec3

Source§

impl PartialReflect for I64Vec4

Source§

impl PartialReflect for U8Vec2

Source§

impl PartialReflect for U8Vec3

Source§

impl PartialReflect for U8Vec4

Source§

impl PartialReflect for U16Vec2

Source§

impl PartialReflect for U16Vec3

Source§

impl PartialReflect for U16Vec4

Source§

impl PartialReflect for UVec2

Source§

impl PartialReflect for UVec3

Source§

impl PartialReflect for UVec4

Source§

impl PartialReflect for U64Vec2

Source§

impl PartialReflect for U64Vec3

Source§

impl PartialReflect for U64Vec4

Source§

impl PartialReflect for SmolStr

Source§

impl PartialReflect for NonNilUuid

Source§

impl PartialReflect for Uuid

Source§

impl PartialReflect for String

Source§

impl PartialReflect for TypeId

Source§

impl PartialReflect for RangeFull

Source§

impl PartialReflect for AtomicBool

Source§

impl PartialReflect for AtomicI8

Source§

impl PartialReflect for AtomicI16

Source§

impl PartialReflect for AtomicI32

Source§

impl PartialReflect for AtomicI64

Source§

impl PartialReflect for AtomicIsize

Source§

impl PartialReflect for AtomicU8

Source§

impl PartialReflect for AtomicU16

Source§

impl PartialReflect for AtomicU32

Source§

impl PartialReflect for AtomicU64

Source§

impl PartialReflect for AtomicUsize

Source§

impl PartialReflect for Duration

Source§

impl PartialReflect for OsString

Source§

impl PartialReflect for PathBuf

Source§

impl PartialReflect for Instant

Source§

impl PartialReflect for NonZeroI8

Source§

impl PartialReflect for NonZeroI16

Source§

impl PartialReflect for NonZeroI32

Source§

impl PartialReflect for NonZeroI64

Source§

impl PartialReflect for NonZeroI128

Source§

impl PartialReflect for NonZeroIsize

Source§

impl PartialReflect for NonZeroU8

Source§

impl PartialReflect for NonZeroU16

Source§

impl PartialReflect for NonZeroU32

Source§

impl PartialReflect for NonZeroU64

Source§

impl PartialReflect for NonZeroU128

Source§

impl PartialReflect for NonZeroUsize

Source§

impl<A: Reflect + MaybeTyped + TypePath + GetTypeRegistration> PartialReflect for (A,)

Source§

impl<A: Reflect + MaybeTyped + TypePath + GetTypeRegistration, B: Reflect + MaybeTyped + TypePath + GetTypeRegistration> PartialReflect for (A, B)

Source§

impl<A: Reflect + MaybeTyped + TypePath + GetTypeRegistration, B: Reflect + MaybeTyped + TypePath + GetTypeRegistration, C: Reflect + MaybeTyped + TypePath + GetTypeRegistration> PartialReflect for (A, B, C)

Source§

impl<A: Reflect + MaybeTyped + TypePath + GetTypeRegistration, B: Reflect + MaybeTyped + TypePath + GetTypeRegistration, C: Reflect + MaybeTyped + TypePath + GetTypeRegistration, D: Reflect + MaybeTyped + TypePath + GetTypeRegistration> PartialReflect for (A, B, C, D)

Source§

impl<A: Reflect + MaybeTyped + TypePath + GetTypeRegistration, B: Reflect + MaybeTyped + TypePath + GetTypeRegistration, C: Reflect + MaybeTyped + TypePath + GetTypeRegistration, D: Reflect + MaybeTyped + TypePath + GetTypeRegistration, E: Reflect + MaybeTyped + TypePath + GetTypeRegistration> PartialReflect for (A, B, C, D, E)

Source§

impl<A: Reflect + MaybeTyped + TypePath + GetTypeRegistration, B: Reflect + MaybeTyped + TypePath + GetTypeRegistration, C: Reflect + MaybeTyped + TypePath + GetTypeRegistration, D: Reflect + MaybeTyped + TypePath + GetTypeRegistration, E: Reflect + MaybeTyped + TypePath + GetTypeRegistration, F: Reflect + MaybeTyped + TypePath + GetTypeRegistration> PartialReflect for (A, B, C, D, E, F)

Source§

impl<A: Reflect + MaybeTyped + TypePath + GetTypeRegistration, B: Reflect + MaybeTyped + TypePath + GetTypeRegistration, C: Reflect + MaybeTyped + TypePath + GetTypeRegistration, D: Reflect + MaybeTyped + TypePath + GetTypeRegistration, E: Reflect + MaybeTyped + TypePath + GetTypeRegistration, F: Reflect + MaybeTyped + TypePath + GetTypeRegistration, G: Reflect + MaybeTyped + TypePath + GetTypeRegistration> PartialReflect for (A, B, C, D, E, F, G)

Source§

impl<A: Reflect + MaybeTyped + TypePath + GetTypeRegistration, B: Reflect + MaybeTyped + TypePath + GetTypeRegistration, C: Reflect + MaybeTyped + TypePath + GetTypeRegistration, D: Reflect + MaybeTyped + TypePath + GetTypeRegistration, E: Reflect + MaybeTyped + TypePath + GetTypeRegistration, F: Reflect + MaybeTyped + TypePath + GetTypeRegistration, G: Reflect + MaybeTyped + TypePath + GetTypeRegistration, H: Reflect + MaybeTyped + TypePath + GetTypeRegistration> PartialReflect for (A, B, C, D, E, F, G, H)

Source§

impl<A: Reflect + MaybeTyped + TypePath + GetTypeRegistration, B: Reflect + MaybeTyped + TypePath + GetTypeRegistration, C: Reflect + MaybeTyped + TypePath + GetTypeRegistration, D: Reflect + MaybeTyped + TypePath + GetTypeRegistration, E: Reflect + MaybeTyped + TypePath + GetTypeRegistration, F: Reflect + MaybeTyped + TypePath + GetTypeRegistration, G: Reflect + MaybeTyped + TypePath + GetTypeRegistration, H: Reflect + MaybeTyped + TypePath + GetTypeRegistration, I: Reflect + MaybeTyped + TypePath + GetTypeRegistration> PartialReflect for (A, B, C, D, E, F, G, H, I)

Source§

impl<A: Reflect + MaybeTyped + TypePath + GetTypeRegistration, B: Reflect + MaybeTyped + TypePath + GetTypeRegistration, C: Reflect + MaybeTyped + TypePath + GetTypeRegistration, D: Reflect + MaybeTyped + TypePath + GetTypeRegistration, E: Reflect + MaybeTyped + TypePath + GetTypeRegistration, F: Reflect + MaybeTyped + TypePath + GetTypeRegistration, G: Reflect + MaybeTyped + TypePath + GetTypeRegistration, H: Reflect + MaybeTyped + TypePath + GetTypeRegistration, I: Reflect + MaybeTyped + TypePath + GetTypeRegistration, J: Reflect + MaybeTyped + TypePath + GetTypeRegistration> PartialReflect for (A, B, C, D, E, F, G, H, I, J)

Source§

impl<A: Reflect + MaybeTyped + TypePath + GetTypeRegistration, B: Reflect + MaybeTyped + TypePath + GetTypeRegistration, C: Reflect + MaybeTyped + TypePath + GetTypeRegistration, D: Reflect + MaybeTyped + TypePath + GetTypeRegistration, E: Reflect + MaybeTyped + TypePath + GetTypeRegistration, F: Reflect + MaybeTyped + TypePath + GetTypeRegistration, G: Reflect + MaybeTyped + TypePath + GetTypeRegistration, H: Reflect + MaybeTyped + TypePath + GetTypeRegistration, I: Reflect + MaybeTyped + TypePath + GetTypeRegistration, J: Reflect + MaybeTyped + TypePath + GetTypeRegistration, K: Reflect + MaybeTyped + TypePath + GetTypeRegistration> PartialReflect for (A, B, C, D, E, F, G, H, I, J, K)

Source§

impl<A: Reflect + MaybeTyped + TypePath + GetTypeRegistration, B: Reflect + MaybeTyped + TypePath + GetTypeRegistration, C: Reflect + MaybeTyped + TypePath + GetTypeRegistration, D: Reflect + MaybeTyped + TypePath + GetTypeRegistration, E: Reflect + MaybeTyped + TypePath + GetTypeRegistration, F: Reflect + MaybeTyped + TypePath + GetTypeRegistration, G: Reflect + MaybeTyped + TypePath + GetTypeRegistration, H: Reflect + MaybeTyped + TypePath + GetTypeRegistration, I: Reflect + MaybeTyped + TypePath + GetTypeRegistration, J: Reflect + MaybeTyped + TypePath + GetTypeRegistration, K: Reflect + MaybeTyped + TypePath + GetTypeRegistration, L: Reflect + MaybeTyped + TypePath + GetTypeRegistration> PartialReflect for (A, B, C, D, E, F, G, H, I, J, K, L)

Source§

impl<K, V> PartialReflect for BTreeMap<K, V>
where K: FromReflect + MaybeTyped + TypePath + GetTypeRegistration + Eq + Ord, V: FromReflect + MaybeTyped + TypePath + GetTypeRegistration,

Source§

impl<K, V, S> PartialReflect for HashMap<K, V, S>

Source§

impl<K, V, S> PartialReflect for HashMap<K, V, S>

Source§

impl<T> PartialReflect for Bound<T>
where Bound<T>: Any + Send + Sync, T: TypePath + Clone + Send + Sync,

Source§

impl<T> PartialReflect for Option<T>
where Option<T>: Any + Send + Sync, T: TypePath + FromReflect + MaybeTyped + RegisterForReflection,

Source§

impl<T> PartialReflect for BinaryHeap<T>
where BinaryHeap<T>: Any + Send + Sync, T: TypePath + Clone,

Source§

impl<T> PartialReflect for BTreeSet<T>
where BTreeSet<T>: Any + Send + Sync, T: TypePath + Ord + Eq + Clone + Send + Sync,

Source§

impl<T> PartialReflect for Arc<T>
where Arc<T>: Any + Send + Sync, T: TypePath + Send + Sync + ?Sized,

Source§

impl<T> PartialReflect for Saturating<T>
where Saturating<T>: Any + Send + Sync, T: TypePath + Clone + Send + Sync,

Source§

impl<T> PartialReflect for Wrapping<T>
where Wrapping<T>: Any + Send + Sync, T: TypePath + Clone + Send + Sync,

Source§

impl<T> PartialReflect for Range<T>
where Range<T>: Any + Send + Sync, T: TypePath + Clone + Send + Sync,

Source§

impl<T> PartialReflect for RangeFrom<T>
where RangeFrom<T>: Any + Send + Sync, T: TypePath + Clone + Send + Sync,

Source§

impl<T> PartialReflect for RangeInclusive<T>
where RangeInclusive<T>: Any + Send + Sync, T: TypePath + Clone + Send + Sync,

Source§

impl<T> PartialReflect for RangeTo<T>
where RangeTo<T>: Any + Send + Sync, T: TypePath + Clone + Send + Sync,

Source§

impl<T> PartialReflect for RangeToInclusive<T>
where RangeToInclusive<T>: Any + Send + Sync, T: TypePath + Clone + Send + Sync,

Source§

impl<T, E> PartialReflect for Result<T, E>
where Result<T, E>: Any + Send + Sync, T: TypePath + FromReflect + MaybeTyped + RegisterForReflection, E: TypePath + FromReflect + MaybeTyped + RegisterForReflection,

Source§

impl<T: SmallArray + TypePath + Send + Sync> PartialReflect for SmallVec<T>
where T::Item: FromReflect + MaybeTyped + TypePath,

Source§

impl<T: FromReflect + MaybeTyped + Clone + TypePath + GetTypeRegistration> PartialReflect for Cow<'static, [T]>

Source§

impl<T: FromReflect + MaybeTyped + TypePath + GetTypeRegistration> PartialReflect for VecDeque<T>

Source§

impl<T: FromReflect + MaybeTyped + TypePath + GetTypeRegistration> PartialReflect for Vec<T>

Source§

impl<T: Reflect + MaybeTyped + TypePath + GetTypeRegistration, const N: usize> PartialReflect for [T; N]

Source§

impl<V, S> PartialReflect for HashSet<V, S>

Source§

impl<V, S> PartialReflect for HashSet<V, S>

Implementors§