bevy::prelude

Trait Struct

source
pub trait Struct: PartialReflect {
    // Required methods
    fn field(&self, name: &str) -> Option<&(dyn PartialReflect + 'static)>;
    fn field_mut(
        &mut self,
        name: &str,
    ) -> Option<&mut (dyn PartialReflect + 'static)>;
    fn field_at(&self, index: usize) -> Option<&(dyn PartialReflect + 'static)>;
    fn field_at_mut(
        &mut self,
        index: usize,
    ) -> Option<&mut (dyn PartialReflect + 'static)>;
    fn name_at(&self, index: usize) -> Option<&str>;
    fn field_len(&self) -> usize;
    fn iter_fields(&self) -> FieldIter<'_> ;
    fn clone_dynamic(&self) -> DynamicStruct;

    // Provided method
    fn get_represented_struct_info(&self) -> Option<&'static StructInfo> { ... }
}
Expand description

A trait used to power struct-like operations via reflection.

This trait uses the Reflect trait to allow implementors to have their fields be dynamically addressed by both name and index.

When using #[derive(Reflect)] on a standard struct, this trait will be automatically implemented. This goes for unit structs as well.

§Example

use bevy_reflect::{PartialReflect, Reflect, Struct};

#[derive(Reflect)]
struct Foo {
    bar: u32,
}

let foo = Foo { bar: 123 };

assert_eq!(foo.field_len(), 1);
assert_eq!(foo.name_at(0), Some("bar"));

let field: &dyn PartialReflect = foo.field("bar").unwrap();
assert_eq!(field.try_downcast_ref::<u32>(), Some(&123));

Required Methods§

source

fn field(&self, name: &str) -> Option<&(dyn PartialReflect + 'static)>

Returns a reference to the value of the field named name as a &dyn PartialReflect.

source

fn field_mut( &mut self, name: &str, ) -> Option<&mut (dyn PartialReflect + 'static)>

Returns a mutable reference to the value of the field named name as a &mut dyn PartialReflect.

source

fn field_at(&self, index: usize) -> Option<&(dyn PartialReflect + 'static)>

Returns a reference to the value of the field with index index as a &dyn PartialReflect.

source

fn field_at_mut( &mut self, index: usize, ) -> Option<&mut (dyn PartialReflect + 'static)>

Returns a mutable reference to the value of the field with index index as a &mut dyn PartialReflect.

source

fn name_at(&self, index: usize) -> Option<&str>

Returns the name of the field with index index.

source

fn field_len(&self) -> usize

Returns the number of fields in the struct.

source

fn iter_fields(&self) -> FieldIter<'_>

Returns an iterator over the values of the reflectable fields for this struct.

source

fn clone_dynamic(&self) -> DynamicStruct

Clones the struct into a DynamicStruct.

Provided Methods§

source

fn get_represented_struct_info(&self) -> Option<&'static StructInfo>

Will return None if TypeInfo is not available.

Trait Implementations§

source§

impl GetField for dyn Struct

source§

fn get_field<T>(&self, name: &str) -> Option<&T>
where T: Reflect,

Returns a reference to the value of the field named name, downcast to T.
source§

fn get_field_mut<T>(&mut self, name: &str) -> Option<&mut T>
where T: Reflect,

Returns a mutable reference to the value of the field named name, downcast to T.

Implementors§

source§

impl Struct for Name
where Name: Any + Send + Sync, u64: FromReflect + TypePath + MaybeTyped + RegisterForReflection, Cow<'static, str>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for ComponentTicks
where ComponentTicks: Any + Send + Sync, Tick: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for Tick
where Tick: Any + Send + Sync, u32: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for EntityHash
where EntityHash: Any + Send + Sync,

source§

impl Struct for OnAdd
where OnAdd: Any + Send + Sync,

source§

impl Struct for OnInsert
where OnInsert: Any + Send + Sync,

source§

impl Struct for OnRemove
where OnRemove: Any + Send + Sync,

source§

impl Struct for OnReplace
where OnReplace: Any + Send + Sync,

source§

impl Struct for SystemIdMarker

source§

impl Struct for AxisSettings
where AxisSettings: Any + Send + Sync, f32: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for ButtonAxisSettings
where ButtonAxisSettings: Any + Send + Sync, f32: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for ButtonSettings
where ButtonSettings: Any + Send + Sync, f32: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for GamepadAxisChangedEvent
where GamepadAxisChangedEvent: Any + Send + Sync, Entity: FromReflect + TypePath + MaybeTyped + RegisterForReflection, GamepadAxis: FromReflect + TypePath + MaybeTyped + RegisterForReflection, f32: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for GamepadButtonChangedEvent
where GamepadButtonChangedEvent: Any + Send + Sync, Entity: FromReflect + TypePath + MaybeTyped + RegisterForReflection, GamepadButton: FromReflect + TypePath + MaybeTyped + RegisterForReflection, ButtonState: FromReflect + TypePath + MaybeTyped + RegisterForReflection, f32: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for GamepadButtonStateChangedEvent
where GamepadButtonStateChangedEvent: Any + Send + Sync, Entity: FromReflect + TypePath + MaybeTyped + RegisterForReflection, GamepadButton: FromReflect + TypePath + MaybeTyped + RegisterForReflection, ButtonState: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for GamepadConnectionEvent
where GamepadConnectionEvent: Any + Send + Sync, Entity: FromReflect + TypePath + MaybeTyped + RegisterForReflection, GamepadConnection: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for GamepadRumbleIntensity
where GamepadRumbleIntensity: Any + Send + Sync, f32: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for RawGamepadAxisChangedEvent
where RawGamepadAxisChangedEvent: Any + Send + Sync, Entity: FromReflect + TypePath + MaybeTyped + RegisterForReflection, GamepadAxis: FromReflect + TypePath + MaybeTyped + RegisterForReflection, f32: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for RawGamepadButtonChangedEvent
where RawGamepadButtonChangedEvent: Any + Send + Sync, Entity: FromReflect + TypePath + MaybeTyped + RegisterForReflection, GamepadButton: FromReflect + TypePath + MaybeTyped + RegisterForReflection, f32: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for DoubleTapGesture

source§

impl Struct for KeyboardFocusLost

source§

impl Struct for KeyboardInput
where KeyboardInput: Any + Send + Sync, KeyCode: FromReflect + TypePath + MaybeTyped + RegisterForReflection, Key: FromReflect + TypePath + MaybeTyped + RegisterForReflection, ButtonState: FromReflect + TypePath + MaybeTyped + RegisterForReflection, bool: FromReflect + TypePath + MaybeTyped + RegisterForReflection, Entity: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for AccumulatedMouseMotion
where AccumulatedMouseMotion: Any + Send + Sync, Vec2: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for AccumulatedMouseScroll
where AccumulatedMouseScroll: Any + Send + Sync, MouseScrollUnit: FromReflect + TypePath + MaybeTyped + RegisterForReflection, Vec2: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for MouseButtonInput
where MouseButtonInput: Any + Send + Sync, MouseButton: FromReflect + TypePath + MaybeTyped + RegisterForReflection, ButtonState: FromReflect + TypePath + MaybeTyped + RegisterForReflection, Entity: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for MouseMotion
where MouseMotion: Any + Send + Sync, Vec2: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for MouseWheel
where MouseWheel: Any + Send + Sync, MouseScrollUnit: FromReflect + TypePath + MaybeTyped + RegisterForReflection, f32: FromReflect + TypePath + MaybeTyped + RegisterForReflection, Entity: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for Gamepad
where Gamepad: Any + Send + Sync, Option<u16>: FromReflect + TypePath + MaybeTyped + RegisterForReflection, ButtonInput<GamepadButton>: FromReflect + TypePath + MaybeTyped + RegisterForReflection, Axis<GamepadInput>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for GamepadSettings
where GamepadSettings: Any + Send + Sync, ButtonSettings: FromReflect + TypePath + MaybeTyped + RegisterForReflection, AxisSettings: FromReflect + TypePath + MaybeTyped + RegisterForReflection, ButtonAxisSettings: FromReflect + TypePath + MaybeTyped + RegisterForReflection, HashMap<GamepadButton, ButtonSettings>: FromReflect + TypePath + MaybeTyped + RegisterForReflection, HashMap<GamepadAxis, AxisSettings>: FromReflect + TypePath + MaybeTyped + RegisterForReflection, HashMap<GamepadButton, ButtonAxisSettings>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for TouchInput
where TouchInput: Any + Send + Sync, TouchPhase: FromReflect + TypePath + MaybeTyped + RegisterForReflection, Vec2: FromReflect + TypePath + MaybeTyped + RegisterForReflection, Entity: FromReflect + TypePath + MaybeTyped + RegisterForReflection, Option<ForceTouch>: FromReflect + TypePath + MaybeTyped + RegisterForReflection, u64: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for BVec2
where BVec2: Any + Send + Sync, bool: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for BVec3
where BVec3: Any + Send + Sync, bool: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for BVec4
where BVec4: Any + Send + Sync, bool: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for Aabb2d
where Aabb2d: Any + Send + Sync, Vec2: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for Aabb3d
where Aabb3d: Any + Send + Sync, Vec3A: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for AabbCast2d
where AabbCast2d: Any + Send + Sync, RayCast2d: FromReflect + TypePath + MaybeTyped + RegisterForReflection, Aabb2d: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for AabbCast3d
where AabbCast3d: Any + Send + Sync, RayCast3d: FromReflect + TypePath + MaybeTyped + RegisterForReflection, Aabb3d: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for BoundingCircle
where BoundingCircle: Any + Send + Sync, Vec2: FromReflect + TypePath + MaybeTyped + RegisterForReflection, Circle: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for BoundingCircleCast
where BoundingCircleCast: Any + Send + Sync, RayCast2d: FromReflect + TypePath + MaybeTyped + RegisterForReflection, BoundingCircle: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for BoundingSphere
where BoundingSphere: Any + Send + Sync, Vec3A: FromReflect + TypePath + MaybeTyped + RegisterForReflection, Sphere: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for BoundingSphereCast
where BoundingSphereCast: Any + Send + Sync, RayCast3d: FromReflect + TypePath + MaybeTyped + RegisterForReflection, BoundingSphere: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for RayCast2d
where RayCast2d: Any + Send + Sync, Ray2d: FromReflect + TypePath + MaybeTyped + RegisterForReflection, f32: FromReflect + TypePath + MaybeTyped + RegisterForReflection, Vec2: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for RayCast3d
where RayCast3d: Any + Send + Sync, Vec3A: FromReflect + TypePath + MaybeTyped + RegisterForReflection, Dir3A: FromReflect + TypePath + MaybeTyped + RegisterForReflection, f32: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for Affine2
where Affine2: Any + Send + Sync, Mat2: FromReflect + TypePath + MaybeTyped + RegisterForReflection, Vec2: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for Affine3A
where Affine3A: Any + Send + Sync, Mat3A: FromReflect + TypePath + MaybeTyped + RegisterForReflection, Vec3A: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for Mat2
where Mat2: Any + Send + Sync, Vec2: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for Mat3
where Mat3: Any + Send + Sync, Vec3: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for Mat3A
where Mat3A: Any + Send + Sync, Vec3A: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for Mat4
where Mat4: Any + Send + Sync, Vec4: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for Quat
where Quat: Any + Send + Sync, f32: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for Vec2
where Vec2: Any + Send + Sync, f32: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for Vec3
where Vec3: Any + Send + Sync, f32: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for Vec3A
where Vec3A: Any + Send + Sync, f32: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for Vec4
where Vec4: Any + Send + Sync, f32: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for IVec2
where IVec2: Any + Send + Sync, i32: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for IVec3
where IVec3: Any + Send + Sync, i32: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for IVec4
where IVec4: Any + Send + Sync, i32: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for Annulus
where Annulus: Any + Send + Sync, Circle: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for Arc2d
where Arc2d: Any + Send + Sync, f32: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for Capsule2d
where Capsule2d: Any + Send + Sync, f32: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for Capsule3d
where Capsule3d: Any + Send + Sync, f32: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for Circle
where Circle: Any + Send + Sync, f32: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for CircularSector
where CircularSector: Any + Send + Sync, Arc2d: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for CircularSegment
where CircularSegment: Any + Send + Sync, Arc2d: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for Cone
where Cone: Any + Send + Sync, f32: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for ConicalFrustum
where ConicalFrustum: Any + Send + Sync, f32: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for Cuboid
where Cuboid: Any + Send + Sync, Vec3: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for Cylinder
where Cylinder: Any + Send + Sync, f32: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for Ellipse
where Ellipse: Any + Send + Sync, Vec2: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for InfinitePlane3d
where InfinitePlane3d: Any + Send + Sync, Dir3: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for Interval
where Interval: Any + Send + Sync, f32: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for Line2d
where Line2d: Any + Send + Sync, Dir2: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for Line3d
where Line3d: Any + Send + Sync, Dir3: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for Plane2d
where Plane2d: Any + Send + Sync, Dir2: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for Plane3d
where Plane3d: Any + Send + Sync, Dir3: FromReflect + TypePath + MaybeTyped + RegisterForReflection, Vec2: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for Rectangle
where Rectangle: Any + Send + Sync, Vec2: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for RegularPolygon
where RegularPolygon: Any + Send + Sync, Circle: FromReflect + TypePath + MaybeTyped + RegisterForReflection, u32: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for Rhombus
where Rhombus: Any + Send + Sync, Vec2: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for Segment2d
where Segment2d: Any + Send + Sync, Dir2: FromReflect + TypePath + MaybeTyped + RegisterForReflection, f32: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for Segment3d
where Segment3d: Any + Send + Sync, Dir3: FromReflect + TypePath + MaybeTyped + RegisterForReflection, f32: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for Sphere
where Sphere: Any + Send + Sync, f32: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for Tetrahedron
where Tetrahedron: Any + Send + Sync, [Vec3; 4]: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for Torus
where Torus: Any + Send + Sync, f32: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for Triangle2d
where Triangle2d: Any + Send + Sync, [Vec2; 3]: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for Triangle3d
where Triangle3d: Any + Send + Sync, [Vec3; 3]: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for Affine3
where Affine3: Any + Send + Sync, Mat3: FromReflect + TypePath + MaybeTyped + RegisterForReflection, Vec3: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for DAffine2
where DAffine2: Any + Send + Sync, DMat2: FromReflect + TypePath + MaybeTyped + RegisterForReflection, DVec2: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for DAffine3
where DAffine3: Any + Send + Sync, DMat3: FromReflect + TypePath + MaybeTyped + RegisterForReflection, DVec3: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for DMat2
where DMat2: Any + Send + Sync, DVec2: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for DMat3
where DMat3: Any + Send + Sync, DVec3: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for DMat4
where DMat4: Any + Send + Sync, DVec4: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for DQuat
where DQuat: Any + Send + Sync, f64: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for DVec2
where DVec2: Any + Send + Sync, f64: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for DVec3
where DVec3: Any + Send + Sync, f64: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for DVec4
where DVec4: Any + Send + Sync, f64: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for I64Vec2
where I64Vec2: Any + Send + Sync, i64: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for I64Vec3
where I64Vec3: Any + Send + Sync, i64: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for I64Vec4
where I64Vec4: Any + Send + Sync, i64: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for IRect
where IRect: Any + Send + Sync, IVec2: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for Isometry2d
where Isometry2d: Any + Send + Sync, Rot2: FromReflect + TypePath + MaybeTyped + RegisterForReflection, Vec2: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for Isometry3d
where Isometry3d: Any + Send + Sync, Quat: FromReflect + TypePath + MaybeTyped + RegisterForReflection, Vec3A: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for Ray2d
where Ray2d: Any + Send + Sync, Vec2: FromReflect + TypePath + MaybeTyped + RegisterForReflection, Dir2: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for Ray3d
where Ray3d: Any + Send + Sync, Vec3: FromReflect + TypePath + MaybeTyped + RegisterForReflection, Dir3: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for Rect
where Rect: Any + Send + Sync, Vec2: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for Rot2
where Rot2: Any + Send + Sync, f32: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for U64Vec2
where U64Vec2: Any + Send + Sync, u64: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for U64Vec3
where U64Vec3: Any + Send + Sync, u64: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for U64Vec4
where U64Vec4: Any + Send + Sync, u64: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for URect
where URect: Any + Send + Sync, UVec2: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for UVec2
where UVec2: Any + Send + Sync, u32: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for UVec3
where UVec3: Any + Send + Sync, u32: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for UVec4
where UVec4: Any + Send + Sync, u32: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for DynamicStruct

source§

impl Struct for Fixed
where Fixed: Any + Send + Sync, Duration: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for Real
where Real: Any + Send + Sync, Instant: FromReflect + TypePath + MaybeTyped + RegisterForReflection, Option<Instant>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for Stopwatch
where Stopwatch: Any + Send + Sync, Duration: FromReflect + TypePath + MaybeTyped + RegisterForReflection, bool: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for Timer
where Timer: Any + Send + Sync, Stopwatch: FromReflect + TypePath + MaybeTyped + RegisterForReflection, Duration: FromReflect + TypePath + MaybeTyped + RegisterForReflection, TimerMode: FromReflect + TypePath + MaybeTyped + RegisterForReflection, bool: FromReflect + TypePath + MaybeTyped + RegisterForReflection, u32: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for Virtual
where Virtual: Any + Send + Sync, Duration: FromReflect + TypePath + MaybeTyped + RegisterForReflection, bool: FromReflect + TypePath + MaybeTyped + RegisterForReflection, f64: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl Struct for Transform
where Transform: Any + Send + Sync, Vec3: FromReflect + TypePath + MaybeTyped + RegisterForReflection, Quat: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl<E> Struct for EventId<E>
where E: Event + TypePath, EventId<E>: Any + Send + Sync, usize: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl<E> Struct for Events<E>
where E: Event + TypePath, Events<E>: Any + Send + Sync, EventSequence<E>: FromReflect + TypePath + MaybeTyped + RegisterForReflection, usize: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl<P> Struct for LinearSpline<P>
where P: VectorSpace + TypePath, LinearSpline<P>: Any + Send + Sync, Vec<P>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl<P> Struct for CubicBSpline<P>
where P: VectorSpace + TypePath, CubicBSpline<P>: Any + Send + Sync, Vec<P>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl<P> Struct for CubicBezier<P>
where P: VectorSpace + TypePath, CubicBezier<P>: Any + Send + Sync, Vec<[P; 4]>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl<P> Struct for CubicCardinalSpline<P>
where P: VectorSpace + TypePath, CubicCardinalSpline<P>: Any + Send + Sync, f32: FromReflect + TypePath + MaybeTyped + RegisterForReflection, Vec<P>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl<P> Struct for CubicCurve<P>
where P: VectorSpace + TypePath, CubicCurve<P>: Any + Send + Sync, Vec<CubicSegment<P>>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl<P> Struct for CubicHermite<P>
where P: VectorSpace + TypePath, CubicHermite<P>: Any + Send + Sync, Vec<(P, P)>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl<P> Struct for CubicNurbs<P>
where P: VectorSpace + TypePath, CubicNurbs<P>: Any + Send + Sync, Vec<P>: FromReflect + TypePath + MaybeTyped + RegisterForReflection, Vec<f32>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl<P> Struct for CubicSegment<P>
where P: VectorSpace + TypePath, CubicSegment<P>: Any + Send + Sync, [P; 4]: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl<P> Struct for RationalCurve<P>
where P: VectorSpace + TypePath, RationalCurve<P>: Any + Send + Sync, Vec<RationalSegment<P>>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl<P> Struct for RationalSegment<P>
where P: VectorSpace + TypePath, RationalSegment<P>: Any + Send + Sync, [P; 4]: FromReflect + TypePath + MaybeTyped + RegisterForReflection, [f32; 4]: FromReflect + TypePath + MaybeTyped + RegisterForReflection, f32: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl<S, T, C, D> Struct for ZipCurve<S, T, C, D>
where ZipCurve<S, T, C, D>: Any + Send + Sync, S: TypePath, T: TypePath, C: TypePath + PartialReflect + MaybeTyped + RegisterForReflection, D: TypePath + PartialReflect + MaybeTyped + RegisterForReflection, Interval: PartialReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl<S, T, C, F> Struct for MapCurve<S, T, C, F>
where MapCurve<S, T, C, F>: Any + Send + Sync, C: PartialReflect + TypePath + MaybeTyped + RegisterForReflection, S: TypePath, T: TypePath,

source§

impl<T> Struct for Axis<T>
where Axis<T>: Any + Send + Sync, T: TypePath, HashMap<T, f32>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl<T> Struct for ButtonInput<T>
where T: Copy + Eq + Hash + Send + Sync + 'static + TypePath, ButtonInput<T>: Any + Send + Sync, HashSet<T>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl<T> Struct for ConstantCurve<T>
where ConstantCurve<T>: Any + Send + Sync, T: TypePath + FromReflect + MaybeTyped + RegisterForReflection, Interval: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl<T> Struct for EasingCurve<T>
where EasingCurve<T>: Any + Send + Sync, T: TypePath + FromReflect + MaybeTyped + RegisterForReflection, EaseFunction: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl<T> Struct for SampleAutoCurve<T>
where SampleAutoCurve<T>: Any + Send + Sync, T: TypePath, EvenCore<T>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl<T> Struct for UnevenSampleAutoCurve<T>
where UnevenSampleAutoCurve<T>: Any + Send + Sync, T: TypePath, UnevenCore<T>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl<T> Struct for Time<T>
where T: Default + TypePath + FromReflect + MaybeTyped + RegisterForReflection, Time<T>: Any + Send + Sync, Duration: FromReflect + TypePath + MaybeTyped + RegisterForReflection, f32: FromReflect + TypePath + MaybeTyped + RegisterForReflection, f64: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl<T> Struct for ChunkedUnevenCore<T>
where ChunkedUnevenCore<T>: Any + Send + Sync, T: TypePath, Vec<f32>: FromReflect + TypePath + MaybeTyped + RegisterForReflection, Vec<T>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl<T> Struct for EvenCore<T>
where EvenCore<T>: Any + Send + Sync, T: TypePath, Interval: FromReflect + TypePath + MaybeTyped + RegisterForReflection, Vec<T>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl<T> Struct for UnevenCore<T>
where UnevenCore<T>: Any + Send + Sync, T: TypePath, Vec<f32>: FromReflect + TypePath + MaybeTyped + RegisterForReflection, Vec<T>: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl<T, C> Struct for ForeverCurve<T, C>
where ForeverCurve<T, C>: Any + Send + Sync, T: TypePath, C: TypePath + PartialReflect + MaybeTyped + RegisterForReflection,

source§

impl<T, C> Struct for GraphCurve<T, C>
where GraphCurve<T, C>: Any + Send + Sync, T: TypePath, C: TypePath + PartialReflect + MaybeTyped + RegisterForReflection,

source§

impl<T, C> Struct for LinearReparamCurve<T, C>
where LinearReparamCurve<T, C>: Any + Send + Sync, T: TypePath, C: TypePath + PartialReflect + MaybeTyped + RegisterForReflection, Interval: PartialReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl<T, C> Struct for PingPongCurve<T, C>
where PingPongCurve<T, C>: Any + Send + Sync, T: TypePath, C: TypePath + PartialReflect + MaybeTyped + RegisterForReflection,

source§

impl<T, C> Struct for RepeatCurve<T, C>
where RepeatCurve<T, C>: Any + Send + Sync, T: TypePath, C: TypePath + PartialReflect + MaybeTyped + RegisterForReflection, Interval: PartialReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl<T, C> Struct for ReverseCurve<T, C>
where ReverseCurve<T, C>: Any + Send + Sync, T: TypePath, C: TypePath + PartialReflect + MaybeTyped + RegisterForReflection,

source§

impl<T, C, D> Struct for ChainCurve<T, C, D>
where ChainCurve<T, C, D>: Any + Send + Sync, T: TypePath, C: TypePath + PartialReflect + MaybeTyped + RegisterForReflection, D: TypePath + PartialReflect + MaybeTyped + RegisterForReflection,

source§

impl<T, C, D> Struct for ContinuationCurve<T, C, D>
where ContinuationCurve<T, C, D>: Any + Send + Sync, T: TypePath + PartialReflect + MaybeTyped + RegisterForReflection, C: TypePath + PartialReflect + MaybeTyped + RegisterForReflection, D: TypePath + PartialReflect + MaybeTyped + RegisterForReflection,

source§

impl<T, C, D> Struct for CurveReparamCurve<T, C, D>
where CurveReparamCurve<T, C, D>: Any + Send + Sync, T: TypePath, C: TypePath + PartialReflect + MaybeTyped + RegisterForReflection, D: TypePath + PartialReflect + MaybeTyped + RegisterForReflection,

source§

impl<T, C, F> Struct for ReparamCurve<T, C, F>
where ReparamCurve<T, C, F>: Any + Send + Sync, Interval: PartialReflect + TypePath + MaybeTyped + RegisterForReflection, C: PartialReflect + TypePath + MaybeTyped + RegisterForReflection, T: TypePath,

source§

impl<T, F> Struct for FunctionCurve<T, F>
where FunctionCurve<T, F>: Any + Send + Sync, Interval: PartialReflect + TypePath + MaybeTyped + RegisterForReflection, T: TypePath,

source§

impl<T, I> Struct for SampleCurve<T, I>
where SampleCurve<T, I>: Any + Send + Sync, EvenCore<T>: PartialReflect + TypePath + MaybeTyped + RegisterForReflection, T: TypePath,

source§

impl<T, I> Struct for UnevenSampleCurve<T, I>
where UnevenSampleCurve<T, I>: Any + Send + Sync, UnevenCore<T>: PartialReflect + TypePath + MaybeTyped + RegisterForReflection, T: TypePath,

source§

impl<const N: usize> Struct for ConvexPolygon<N>
where ConvexPolygon<N>: Any + Send + Sync, [Vec2; N]: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl<const N: usize> Struct for Polygon<N>
where Polygon<N>: Any + Send + Sync, [Vec2; N]: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl<const N: usize> Struct for Polyline2d<N>
where Polyline2d<N>: Any + Send + Sync, [Vec2; N]: FromReflect + TypePath + MaybeTyped + RegisterForReflection,

source§

impl<const N: usize> Struct for Polyline3d<N>
where Polyline3d<N>: Any + Send + Sync, [Vec3; N]: FromReflect + TypePath + MaybeTyped + RegisterForReflection,