Trait bevy::reflect::Struct

pub trait Struct: Reflect {
    // Required methods
    fn field(&self, name: &str) -> Option<&(dyn Reflect + 'static)>;
    fn field_mut(&mut self, name: &str) -> Option<&mut (dyn Reflect + 'static)>;
    fn field_at(&self, index: usize) -> Option<&(dyn Reflect + 'static)>;
    fn field_at_mut(
        &mut self,
        index: usize
    ) -> Option<&mut (dyn Reflect + 'static)>;
    fn name_at(&self, index: usize) -> Option<&str>;
    fn field_len(&self) -> usize;
    fn iter_fields(&self) -> FieldIter<'_> ;
    fn clone_dynamic(&self) -> DynamicStruct;
}
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::{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 Reflect = foo.field("bar").unwrap();
assert_eq!(field.downcast_ref::<u32>(), Some(&123));

Required Methods§

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

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

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

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

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

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

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

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

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

Returns the name of the field with index index.

fn field_len(&self) -> usize

Returns the number of fields in the struct.

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

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

fn clone_dynamic(&self) -> DynamicStruct

Clones the struct into a DynamicStruct.

Trait Implementations§

§

impl GetField for dyn Struct

§

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.
§

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§

§

impl Struct for AnimationGraph
where AnimationGraph: Any + Send + Sync, Graph<AnimationGraphNode, ()>: FromReflect + TypePath + RegisterForReflection, NodeIndex: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for AnimationGraphNode
where AnimationGraphNode: Any + Send + Sync, Option<Handle<AnimationClip>>: FromReflect + TypePath + RegisterForReflection, f32: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for AnimationTransition
where AnimationTransition: Any + Send + Sync, f32: FromReflect + TypePath + RegisterForReflection, NodeIndex: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for AnimationTransitions
where AnimationTransitions: Any + Send + Sync, Option<NodeIndex>: FromReflect + TypePath + RegisterForReflection, Vec<AnimationTransition>: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for ActiveAnimation
where ActiveAnimation: Any + Send + Sync, f32: FromReflect + TypePath + RegisterForReflection, RepeatAnimation: FromReflect + TypePath + RegisterForReflection, u32: FromReflect + TypePath + RegisterForReflection, bool: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for AnimationClip
where AnimationClip: Any + Send + Sync, HashMap<AnimationTargetId, Vec<VariableCurve>, NoOpHash>: FromReflect + TypePath + RegisterForReflection, f32: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for AnimationPlayer
where AnimationPlayer: Any + Send + Sync, BTreeMap<NodeIndex, ActiveAnimation>: FromReflect + TypePath + RegisterForReflection, HashMap<NodeIndex, f32>: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for AnimationTarget
where AnimationTarget: Any + Send + Sync, AnimationTargetId: FromReflect + TypePath + RegisterForReflection, Entity: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for VariableCurve
where VariableCurve: Any + Send + Sync, Vec<f32>: FromReflect + TypePath + RegisterForReflection, Keyframes: FromReflect + TypePath + RegisterForReflection, Interpolation: FromReflect + TypePath + RegisterForReflection,

§

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

§

impl Struct for GlobalVolume
where GlobalVolume: Any + Send + Sync, Volume: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for PlaybackSettings
where PlaybackSettings: Any + Send + Sync, PlaybackMode: FromReflect + TypePath + RegisterForReflection, Volume: FromReflect + TypePath + RegisterForReflection, f32: FromReflect + TypePath + RegisterForReflection, bool: FromReflect + TypePath + RegisterForReflection, Option<SpatialScale>: FromReflect + TypePath + RegisterForReflection,

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

impl Struct for BloomSettings
where BloomSettings: Any + Send + Sync, f32: FromReflect + TypePath + RegisterForReflection, BloomPrefilterSettings: FromReflect + TypePath + RegisterForReflection, BloomCompositeMode: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for ContrastAdaptiveSharpeningSettings
where ContrastAdaptiveSharpeningSettings: Any + Send + Sync, bool: FromReflect + TypePath + RegisterForReflection, f32: FromReflect + TypePath + RegisterForReflection,

§

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

§

impl Struct for Fxaa
where Fxaa: Any + Send + Sync, bool: FromReflect + TypePath + RegisterForReflection, Sensitivity: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for MotionBlur
where MotionBlur: Any + Send + Sync, f32: FromReflect + TypePath + RegisterForReflection, u32: FromReflect + TypePath + RegisterForReflection,

§

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

§

impl Struct for Camera3d
where Camera3d: Any + Send + Sync, Camera3dDepthLoadOp: FromReflect + TypePath + RegisterForReflection, Camera3dDepthTextureUsage: FromReflect + TypePath + RegisterForReflection, usize: FromReflect + TypePath + RegisterForReflection, ScreenSpaceTransmissionQuality: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for DeferredPrepass

§

impl Struct for DepthPrepass

§

impl Struct for MotionVectorPrepass

§

impl Struct for NormalPrepass

§

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

§

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

§

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

§

impl Struct for AabbGizmoConfigGroup
where AabbGizmoConfigGroup: Any + Send + Sync, bool: FromReflect + TypePath + RegisterForReflection, Option<Color>: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for DefaultGizmoConfigGroup

§

impl Struct for GizmoConfig
where GizmoConfig: Any + Send + Sync, bool: FromReflect + TypePath + RegisterForReflection, f32: FromReflect + TypePath + RegisterForReflection, GizmoLineStyle: FromReflect + TypePath + RegisterForReflection, RenderLayers: FromReflect + TypePath + RegisterForReflection, GizmoLineJoint: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for GizmoConfigStore

§

impl Struct for LightGizmoConfigGroup
where LightGizmoConfigGroup: Any + Send + Sync, bool: FromReflect + TypePath + RegisterForReflection, LightGizmoColor: FromReflect + TypePath + RegisterForReflection, Color: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for ShowAabbGizmo
where ShowAabbGizmo: Any + Send + Sync, Option<Color>: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for ShowLightGizmo
where ShowLightGizmo: Any + Send + Sync, Option<LightGizmoColor>: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for GltfExtras
where GltfExtras: Any + Send + Sync, String: FromReflect + TypePath + RegisterForReflection,

§

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

§

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

§

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

§

impl Struct for GamepadAxisChangedEvent
where GamepadAxisChangedEvent: Any + Send + Sync, Gamepad: FromReflect + TypePath + RegisterForReflection, GamepadAxisType: FromReflect + TypePath + RegisterForReflection, f32: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for GamepadButtonChangedEvent
where GamepadButtonChangedEvent: Any + Send + Sync, Gamepad: FromReflect + TypePath + RegisterForReflection, GamepadButtonType: FromReflect + TypePath + RegisterForReflection, f32: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for GamepadButtonInput
where GamepadButtonInput: Any + Send + Sync, GamepadButton: FromReflect + TypePath + RegisterForReflection, ButtonState: FromReflect + TypePath + RegisterForReflection,

§

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

§

impl Struct for GamepadInfo
where GamepadInfo: Any + Send + Sync, String: FromReflect + TypePath + RegisterForReflection,

§

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

§

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

§

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

§

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

§

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

§

impl Struct for Gamepad
where Gamepad: Any + Send + Sync, usize: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for GamepadAxis
where GamepadAxis: Any + Send + Sync, Gamepad: FromReflect + TypePath + RegisterForReflection, GamepadAxisType: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for GamepadButton
where GamepadButton: Any + Send + Sync, Gamepad: FromReflect + TypePath + RegisterForReflection, GamepadButtonType: FromReflect + TypePath + RegisterForReflection,

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

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

§

impl Struct for EnvironmentMapLight
where EnvironmentMapLight: Any + Send + Sync, Handle<Image>: FromReflect + TypePath + RegisterForReflection, f32: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for IrradianceVolume
where IrradianceVolume: Any + Send + Sync, Handle<Image>: FromReflect + TypePath + RegisterForReflection, f32: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for AmbientLight
where AmbientLight: Any + Send + Sync, Color: FromReflect + TypePath + RegisterForReflection, f32: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for Cascade
where Cascade: Any + Send + Sync, Mat4: FromReflect + TypePath + RegisterForReflection, f32: FromReflect + TypePath + RegisterForReflection,

§

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

§

impl Struct for Cascades
where Cascades: Any + Send + Sync, HashMap<Entity, Vec<Cascade>, EntityHash>: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for CascadesVisibleEntities

§

impl Struct for ClusterZConfig
where ClusterZConfig: Any + Send + Sync, f32: FromReflect + TypePath + RegisterForReflection, ClusterFarZMode: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for CubemapVisibleEntities

§

impl Struct for DirectionalLight
where DirectionalLight: Any + Send + Sync, Color: FromReflect + TypePath + RegisterForReflection, f32: FromReflect + TypePath + RegisterForReflection, bool: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for DirectionalLightShadowMap
where DirectionalLightShadowMap: Any + Send + Sync, usize: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for FogSettings
where FogSettings: Any + Send + Sync, Color: FromReflect + TypePath + RegisterForReflection, f32: FromReflect + TypePath + RegisterForReflection, FogFalloff: FromReflect + TypePath + RegisterForReflection,

§

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

§

impl Struct for Lightmap
where Lightmap: Any + Send + Sync, Handle<Image>: FromReflect + TypePath + RegisterForReflection, Rect: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for NotShadowCaster

§

impl Struct for NotShadowReceiver

§

impl Struct for PointLight
where PointLight: Any + Send + Sync, Color: FromReflect + TypePath + RegisterForReflection, f32: FromReflect + TypePath + RegisterForReflection, bool: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for PointLightShadowMap
where PointLightShadowMap: Any + Send + Sync, usize: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for ScreenSpaceAmbientOcclusionSettings

§

impl Struct for SpotLight
where SpotLight: Any + Send + Sync, Color: FromReflect + TypePath + RegisterForReflection, f32: FromReflect + TypePath + RegisterForReflection, bool: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for StandardMaterial
where StandardMaterial: Any + Send + Sync, Color: FromReflect + TypePath + RegisterForReflection, Option<Handle<Image>>: FromReflect + TypePath + RegisterForReflection, f32: FromReflect + TypePath + RegisterForReflection, bool: FromReflect + TypePath + RegisterForReflection, AlphaMode: FromReflect + TypePath + RegisterForReflection, ParallaxMappingMethod: FromReflect + TypePath + RegisterForReflection, OpaqueRendererMethod: FromReflect + TypePath + RegisterForReflection, u8: FromReflect + TypePath + RegisterForReflection, Affine2: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for TransmittedShadowReceiver

§

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

§

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

§

impl Struct for WireframeColor
where WireframeColor: Any + Send + Sync, Color: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for WireframeConfig
where WireframeConfig: Any + Send + Sync, bool: FromReflect + TypePath + RegisterForReflection, Color: FromReflect + TypePath + RegisterForReflection,

§

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

§

impl Struct for Viewport
where Viewport: Any + Send + Sync, UVec2: FromReflect + TypePath + RegisterForReflection, Range<f32>: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for GlobalsUniform
where GlobalsUniform: Any + Send + Sync, f32: FromReflect + TypePath + RegisterForReflection, u32: FromReflect + TypePath + RegisterForReflection,

§

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

§

impl Struct for SkinnedMesh
where SkinnedMesh: Any + Send + Sync, Handle<SkinnedMeshInverseBindposes>: FromReflect + TypePath + RegisterForReflection, Vec<Entity>: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for Camera
where Camera: Any + Send + Sync, Option<Viewport>: FromReflect + TypePath + RegisterForReflection, isize: FromReflect + TypePath + RegisterForReflection, bool: FromReflect + TypePath + RegisterForReflection, ClearColorConfig: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for Mesh
where Mesh: Any + Send + Sync, Option<Indices>: FromReflect + TypePath + RegisterForReflection, Option<Handle<Image>>: FromReflect + TypePath + RegisterForReflection, Option<Vec<String>>: FromReflect + TypePath + RegisterForReflection, RenderAssetUsages: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for MorphWeights
where MorphWeights: Any + Send + Sync, Vec<f32>: FromReflect + TypePath + RegisterForReflection, Option<Handle<Mesh>>: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for OrthographicProjection
where OrthographicProjection: Any + Send + Sync, f32: FromReflect + TypePath + RegisterForReflection, Vec2: FromReflect + TypePath + RegisterForReflection, ScalingMode: FromReflect + TypePath + RegisterForReflection, Rect: FromReflect + TypePath + RegisterForReflection,

§

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

§

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

§

impl Struct for CascadesFrusta

§

impl Struct for CubemapFrusta

§

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

§

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

§

impl Struct for NoFrustumCulling

§

impl Struct for VisibleEntities

§

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

§

impl Struct for ColorMaterial
where ColorMaterial: Any + Send + Sync, Color: FromReflect + TypePath + RegisterForReflection, Option<Handle<Image>>: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for NoWireframe2d

§

impl Struct for Sprite
where Sprite: Any + Send + Sync, Color: FromReflect + TypePath + RegisterForReflection, bool: FromReflect + TypePath + RegisterForReflection, Option<Vec2>: FromReflect + TypePath + RegisterForReflection, Option<Rect>: FromReflect + TypePath + RegisterForReflection, Anchor: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for SpriteSource

§

impl Struct for TextureAtlas
where TextureAtlas: Any + Send + Sync, Handle<TextureAtlasLayout>: FromReflect + TypePath + RegisterForReflection, usize: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for TextureAtlasLayout
where TextureAtlasLayout: Any + Send + Sync, UVec2: FromReflect + TypePath + RegisterForReflection, Vec<URect>: FromReflect + TypePath + RegisterForReflection, Option<HashMap<AssetId<Image>, usize>>: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for TextureSlicer
where TextureSlicer: Any + Send + Sync, BorderRect: FromReflect + TypePath + RegisterForReflection, SliceScaleMode: FromReflect + TypePath + RegisterForReflection, f32: FromReflect + TypePath + RegisterForReflection,

§

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

§

impl Struct for Wireframe2dColor
where Wireframe2dColor: Any + Send + Sync, Srgba: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for Wireframe2dConfig
where Wireframe2dConfig: Any + Send + Sync, bool: FromReflect + TypePath + RegisterForReflection, Srgba: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for GlyphAtlasInfo
where GlyphAtlasInfo: Any + Send + Sync, Handle<TextureAtlasLayout>: FromReflect + TypePath + RegisterForReflection, Handle<Image>: FromReflect + TypePath + RegisterForReflection, usize: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for PositionedGlyph
where PositionedGlyph: Any + Send + Sync, Vec2: FromReflect + TypePath + RegisterForReflection, GlyphAtlasInfo: FromReflect + TypePath + RegisterForReflection, usize: FromReflect + TypePath + RegisterForReflection,

§

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

§

impl Struct for Text
where Text: Any + Send + Sync, Vec<TextSection>: FromReflect + TypePath + RegisterForReflection, JustifyText: FromReflect + TypePath + RegisterForReflection, BreakLineOn: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for TextLayoutInfo
where TextLayoutInfo: Any + Send + Sync, Vec<PositionedGlyph>: FromReflect + TypePath + RegisterForReflection, Vec2: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for TextSection
where TextSection: Any + Send + Sync, String: FromReflect + TypePath + RegisterForReflection, TextStyle: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for TextStyle
where TextStyle: Any + Send + Sync, Handle<Font>: FromReflect + TypePath + RegisterForReflection, f32: FromReflect + TypePath + RegisterForReflection, Color: FromReflect + TypePath + RegisterForReflection,

§

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

§

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

§

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

§

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

§

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

§

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

§

impl Struct for BorderRadius
where BorderRadius: Any + Send + Sync, Val: FromReflect + TypePath + RegisterForReflection,

§

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

§

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

§

impl Struct for GridPlacement
where GridPlacement: Any + Send + Sync, Option<NonZero<i16>>: FromReflect + TypePath + RegisterForReflection, Option<NonZero<u16>>: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for GridTrack
where GridTrack: Any + Send + Sync, MinTrackSizingFunction: FromReflect + TypePath + RegisterForReflection, MaxTrackSizingFunction: FromReflect + TypePath + RegisterForReflection,

§

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

§

impl Struct for Outline
where Outline: Any + Send + Sync, Val: FromReflect + TypePath + RegisterForReflection, Color: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for Overflow
where Overflow: Any + Send + Sync, OverflowAxis: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for RelativeCursorPosition
where RelativeCursorPosition: Any + Send + Sync, Rect: FromReflect + TypePath + RegisterForReflection, Option<Vec2>: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for RepeatedGridTrack
where RepeatedGridTrack: Any + Send + Sync, GridTrackRepetition: FromReflect + TypePath + RegisterForReflection, SmallVec<[GridTrack; 1]>: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for Style
where Style: Any + Send + Sync, Display: FromReflect + TypePath + RegisterForReflection, PositionType: FromReflect + TypePath + RegisterForReflection, Overflow: FromReflect + TypePath + RegisterForReflection, Direction: FromReflect + TypePath + RegisterForReflection, Val: FromReflect + TypePath + RegisterForReflection, Option<f32>: FromReflect + TypePath + RegisterForReflection, AlignItems: FromReflect + TypePath + RegisterForReflection, JustifyItems: FromReflect + TypePath + RegisterForReflection, AlignSelf: FromReflect + TypePath + RegisterForReflection, JustifySelf: FromReflect + TypePath + RegisterForReflection, AlignContent: FromReflect + TypePath + RegisterForReflection, JustifyContent: FromReflect + TypePath + RegisterForReflection, UiRect: FromReflect + TypePath + RegisterForReflection, FlexDirection: FromReflect + TypePath + RegisterForReflection, FlexWrap: FromReflect + TypePath + RegisterForReflection, f32: FromReflect + TypePath + RegisterForReflection, GridAutoFlow: FromReflect + TypePath + RegisterForReflection, Vec<RepeatedGridTrack>: FromReflect + TypePath + RegisterForReflection, Vec<GridTrack>: FromReflect + TypePath + RegisterForReflection, GridPlacement: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for UiImage
where UiImage: Any + Send + Sync, Color: FromReflect + TypePath + RegisterForReflection, Handle<Image>: FromReflect + TypePath + RegisterForReflection, bool: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for UiRect
where UiRect: Any + Send + Sync, Val: FromReflect + TypePath + RegisterForReflection,

§

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

§

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

§

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

§

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

§

impl Struct for Cursor
where Cursor: Any + Send + Sync, CursorIcon: FromReflect + TypePath + RegisterForReflection, bool: FromReflect + TypePath + RegisterForReflection, CursorGrabMode: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for CursorEntered
where CursorEntered: Any + Send + Sync, Entity: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for CursorLeft
where CursorLeft: Any + Send + Sync, Entity: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for CursorMoved
where CursorMoved: Any + Send + Sync, Entity: FromReflect + TypePath + RegisterForReflection, Vec2: FromReflect + TypePath + RegisterForReflection, Option<Vec2>: FromReflect + TypePath + RegisterForReflection,

§

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

§

impl Struct for InternalWindowState
where InternalWindowState: Any + Send + Sync, Option<bool>: FromReflect + TypePath + RegisterForReflection, Option<DVec2>: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for PrimaryWindow

§

impl Struct for ReceivedCharacter
where ReceivedCharacter: Any + Send + Sync, Entity: FromReflect + TypePath + RegisterForReflection, SmolStr: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for RequestRedraw

§

impl Struct for Window
where Window: Any + Send + Sync, Cursor: FromReflect + TypePath + RegisterForReflection, PresentMode: FromReflect + TypePath + RegisterForReflection, WindowMode: FromReflect + TypePath + RegisterForReflection, WindowPosition: FromReflect + TypePath + RegisterForReflection, WindowResolution: FromReflect + TypePath + RegisterForReflection, String: FromReflect + TypePath + RegisterForReflection, Option<String>: FromReflect + TypePath + RegisterForReflection, CompositeAlphaMode: FromReflect + TypePath + RegisterForReflection, WindowResizeConstraints: FromReflect + TypePath + RegisterForReflection, bool: FromReflect + TypePath + RegisterForReflection, EnabledButtons: FromReflect + TypePath + RegisterForReflection, WindowLevel: FromReflect + TypePath + RegisterForReflection, InternalWindowState: FromReflect + TypePath + RegisterForReflection, Vec2: FromReflect + TypePath + RegisterForReflection, Option<WindowTheme>: FromReflect + TypePath + RegisterForReflection, Option<NonZero<u32>>: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for WindowBackendScaleFactorChanged
where WindowBackendScaleFactorChanged: Any + Send + Sync, Entity: FromReflect + TypePath + RegisterForReflection, f64: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for WindowCloseRequested
where WindowCloseRequested: Any + Send + Sync, Entity: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for WindowClosed
where WindowClosed: Any + Send + Sync, Entity: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for WindowCreated
where WindowCreated: Any + Send + Sync, Entity: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for WindowDestroyed
where WindowDestroyed: Any + Send + Sync, Entity: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for WindowFocused
where WindowFocused: Any + Send + Sync, Entity: FromReflect + TypePath + RegisterForReflection, bool: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for WindowMoved
where WindowMoved: Any + Send + Sync, Entity: FromReflect + TypePath + RegisterForReflection, IVec2: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for WindowOccluded
where WindowOccluded: Any + Send + Sync, Entity: FromReflect + TypePath + RegisterForReflection, bool: FromReflect + TypePath + RegisterForReflection,

§

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

§

impl Struct for WindowResized
where WindowResized: Any + Send + Sync, Entity: FromReflect + TypePath + RegisterForReflection, f32: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for WindowResolution
where WindowResolution: Any + Send + Sync, u32: FromReflect + TypePath + RegisterForReflection, Option<f32>: FromReflect + TypePath + RegisterForReflection, f32: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for WindowScaleFactorChanged
where WindowScaleFactorChanged: Any + Send + Sync, Entity: FromReflect + TypePath + RegisterForReflection, f64: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for WindowThemeChanged
where WindowThemeChanged: Any + Send + Sync, Entity: FromReflect + TypePath + RegisterForReflection, WindowTheme: FromReflect + TypePath + RegisterForReflection,

§

impl Struct for DynamicStruct

§

impl<B, E> Struct for ExtendedMaterial<B, E>
where B: Material + FromReflect + TypePath + RegisterForReflection, E: MaterialExtension + FromReflect + TypePath + RegisterForReflection, ExtendedMaterial<B, E>: Any + Send + Sync,

§

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

§

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

§

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

§

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

§

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