1#[cfg(feature = "std")]
2use alloc::format;
3use alloc::{borrow::ToOwned, string::String};
4use core::num::NonZero;
5
6use bevy_ecs::{
7 entity::{ContainsEntity, Entity},
8 prelude::Component,
9};
10use bevy_math::{CompassOctant, DVec2, IVec2, UVec2, Vec2};
11use bevy_platform::sync::LazyLock;
12use log::warn;
13
14#[cfg(feature = "bevy_reflect")]
15use {
16 bevy_ecs::prelude::ReflectComponent,
17 bevy_reflect::{std_traits::ReflectDefault, Reflect},
18};
19
20#[cfg(all(feature = "serialize", feature = "bevy_reflect"))]
21use bevy_reflect::{ReflectDeserialize, ReflectSerialize};
22
23use crate::VideoMode;
24
25static DEFAULT_WINDOW_TITLE: LazyLock<String> = LazyLock::new(|| {
29 #[cfg(feature = "std")]
30 {
31 std::env::current_exe()
32 .ok()
33 .and_then(|current_exe| Some(::alloc::__export::must_use({
::alloc::fmt::format(format_args!("{0}",
current_exe.file_stem()?.to_string_lossy()))
})format!("{}", current_exe.file_stem()?.to_string_lossy())))
34 .unwrap_or_else(|| "App".to_owned())
35 }
36
37 #[cfg(not(feature = "std"))]
38 {
39 "App".to_owned()
40 }
41});
42
43#[derive(#[automatically_derived]
impl ::core::default::Default for PrimaryWindow {
#[inline]
fn default() -> PrimaryWindow { PrimaryWindow {} }
}Default, #[automatically_derived]
impl ::core::fmt::Debug for PrimaryWindow {
#[inline]
fn fmt(&self, f: &mut ::core::fmt::Formatter) -> ::core::fmt::Result {
::core::fmt::Formatter::write_str(f, "PrimaryWindow")
}
}Debug, impl bevy_ecs::component::Component for PrimaryWindow where
Self: ::core::marker::Send + ::core::marker::Sync + 'static {
const STORAGE_TYPE: bevy_ecs::component::StorageType =
bevy_ecs::component::StorageType::Table;
type Mutability = bevy_ecs::component::Mutable;
fn register_required_components(_requiree:
bevy_ecs::component::ComponentId,
required_components:
&mut bevy_ecs::component::RequiredComponentsRegistrator) {}
fn clone_behavior() -> bevy_ecs::component::ComponentCloneBehavior {
use bevy_ecs::component::{
DefaultCloneBehaviorBase, DefaultCloneBehaviorViaClone,
};
(&&&bevy_ecs::component::DefaultCloneBehaviorSpecialization::<Self>::default()).default_clone_behavior()
}
fn relationship_accessor()
->
::core::option::Option<bevy_ecs::relationship::ComponentRelationshipAccessor<Self>> {
::core::option::Option::None
}
}Component, #[automatically_derived]
impl ::core::cmp::PartialEq for PrimaryWindow {
#[inline]
fn eq(&self, other: &PrimaryWindow) -> bool { true }
}PartialEq, #[automatically_derived]
impl ::core::cmp::Eq for PrimaryWindow {
#[inline]
#[doc(hidden)]
#[coverage(off)]
fn assert_fields_are_eq(&self) {}
}Eq, #[automatically_derived]
impl ::core::cmp::PartialOrd for PrimaryWindow {
#[inline]
fn partial_cmp(&self, other: &PrimaryWindow)
-> ::core::option::Option<::core::cmp::Ordering> {
::core::option::Option::Some(::core::cmp::Ordering::Equal)
}
}PartialOrd, #[automatically_derived]
impl ::core::cmp::Ord for PrimaryWindow {
#[inline]
fn cmp(&self, other: &PrimaryWindow) -> ::core::cmp::Ordering {
::core::cmp::Ordering::Equal
}
}Ord, #[automatically_derived]
impl ::core::marker::Copy for PrimaryWindow { }Copy, #[automatically_derived]
impl ::core::clone::Clone for PrimaryWindow {
#[inline]
fn clone(&self) -> PrimaryWindow { *self }
}Clone)]
51#[cfg_attr(
52 feature = "bevy_reflect",
53 derive(const _: () =
{
impl bevy_reflect::GetTypeRegistration for PrimaryWindow where {
fn get_type_registration() -> bevy_reflect::TypeRegistration {
let mut registration =
bevy_reflect::TypeRegistration::of::<Self>();
registration.insert::<bevy_reflect::ReflectFromPtr>(bevy_reflect::FromType::<Self>::from_type());
registration.insert::<bevy_reflect::ReflectFromReflect>(bevy_reflect::FromType::<Self>::from_type());
registration.register_type_data::<ReflectComponent, Self>();
registration.register_type_data::<ReflectDefault, Self>();
registration
}
#[inline(never)]
fn register_type_dependencies(registry:
&mut bevy_reflect::TypeRegistry) {}
}
impl bevy_reflect::Typed for PrimaryWindow where {
#[inline]
fn type_info() -> &'static bevy_reflect::TypeInfo {
static CELL: bevy_reflect::utility::NonGenericTypeInfoCell =
bevy_reflect::utility::NonGenericTypeInfoCell::new();
CELL.get_or_set(||
{
bevy_reflect::TypeInfo::Struct(bevy_reflect::structs::StructInfo::new::<Self>(&[]))
})
}
}
#[allow(deprecated, reason =
"derives on a deprecated type shouldn't be considered a usage")]
impl bevy_reflect::TypePath for PrimaryWindow where {
fn type_path() -> &'static str {
"bevy_window::window::PrimaryWindow"
}
fn short_type_path() -> &'static str { "PrimaryWindow" }
fn type_ident() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("PrimaryWindow")
}
fn crate_name() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("bevy_window::window".split(':').next().unwrap())
}
fn module_path() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("bevy_window::window")
}
}
impl bevy_reflect::Reflect for PrimaryWindow where {
#[inline]
fn into_any(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn ::core::any::Any> {
self
}
#[inline]
fn as_any(&self) -> &dyn ::core::any::Any { self }
#[inline]
fn as_any_mut(&mut self) -> &mut dyn ::core::any::Any { self }
#[inline]
fn into_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect> {
self
}
#[inline]
fn as_reflect(&self) -> &dyn bevy_reflect::Reflect { self }
#[inline]
fn as_reflect_mut(&mut self) -> &mut dyn bevy_reflect::Reflect {
self
}
#[inline]
fn set(&mut self,
value:
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>)
->
::core::result::Result<(),
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>> {
*self = <dyn bevy_reflect::Reflect>::take(value)?;
::core::result::Result::Ok(())
}
}
#[allow(non_upper_case_globals)]
const _: () =
{
static __INVENTORY: ::inventory::Node =
::inventory::Node {
value: &{
bevy_reflect::__macro_exports::auto_register::AutomaticReflectRegistrations(<PrimaryWindow
as
bevy_reflect::__macro_exports::auto_register::RegisterForReflection>::__register)
},
next: ::inventory::__private::UnsafeCell::new(::inventory::__private::Option::None),
};
#[link_section = ".text.startup"]
unsafe extern "C" fn __ctor() {
unsafe {
::inventory::ErasedNode::submit(__INVENTORY.value,
&__INVENTORY)
}
}
#[used]
#[link_section = ".init_array"]
static __CTOR: unsafe extern "C" fn() = __ctor;
};
impl bevy_reflect::structs::Struct for PrimaryWindow where {
fn field(&self, name: &str)
-> ::core::option::Option<&dyn bevy_reflect::PartialReflect> {
match name { _ => ::core::option::Option::None, }
}
fn field_mut(&mut self, name: &str)
->
::core::option::Option<&mut dyn bevy_reflect::PartialReflect> {
match name { _ => ::core::option::Option::None, }
}
fn field_at(&self, index: usize)
-> ::core::option::Option<&dyn bevy_reflect::PartialReflect> {
match index { _ => ::core::option::Option::None, }
}
fn field_at_mut(&mut self, index: usize)
->
::core::option::Option<&mut dyn bevy_reflect::PartialReflect> {
match index { _ => ::core::option::Option::None, }
}
fn name_at(&self, index: usize) -> ::core::option::Option<&str> {
match index { _ => ::core::option::Option::None, }
}
fn index_of_name(&self, name: &str)
-> ::core::option::Option<usize> {
match name { _ => ::core::option::Option::None, }
}
fn field_len(&self) -> usize { 0usize }
fn iter_fields(&self) -> bevy_reflect::structs::FieldIter {
bevy_reflect::structs::FieldIter::new(self)
}
fn to_dynamic_struct(&self)
-> bevy_reflect::structs::DynamicStruct {
let mut dynamic: bevy_reflect::structs::DynamicStruct =
::core::default::Default::default();
dynamic.set_represented_type(bevy_reflect::PartialReflect::get_represented_type_info(self));
dynamic
}
}
impl bevy_reflect::PartialReflect for PrimaryWindow where {
#[inline]
fn get_represented_type_info(&self)
-> ::core::option::Option<&'static bevy_reflect::TypeInfo> {
::core::option::Option::Some(<Self as
bevy_reflect::Typed>::type_info())
}
#[inline]
fn try_apply(&mut self, value: &dyn bevy_reflect::PartialReflect)
-> ::core::result::Result<(), bevy_reflect::ApplyError> {
if let bevy_reflect::ReflectRef::Struct(struct_value) =
bevy_reflect::PartialReflect::reflect_ref(value) {
for (name, value) in
bevy_reflect::structs::Struct::iter_fields(struct_value) {
if let ::core::option::Option::Some(v) =
bevy_reflect::structs::Struct::field_mut(self, name) {
bevy_reflect::PartialReflect::try_apply(v, value)?;
}
}
} else {
return ::core::result::Result::Err(bevy_reflect::ApplyError::MismatchedKinds {
from_kind: bevy_reflect::PartialReflect::reflect_kind(value),
to_kind: bevy_reflect::ReflectKind::Struct,
});
}
::core::result::Result::Ok(())
}
#[inline]
fn reflect_kind(&self) -> bevy_reflect::ReflectKind {
bevy_reflect::ReflectKind::Struct
}
#[inline]
fn reflect_ref(&self) -> bevy_reflect::ReflectRef {
bevy_reflect::ReflectRef::Struct(self)
}
#[inline]
fn reflect_mut(&mut self) -> bevy_reflect::ReflectMut {
bevy_reflect::ReflectMut::Struct(self)
}
#[inline]
fn reflect_owned(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
-> bevy_reflect::ReflectOwned {
bevy_reflect::ReflectOwned::Struct(self)
}
#[inline]
fn try_into_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
::core::result::Result<bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>,
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::PartialReflect>> {
::core::result::Result::Ok(self)
}
#[inline]
fn try_as_reflect(&self)
-> ::core::option::Option<&dyn bevy_reflect::Reflect> {
::core::option::Option::Some(self)
}
#[inline]
fn try_as_reflect_mut(&mut self)
-> ::core::option::Option<&mut dyn bevy_reflect::Reflect> {
::core::option::Option::Some(self)
}
#[inline]
fn into_partial_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::PartialReflect> {
self
}
#[inline]
fn as_partial_reflect(&self)
-> &dyn bevy_reflect::PartialReflect {
self
}
#[inline]
fn as_partial_reflect_mut(&mut self)
-> &mut dyn bevy_reflect::PartialReflect {
self
}
fn reflect_partial_eq(&self,
value: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<bool> {
let value =
<dyn bevy_reflect::PartialReflect>::try_downcast_ref::<Self>(value);
if let ::core::option::Option::Some(value) = value {
::core::option::Option::Some(::core::cmp::PartialEq::eq(self,
value))
} else { ::core::option::Option::Some(false) }
}
fn reflect_partial_cmp(&self,
value: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<::core::cmp::Ordering> {
(bevy_reflect::structs::struct_partial_cmp)(self, value)
}
fn debug(&self, f: &mut ::core::fmt::Formatter<'_>)
-> ::core::fmt::Result {
::core::fmt::Debug::fmt(self, f)
}
#[inline]
fn reflect_clone(&self)
->
::core::result::Result<bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>,
bevy_reflect::ReflectCloneError> {
::core::result::Result::Ok(bevy_reflect::__macro_exports::alloc_utils::Box::new(::core::clone::Clone::clone(self)))
}
}
impl bevy_reflect::FromReflect for PrimaryWindow where {
fn from_reflect(reflect: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<Self> {
if let bevy_reflect::ReflectRef::Struct(__ref_struct) =
bevy_reflect::PartialReflect::reflect_ref(reflect) {
let mut __this =
<Self as ::core::default::Default>::default();
::core::option::Option::Some(__this)
} else { ::core::option::Option::None }
}
}
};Reflect),
54 reflect(Component, Debug, Default, PartialEq, Clone)
55)]
56pub struct PrimaryWindow;
57
58#[repr(C)]
61#[derive(#[automatically_derived]
impl ::core::default::Default for WindowRef {
#[inline]
fn default() -> WindowRef { Self::Primary }
}Default, #[automatically_derived]
impl ::core::marker::Copy for WindowRef { }Copy, #[automatically_derived]
impl ::core::clone::Clone for WindowRef {
#[inline]
fn clone(&self) -> WindowRef {
let _: ::core::clone::AssertParamIsClone<Entity>;
*self
}
}Clone, #[automatically_derived]
impl ::core::fmt::Debug for WindowRef {
#[inline]
fn fmt(&self, f: &mut ::core::fmt::Formatter) -> ::core::fmt::Result {
match self {
WindowRef::Primary =>
::core::fmt::Formatter::write_str(f, "Primary"),
WindowRef::Entity(__self_0) =>
::core::fmt::Formatter::debug_tuple_field1_finish(f, "Entity",
&__self_0),
}
}
}Debug)]
62#[cfg_attr(
63 feature = "bevy_reflect",
64 derive(const _: () =
{
impl bevy_reflect::GetTypeRegistration for WindowRef where {
fn get_type_registration() -> bevy_reflect::TypeRegistration {
let mut registration =
bevy_reflect::TypeRegistration::of::<Self>();
registration.insert::<bevy_reflect::ReflectFromPtr>(bevy_reflect::FromType::<Self>::from_type());
registration.insert::<bevy_reflect::ReflectFromReflect>(bevy_reflect::FromType::<Self>::from_type());
registration.register_type_data::<ReflectDefault, Self>();
registration.register_type_data::<ReflectSerialize, Self>();
registration.register_type_data::<ReflectDeserialize, Self>();
registration
}
#[inline(never)]
fn register_type_dependencies(registry:
&mut bevy_reflect::TypeRegistry) {
<Entity as
bevy_reflect::__macro_exports::RegisterForReflection>::__register(registry);
}
}
impl bevy_reflect::Typed for WindowRef where {
#[inline]
fn type_info() -> &'static bevy_reflect::TypeInfo {
static CELL: bevy_reflect::utility::NonGenericTypeInfoCell =
bevy_reflect::utility::NonGenericTypeInfoCell::new();
CELL.get_or_set(||
{
bevy_reflect::TypeInfo::Enum(bevy_reflect::enums::EnumInfo::new::<Self>(&[bevy_reflect::enums::VariantInfo::Unit(bevy_reflect::enums::UnitVariantInfo::new("Primary")),
bevy_reflect::enums::VariantInfo::Tuple(bevy_reflect::enums::TupleVariantInfo::new("Entity",
&[bevy_reflect::UnnamedField::new::<Entity>(0usize)]))]))
})
}
}
#[allow(deprecated, reason =
"derives on a deprecated type shouldn't be considered a usage")]
impl bevy_reflect::TypePath for WindowRef where {
fn type_path() -> &'static str {
"bevy_window::window::WindowRef"
}
fn short_type_path() -> &'static str { "WindowRef" }
fn type_ident() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("WindowRef")
}
fn crate_name() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("bevy_window::window".split(':').next().unwrap())
}
fn module_path() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("bevy_window::window")
}
}
impl bevy_reflect::Reflect for WindowRef where {
#[inline]
fn into_any(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn ::core::any::Any> {
self
}
#[inline]
fn as_any(&self) -> &dyn ::core::any::Any { self }
#[inline]
fn as_any_mut(&mut self) -> &mut dyn ::core::any::Any { self }
#[inline]
fn into_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect> {
self
}
#[inline]
fn as_reflect(&self) -> &dyn bevy_reflect::Reflect { self }
#[inline]
fn as_reflect_mut(&mut self) -> &mut dyn bevy_reflect::Reflect {
self
}
#[inline]
fn set(&mut self,
value:
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>)
->
::core::result::Result<(),
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>> {
*self = <dyn bevy_reflect::Reflect>::take(value)?;
::core::result::Result::Ok(())
}
}
#[allow(non_upper_case_globals)]
const _: () =
{
static __INVENTORY: ::inventory::Node =
::inventory::Node {
value: &{
bevy_reflect::__macro_exports::auto_register::AutomaticReflectRegistrations(<WindowRef
as
bevy_reflect::__macro_exports::auto_register::RegisterForReflection>::__register)
},
next: ::inventory::__private::UnsafeCell::new(::inventory::__private::Option::None),
};
#[link_section = ".text.startup"]
unsafe extern "C" fn __ctor() {
unsafe {
::inventory::ErasedNode::submit(__INVENTORY.value,
&__INVENTORY)
}
}
#[used]
#[link_section = ".init_array"]
static __CTOR: unsafe extern "C" fn() = __ctor;
};
impl bevy_reflect::enums::Enum for WindowRef where {
fn field(&self, __name_param: &str)
-> ::core::option::Option<&dyn bevy_reflect::PartialReflect> {
match self { _ => ::core::option::Option::None, }
}
fn field_at(&self, __index_param: usize)
-> ::core::option::Option<&dyn bevy_reflect::PartialReflect> {
match self {
WindowRef::Entity { 0: __value, .. } if
__index_param == 0usize =>
::core::option::Option::Some(__value),
_ => ::core::option::Option::None,
}
}
fn field_mut(&mut self, __name_param: &str)
->
::core::option::Option<&mut dyn bevy_reflect::PartialReflect> {
match self { _ => ::core::option::Option::None, }
}
fn field_at_mut(&mut self, __index_param: usize)
->
::core::option::Option<&mut dyn bevy_reflect::PartialReflect> {
match self {
WindowRef::Entity { 0: __value, .. } if
__index_param == 0usize =>
::core::option::Option::Some(__value),
_ => ::core::option::Option::None,
}
}
fn index_of(&self, __name_param: &str)
-> ::core::option::Option<usize> {
match self { _ => ::core::option::Option::None, }
}
fn name_at(&self, __index_param: usize)
-> ::core::option::Option<&str> {
match self { _ => ::core::option::Option::None, }
}
fn iter_fields(&self) -> bevy_reflect::enums::VariantFieldIter {
bevy_reflect::enums::VariantFieldIter::new(self)
}
#[inline]
fn field_len(&self) -> usize {
match self {
WindowRef::Primary { .. } => 0usize,
WindowRef::Entity { .. } => 1usize,
_ => 0,
}
}
#[inline]
fn variant_name(&self) -> &str {
match self {
WindowRef::Primary { .. } => "Primary",
WindowRef::Entity { .. } => "Entity",
_ =>
::core::panicking::panic("internal error: entered unreachable code"),
}
}
#[inline]
fn variant_index(&self) -> usize {
match self {
WindowRef::Primary { .. } => 0usize,
WindowRef::Entity { .. } => 1usize,
_ =>
::core::panicking::panic("internal error: entered unreachable code"),
}
}
#[inline]
fn variant_type(&self) -> bevy_reflect::enums::VariantType {
match self {
WindowRef::Primary { .. } =>
bevy_reflect::enums::VariantType::Unit,
WindowRef::Entity { .. } =>
bevy_reflect::enums::VariantType::Tuple,
_ =>
::core::panicking::panic("internal error: entered unreachable code"),
}
}
fn to_dynamic_enum(&self) -> bevy_reflect::enums::DynamicEnum {
bevy_reflect::enums::DynamicEnum::from_ref::<Self>(self)
}
}
impl bevy_reflect::PartialReflect for WindowRef where {
#[inline]
fn get_represented_type_info(&self)
-> ::core::option::Option<&'static bevy_reflect::TypeInfo> {
::core::option::Option::Some(<Self as
bevy_reflect::Typed>::type_info())
}
#[inline]
fn try_apply(&mut self,
__value_param: &dyn bevy_reflect::PartialReflect)
-> ::core::result::Result<(), bevy_reflect::ApplyError> {
if let bevy_reflect::ReflectRef::Enum(__value_param) =
bevy_reflect::PartialReflect::reflect_ref(__value_param) {
if bevy_reflect::enums::Enum::variant_name(self) ==
bevy_reflect::enums::Enum::variant_name(__value_param) {
match bevy_reflect::enums::Enum::variant_type(__value_param)
{
bevy_reflect::enums::VariantType::Struct => {
for field in
bevy_reflect::enums::Enum::iter_fields(__value_param) {
let name = field.name().unwrap();
if let ::core::option::Option::Some(v) =
bevy_reflect::enums::Enum::field_mut(self, name) {
bevy_reflect::PartialReflect::try_apply(v, field.value())?;
}
}
}
bevy_reflect::enums::VariantType::Tuple => {
for (index, field) in
::core::iter::Iterator::enumerate(bevy_reflect::enums::Enum::iter_fields(__value_param))
{
if let ::core::option::Option::Some(v) =
bevy_reflect::enums::Enum::field_at_mut(self, index) {
bevy_reflect::PartialReflect::try_apply(v, field.value())?;
}
}
}
_ => {}
}
} else {
match bevy_reflect::enums::Enum::variant_name(__value_param)
{
"Primary" => { *self = WindowRef::Primary {} }
"Entity" => {
*self =
WindowRef::Entity {
0: {
let __0 = __value_param.field_at(0usize);
let __0 =
__0.ok_or(bevy_reflect::ApplyError::MissingEnumField {
variant_name: ::core::convert::Into::into("Entity"),
field_name: ::core::convert::Into::into(".0"),
})?;
<Entity as
bevy_reflect::FromReflect>::from_reflect(__0).ok_or(bevy_reflect::ApplyError::MismatchedTypes {
from_type: ::core::convert::Into::into(bevy_reflect::DynamicTypePath::reflect_type_path(__0)),
to_type: ::core::convert::Into::into(<Entity as
bevy_reflect::TypePath>::type_path()),
})?
},
}
}
name => {
return ::core::result::Result::Err(bevy_reflect::ApplyError::UnknownVariant {
enum_name: ::core::convert::Into::into(bevy_reflect::DynamicTypePath::reflect_type_path(self)),
variant_name: ::core::convert::Into::into(name),
});
}
}
}
} else {
return ::core::result::Result::Err(bevy_reflect::ApplyError::MismatchedKinds {
from_kind: bevy_reflect::PartialReflect::reflect_kind(__value_param),
to_kind: bevy_reflect::ReflectKind::Enum,
});
}
::core::result::Result::Ok(())
}
fn reflect_kind(&self) -> bevy_reflect::ReflectKind {
bevy_reflect::ReflectKind::Enum
}
fn reflect_ref(&self) -> bevy_reflect::ReflectRef {
bevy_reflect::ReflectRef::Enum(self)
}
fn reflect_mut(&mut self) -> bevy_reflect::ReflectMut {
bevy_reflect::ReflectMut::Enum(self)
}
fn reflect_owned(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
-> bevy_reflect::ReflectOwned {
bevy_reflect::ReflectOwned::Enum(self)
}
#[inline]
fn try_into_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
::core::result::Result<bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>,
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::PartialReflect>> {
::core::result::Result::Ok(self)
}
#[inline]
fn try_as_reflect(&self)
-> ::core::option::Option<&dyn bevy_reflect::Reflect> {
::core::option::Option::Some(self)
}
#[inline]
fn try_as_reflect_mut(&mut self)
-> ::core::option::Option<&mut dyn bevy_reflect::Reflect> {
::core::option::Option::Some(self)
}
#[inline]
fn into_partial_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::PartialReflect> {
self
}
#[inline]
fn as_partial_reflect(&self)
-> &dyn bevy_reflect::PartialReflect {
self
}
#[inline]
fn as_partial_reflect_mut(&mut self)
-> &mut dyn bevy_reflect::PartialReflect {
self
}
fn reflect_hash(&self) -> ::core::option::Option<u64> {
(bevy_reflect::enums::enum_hash)(self)
}
fn reflect_partial_eq(&self,
value: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<bool> {
(bevy_reflect::enums::enum_partial_eq)(self, value)
}
fn reflect_partial_cmp(&self,
value: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<::core::cmp::Ordering> {
(bevy_reflect::enums::enum_partial_cmp)(self, value)
}
fn debug(&self, f: &mut ::core::fmt::Formatter<'_>)
-> ::core::fmt::Result {
::core::fmt::Debug::fmt(self, f)
}
#[inline]
fn reflect_clone(&self)
->
::core::result::Result<bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>,
bevy_reflect::ReflectCloneError> {
::core::result::Result::Ok(bevy_reflect::__macro_exports::alloc_utils::Box::new(::core::clone::Clone::clone(self)))
}
}
impl bevy_reflect::FromReflect for WindowRef where {
fn from_reflect(__param0: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<Self> {
if let bevy_reflect::ReflectRef::Enum(__param0) =
bevy_reflect::PartialReflect::reflect_ref(__param0) {
match bevy_reflect::enums::Enum::variant_name(__param0) {
"Primary" =>
::core::option::Option::Some(WindowRef::Primary {}),
"Entity" =>
::core::option::Option::Some(WindowRef::Entity {
0: {
let __0 = __param0.field_at(0usize);
let __0 = __0?;
<Entity as bevy_reflect::FromReflect>::from_reflect(__0)?
},
}),
name => ::core::option::Option::None,
}
} else { ::core::option::Option::None }
}
}
};Reflect),
65 reflect(Debug, Default, Clone)
66)]
67#[cfg_attr(feature = "serialize", derive(#[doc(hidden)]
#[allow(non_upper_case_globals, unused_attributes, unused_qualifications,
clippy :: absolute_paths,)]
const _: () =
{
#[allow(unused_extern_crates, clippy :: useless_attribute)]
extern crate serde as _serde;
;
#[automatically_derived]
impl _serde::Serialize for WindowRef {
fn serialize<__S>(&self, __serializer: __S)
-> _serde::__private228::Result<__S::Ok, __S::Error> where
__S: _serde::Serializer {
match *self {
WindowRef::Primary =>
_serde::Serializer::serialize_unit_variant(__serializer,
"WindowRef", 0u32, "Primary"),
WindowRef::Entity(ref __field0) =>
_serde::Serializer::serialize_newtype_variant(__serializer,
"WindowRef", 1u32, "Entity", __field0),
}
}
}
};serde::Serialize, #[doc(hidden)]
#[allow(non_upper_case_globals, unused_attributes, unused_qualifications,
clippy :: absolute_paths,)]
const _: () =
{
#[allow(unused_extern_crates, clippy :: useless_attribute)]
extern crate serde as _serde;
;
#[automatically_derived]
impl<'de> _serde::Deserialize<'de> for WindowRef {
fn deserialize<__D>(__deserializer: __D)
-> _serde::__private228::Result<Self, __D::Error> where
__D: _serde::Deserializer<'de> {
#[allow(non_camel_case_types)]
#[doc(hidden)]
enum __Field { __field0, __field1, }
#[doc(hidden)]
struct __FieldVisitor;
#[automatically_derived]
impl<'de> _serde::de::Visitor<'de> for __FieldVisitor {
type Value = __Field;
fn expecting(&self,
__formatter: &mut _serde::__private228::Formatter)
-> _serde::__private228::fmt::Result {
_serde::__private228::Formatter::write_str(__formatter,
"variant identifier")
}
fn visit_u64<__E>(self, __value: u64)
-> _serde::__private228::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
0u64 => _serde::__private228::Ok(__Field::__field0),
1u64 => _serde::__private228::Ok(__Field::__field1),
_ =>
_serde::__private228::Err(_serde::de::Error::invalid_value(_serde::de::Unexpected::Unsigned(__value),
&"variant index 0 <= i < 2")),
}
}
fn visit_str<__E>(self, __value: &str)
-> _serde::__private228::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
"Primary" => _serde::__private228::Ok(__Field::__field0),
"Entity" => _serde::__private228::Ok(__Field::__field1),
_ => {
_serde::__private228::Err(_serde::de::Error::unknown_variant(__value,
VARIANTS))
}
}
}
fn visit_bytes<__E>(self, __value: &[u8])
-> _serde::__private228::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
b"Primary" => _serde::__private228::Ok(__Field::__field0),
b"Entity" => _serde::__private228::Ok(__Field::__field1),
_ => {
let __value =
&_serde::__private228::from_utf8_lossy(__value);
_serde::__private228::Err(_serde::de::Error::unknown_variant(__value,
VARIANTS))
}
}
}
}
#[automatically_derived]
impl<'de> _serde::Deserialize<'de> for __Field {
#[inline]
fn deserialize<__D>(__deserializer: __D)
-> _serde::__private228::Result<Self, __D::Error> where
__D: _serde::Deserializer<'de> {
_serde::Deserializer::deserialize_identifier(__deserializer,
__FieldVisitor)
}
}
#[doc(hidden)]
struct __Visitor<'de> {
marker: _serde::__private228::PhantomData<WindowRef>,
lifetime: _serde::__private228::PhantomData<&'de ()>,
}
#[automatically_derived]
impl<'de> _serde::de::Visitor<'de> for __Visitor<'de> {
type Value = WindowRef;
fn expecting(&self,
__formatter: &mut _serde::__private228::Formatter)
-> _serde::__private228::fmt::Result {
_serde::__private228::Formatter::write_str(__formatter,
"enum WindowRef")
}
fn visit_enum<__A>(self, __data: __A)
-> _serde::__private228::Result<Self::Value, __A::Error>
where __A: _serde::de::EnumAccess<'de> {
match _serde::de::EnumAccess::variant(__data)? {
(__Field::__field0, __variant) => {
_serde::de::VariantAccess::unit_variant(__variant)?;
_serde::__private228::Ok(WindowRef::Primary)
}
(__Field::__field1, __variant) =>
_serde::__private228::Result::map(_serde::de::VariantAccess::newtype_variant::<Entity>(__variant),
WindowRef::Entity),
}
}
}
#[doc(hidden)]
const VARIANTS: &'static [&'static str] =
&["Primary", "Entity"];
_serde::Deserializer::deserialize_enum(__deserializer,
"WindowRef", VARIANTS,
__Visitor {
marker: _serde::__private228::PhantomData::<WindowRef>,
lifetime: _serde::__private228::PhantomData,
})
}
}
};serde::Deserialize))]
68#[cfg_attr(
69 all(feature = "serialize", feature = "bevy_reflect"),
70 reflect(Serialize, Deserialize)
71)]
72pub enum WindowRef {
73 #[default]
76 Primary,
77 Entity(Entity),
84}
85
86impl WindowRef {
87 pub fn normalize(&self, primary_window: Option<Entity>) -> Option<NormalizedWindowRef> {
89 let entity = match self {
90 Self::Primary => primary_window,
91 Self::Entity(entity) => Some(*entity),
92 };
93
94 entity.map(NormalizedWindowRef)
95 }
96}
97
98#[repr(C)]
102#[derive(#[automatically_derived]
impl ::core::marker::Copy for NormalizedWindowRef { }Copy, #[automatically_derived]
impl ::core::clone::Clone for NormalizedWindowRef {
#[inline]
fn clone(&self) -> NormalizedWindowRef {
let _: ::core::clone::AssertParamIsClone<Entity>;
*self
}
}Clone, #[automatically_derived]
impl ::core::fmt::Debug for NormalizedWindowRef {
#[inline]
fn fmt(&self, f: &mut ::core::fmt::Formatter) -> ::core::fmt::Result {
::core::fmt::Formatter::debug_tuple_field1_finish(f,
"NormalizedWindowRef", &&self.0)
}
}Debug, #[automatically_derived]
impl ::core::cmp::PartialEq for NormalizedWindowRef {
#[inline]
fn eq(&self, other: &NormalizedWindowRef) -> bool { self.0 == other.0 }
}PartialEq, #[automatically_derived]
impl ::core::cmp::Eq for NormalizedWindowRef {
#[inline]
#[doc(hidden)]
#[coverage(off)]
fn assert_fields_are_eq(&self) {
let _: ::core::cmp::AssertParamIsEq<Entity>;
}
}Eq, #[automatically_derived]
impl ::core::cmp::PartialOrd for NormalizedWindowRef {
#[inline]
fn partial_cmp(&self, other: &NormalizedWindowRef)
-> ::core::option::Option<::core::cmp::Ordering> {
::core::option::Option::Some(::core::cmp::Ord::cmp(self, other))
}
}PartialOrd, #[automatically_derived]
impl ::core::cmp::Ord for NormalizedWindowRef {
#[inline]
fn cmp(&self, other: &NormalizedWindowRef) -> ::core::cmp::Ordering {
::core::cmp::Ord::cmp(&self.0, &other.0)
}
}Ord, #[automatically_derived]
impl ::core::hash::Hash for NormalizedWindowRef {
#[inline]
fn hash<__H: ::core::hash::Hasher>(&self, state: &mut __H) {
::core::hash::Hash::hash(&self.0, state)
}
}Hash)]
103#[cfg_attr(
104 feature = "bevy_reflect",
105 derive(const _: () =
{
impl bevy_reflect::GetTypeRegistration for NormalizedWindowRef where
{
fn get_type_registration() -> bevy_reflect::TypeRegistration {
let mut registration =
bevy_reflect::TypeRegistration::of::<Self>();
registration.insert::<bevy_reflect::ReflectFromPtr>(bevy_reflect::FromType::<Self>::from_type());
registration.insert::<bevy_reflect::ReflectFromReflect>(bevy_reflect::FromType::<Self>::from_type());
registration.register_type_data::<ReflectSerialize, Self>();
registration.register_type_data::<ReflectDeserialize, Self>();
registration
}
#[inline(never)]
fn register_type_dependencies(registry:
&mut bevy_reflect::TypeRegistry) {
<Entity as
bevy_reflect::__macro_exports::RegisterForReflection>::__register(registry);
}
}
impl bevy_reflect::Typed for NormalizedWindowRef where {
#[inline]
fn type_info() -> &'static bevy_reflect::TypeInfo {
static CELL: bevy_reflect::utility::NonGenericTypeInfoCell =
bevy_reflect::utility::NonGenericTypeInfoCell::new();
CELL.get_or_set(||
{
bevy_reflect::TypeInfo::TupleStruct(bevy_reflect::tuple_struct::TupleStructInfo::new::<Self>(&[bevy_reflect::UnnamedField::new::<Entity>(0usize)]))
})
}
}
#[allow(deprecated, reason =
"derives on a deprecated type shouldn't be considered a usage")]
impl bevy_reflect::TypePath for NormalizedWindowRef where {
fn type_path() -> &'static str {
"bevy_window::window::NormalizedWindowRef"
}
fn short_type_path() -> &'static str { "NormalizedWindowRef" }
fn type_ident() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("NormalizedWindowRef")
}
fn crate_name() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("bevy_window::window".split(':').next().unwrap())
}
fn module_path() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("bevy_window::window")
}
}
impl bevy_reflect::Reflect for NormalizedWindowRef where {
#[inline]
fn into_any(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn ::core::any::Any> {
self
}
#[inline]
fn as_any(&self) -> &dyn ::core::any::Any { self }
#[inline]
fn as_any_mut(&mut self) -> &mut dyn ::core::any::Any { self }
#[inline]
fn into_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect> {
self
}
#[inline]
fn as_reflect(&self) -> &dyn bevy_reflect::Reflect { self }
#[inline]
fn as_reflect_mut(&mut self) -> &mut dyn bevy_reflect::Reflect {
self
}
#[inline]
fn set(&mut self,
value:
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>)
->
::core::result::Result<(),
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>> {
*self = <dyn bevy_reflect::Reflect>::take(value)?;
::core::result::Result::Ok(())
}
}
#[allow(non_upper_case_globals)]
const _: () =
{
static __INVENTORY: ::inventory::Node =
::inventory::Node {
value: &{
bevy_reflect::__macro_exports::auto_register::AutomaticReflectRegistrations(<NormalizedWindowRef
as
bevy_reflect::__macro_exports::auto_register::RegisterForReflection>::__register)
},
next: ::inventory::__private::UnsafeCell::new(::inventory::__private::Option::None),
};
#[link_section = ".text.startup"]
unsafe extern "C" fn __ctor() {
unsafe {
::inventory::ErasedNode::submit(__INVENTORY.value,
&__INVENTORY)
}
}
#[used]
#[link_section = ".init_array"]
static __CTOR: unsafe extern "C" fn() = __ctor;
};
impl bevy_reflect::tuple_struct::TupleStruct for NormalizedWindowRef
where {
fn field(&self, index: usize)
-> ::core::option::Option<&dyn bevy_reflect::PartialReflect> {
match index {
0usize => ::core::option::Option::Some(&self.0),
_ => ::core::option::Option::None,
}
}
fn field_mut(&mut self, index: usize)
->
::core::option::Option<&mut dyn bevy_reflect::PartialReflect> {
match index {
0usize => ::core::option::Option::Some(&mut self.0),
_ => ::core::option::Option::None,
}
}
#[inline]
fn field_len(&self) -> usize { 1usize }
#[inline]
fn iter_fields(&self)
-> bevy_reflect::tuple_struct::TupleStructFieldIter {
bevy_reflect::tuple_struct::TupleStructFieldIter::new(self)
}
fn to_dynamic_tuple_struct(&self)
-> bevy_reflect::tuple_struct::DynamicTupleStruct {
let mut dynamic:
bevy_reflect::tuple_struct::DynamicTupleStruct =
::core::default::Default::default();
dynamic.set_represented_type(bevy_reflect::PartialReflect::get_represented_type_info(self));
dynamic.insert_boxed(bevy_reflect::PartialReflect::to_dynamic(&self.0));
dynamic
}
}
impl bevy_reflect::PartialReflect for NormalizedWindowRef where {
#[inline]
fn get_represented_type_info(&self)
-> ::core::option::Option<&'static bevy_reflect::TypeInfo> {
::core::option::Option::Some(<Self as
bevy_reflect::Typed>::type_info())
}
#[inline]
fn try_apply(&mut self, value: &dyn bevy_reflect::PartialReflect)
-> ::core::result::Result<(), bevy_reflect::ApplyError> {
if let bevy_reflect::ReflectRef::TupleStruct(struct_value) =
bevy_reflect::PartialReflect::reflect_ref(value) {
for (i, value) in
::core::iter::Iterator::enumerate(bevy_reflect::tuple_struct::TupleStruct::iter_fields(struct_value))
{
if let ::core::option::Option::Some(v) =
bevy_reflect::tuple_struct::TupleStruct::field_mut(self, i)
{
bevy_reflect::PartialReflect::try_apply(v, value)?;
}
}
} else {
return ::core::result::Result::Err(bevy_reflect::ApplyError::MismatchedKinds {
from_kind: bevy_reflect::PartialReflect::reflect_kind(value),
to_kind: bevy_reflect::ReflectKind::TupleStruct,
});
}
::core::result::Result::Ok(())
}
#[inline]
fn reflect_kind(&self) -> bevy_reflect::ReflectKind {
bevy_reflect::ReflectKind::TupleStruct
}
#[inline]
fn reflect_ref(&self) -> bevy_reflect::ReflectRef {
bevy_reflect::ReflectRef::TupleStruct(self)
}
#[inline]
fn reflect_mut(&mut self) -> bevy_reflect::ReflectMut {
bevy_reflect::ReflectMut::TupleStruct(self)
}
#[inline]
fn reflect_owned(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
-> bevy_reflect::ReflectOwned {
bevy_reflect::ReflectOwned::TupleStruct(self)
}
#[inline]
fn try_into_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
::core::result::Result<bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>,
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::PartialReflect>> {
::core::result::Result::Ok(self)
}
#[inline]
fn try_as_reflect(&self)
-> ::core::option::Option<&dyn bevy_reflect::Reflect> {
::core::option::Option::Some(self)
}
#[inline]
fn try_as_reflect_mut(&mut self)
-> ::core::option::Option<&mut dyn bevy_reflect::Reflect> {
::core::option::Option::Some(self)
}
#[inline]
fn into_partial_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::PartialReflect> {
self
}
#[inline]
fn as_partial_reflect(&self)
-> &dyn bevy_reflect::PartialReflect {
self
}
#[inline]
fn as_partial_reflect_mut(&mut self)
-> &mut dyn bevy_reflect::PartialReflect {
self
}
fn reflect_hash(&self) -> ::core::option::Option<u64> {
use ::core::hash::{Hash, Hasher};
let mut hasher = bevy_reflect::utility::reflect_hasher();
Hash::hash(&::core::any::Any::type_id(self), &mut hasher);
Hash::hash(self, &mut hasher);
::core::option::Option::Some(Hasher::finish(&hasher))
}
fn reflect_partial_eq(&self,
value: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<bool> {
let value =
<dyn bevy_reflect::PartialReflect>::try_downcast_ref::<Self>(value);
if let ::core::option::Option::Some(value) = value {
::core::option::Option::Some(::core::cmp::PartialEq::eq(self,
value))
} else { ::core::option::Option::Some(false) }
}
fn reflect_partial_cmp(&self,
value: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<::core::cmp::Ordering> {
(bevy_reflect::tuple_struct::tuple_struct_partial_cmp)(self,
value)
}
fn debug(&self, f: &mut ::core::fmt::Formatter<'_>)
-> ::core::fmt::Result {
::core::fmt::Debug::fmt(self, f)
}
#[inline]
fn reflect_clone(&self)
->
::core::result::Result<bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>,
bevy_reflect::ReflectCloneError> {
::core::result::Result::Ok(bevy_reflect::__macro_exports::alloc_utils::Box::new(::core::clone::Clone::clone(self)))
}
}
impl bevy_reflect::FromReflect for NormalizedWindowRef where {
fn from_reflect(reflect: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<Self> {
if let bevy_reflect::ReflectRef::TupleStruct(__ref_struct) =
bevy_reflect::PartialReflect::reflect_ref(reflect) {
let __this =
Self {
0: <Entity as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::tuple_struct::TupleStruct::field(__ref_struct,
0)?)?,
};
::core::option::Option::Some(__this)
} else { ::core::option::Option::None }
}
}
};Reflect),
106 reflect(Debug, PartialEq, Hash, Clone)
107)]
108#[cfg_attr(feature = "serialize", derive(#[doc(hidden)]
#[allow(non_upper_case_globals, unused_attributes, unused_qualifications,
clippy :: absolute_paths,)]
const _: () =
{
#[allow(unused_extern_crates, clippy :: useless_attribute)]
extern crate serde as _serde;
;
#[automatically_derived]
impl _serde::Serialize for NormalizedWindowRef {
fn serialize<__S>(&self, __serializer: __S)
-> _serde::__private228::Result<__S::Ok, __S::Error> where
__S: _serde::Serializer {
_serde::Serializer::serialize_newtype_struct(__serializer,
"NormalizedWindowRef", &self.0)
}
}
};serde::Serialize, #[doc(hidden)]
#[allow(non_upper_case_globals, unused_attributes, unused_qualifications,
clippy :: absolute_paths,)]
const _: () =
{
#[allow(unused_extern_crates, clippy :: useless_attribute)]
extern crate serde as _serde;
;
#[automatically_derived]
impl<'de> _serde::Deserialize<'de> for NormalizedWindowRef {
fn deserialize<__D>(__deserializer: __D)
-> _serde::__private228::Result<Self, __D::Error> where
__D: _serde::Deserializer<'de> {
#[doc(hidden)]
struct __Visitor<'de> {
marker: _serde::__private228::PhantomData<NormalizedWindowRef>,
lifetime: _serde::__private228::PhantomData<&'de ()>,
}
#[automatically_derived]
impl<'de> _serde::de::Visitor<'de> for __Visitor<'de> {
type Value = NormalizedWindowRef;
fn expecting(&self,
__formatter: &mut _serde::__private228::Formatter)
-> _serde::__private228::fmt::Result {
_serde::__private228::Formatter::write_str(__formatter,
"tuple struct NormalizedWindowRef")
}
#[inline]
fn visit_newtype_struct<__E>(self, __e: __E)
-> _serde::__private228::Result<Self::Value, __E::Error>
where __E: _serde::Deserializer<'de> {
let __field0: Entity =
<Entity as _serde::Deserialize>::deserialize(__e)?;
_serde::__private228::Ok(NormalizedWindowRef(__field0))
}
#[inline]
fn visit_seq<__A>(self, mut __seq: __A)
-> _serde::__private228::Result<Self::Value, __A::Error>
where __A: _serde::de::SeqAccess<'de> {
let __field0 =
match _serde::de::SeqAccess::next_element::<Entity>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(0usize,
&"tuple struct NormalizedWindowRef with 1 element")),
};
_serde::__private228::Ok(NormalizedWindowRef(__field0))
}
}
_serde::Deserializer::deserialize_newtype_struct(__deserializer,
"NormalizedWindowRef",
__Visitor {
marker: _serde::__private228::PhantomData::<NormalizedWindowRef>,
lifetime: _serde::__private228::PhantomData,
})
}
}
};serde::Deserialize))]
109#[cfg_attr(
110 all(feature = "serialize", feature = "bevy_reflect"),
111 reflect(Serialize, Deserialize)
112)]
113pub struct NormalizedWindowRef(Entity);
114
115impl ContainsEntity for NormalizedWindowRef {
116 fn entity(&self) -> Entity {
117 self.0
118 }
119}
120
121#[derive(#[doc =
"**Required Components**: [`CursorOptions`]. \n\n A component's Required Components are inserted whenever it is inserted. Note that this will also insert the required components _of_ the required components, recursively, in depth-first order."]
impl bevy_ecs::component::Component for Window where
Self: ::core::marker::Send + ::core::marker::Sync + 'static {
const STORAGE_TYPE: bevy_ecs::component::StorageType =
bevy_ecs::component::StorageType::Table;
type Mutability = bevy_ecs::component::Mutable;
fn register_required_components(_requiree:
bevy_ecs::component::ComponentId,
required_components:
&mut bevy_ecs::component::RequiredComponentsRegistrator) {
required_components.register_required::<CursorOptions>(<CursorOptions
as ::core::default::Default>::default);
}
fn clone_behavior() -> bevy_ecs::component::ComponentCloneBehavior {
use bevy_ecs::component::{
DefaultCloneBehaviorBase, DefaultCloneBehaviorViaClone,
};
(&&&bevy_ecs::component::DefaultCloneBehaviorSpecialization::<Self>::default()).default_clone_behavior()
}
fn relationship_accessor()
->
::core::option::Option<bevy_ecs::relationship::ComponentRelationshipAccessor<Self>> {
::core::option::Option::None
}
}Component, #[automatically_derived]
impl ::core::fmt::Debug for Window {
#[inline]
fn fmt(&self, f: &mut ::core::fmt::Formatter) -> ::core::fmt::Result {
let names: &'static _ =
&["present_mode", "mode", "position", "resolution", "title",
"name", "composite_alpha_mode", "resize_constraints",
"resizable", "enabled_buttons", "decorations",
"transparent", "focused", "window_level", "canvas",
"fit_canvas_to_parent", "prevent_default_event_handling",
"internal", "ime_enabled", "ime_position", "window_theme",
"visible", "skip_taskbar", "clip_children",
"desired_maximum_frame_latency", "recognize_pinch_gesture",
"recognize_rotation_gesture", "recognize_doubletap_gesture",
"recognize_pan_gesture", "movable_by_window_background",
"fullsize_content_view", "has_shadow", "titlebar_shown",
"titlebar_transparent", "titlebar_show_title",
"titlebar_show_buttons", "borderless_game",
"prefers_home_indicator_hidden",
"prefers_status_bar_hidden",
"preferred_screen_edges_deferring_system_gestures"];
let values: &[&dyn ::core::fmt::Debug] =
&[&self.present_mode, &self.mode, &self.position,
&self.resolution, &self.title, &self.name,
&self.composite_alpha_mode, &self.resize_constraints,
&self.resizable, &self.enabled_buttons, &self.decorations,
&self.transparent, &self.focused, &self.window_level,
&self.canvas, &self.fit_canvas_to_parent,
&self.prevent_default_event_handling, &self.internal,
&self.ime_enabled, &self.ime_position, &self.window_theme,
&self.visible, &self.skip_taskbar, &self.clip_children,
&self.desired_maximum_frame_latency,
&self.recognize_pinch_gesture,
&self.recognize_rotation_gesture,
&self.recognize_doubletap_gesture,
&self.recognize_pan_gesture,
&self.movable_by_window_background,
&self.fullsize_content_view, &self.has_shadow,
&self.titlebar_shown, &self.titlebar_transparent,
&self.titlebar_show_title, &self.titlebar_show_buttons,
&self.borderless_game, &self.prefers_home_indicator_hidden,
&self.prefers_status_bar_hidden,
&&self.preferred_screen_edges_deferring_system_gestures];
::core::fmt::Formatter::debug_struct_fields_finish(f, "Window", names,
values)
}
}Debug, #[automatically_derived]
impl ::core::clone::Clone for Window {
#[inline]
fn clone(&self) -> Window {
Window {
present_mode: ::core::clone::Clone::clone(&self.present_mode),
mode: ::core::clone::Clone::clone(&self.mode),
position: ::core::clone::Clone::clone(&self.position),
resolution: ::core::clone::Clone::clone(&self.resolution),
title: ::core::clone::Clone::clone(&self.title),
name: ::core::clone::Clone::clone(&self.name),
composite_alpha_mode: ::core::clone::Clone::clone(&self.composite_alpha_mode),
resize_constraints: ::core::clone::Clone::clone(&self.resize_constraints),
resizable: ::core::clone::Clone::clone(&self.resizable),
enabled_buttons: ::core::clone::Clone::clone(&self.enabled_buttons),
decorations: ::core::clone::Clone::clone(&self.decorations),
transparent: ::core::clone::Clone::clone(&self.transparent),
focused: ::core::clone::Clone::clone(&self.focused),
window_level: ::core::clone::Clone::clone(&self.window_level),
canvas: ::core::clone::Clone::clone(&self.canvas),
fit_canvas_to_parent: ::core::clone::Clone::clone(&self.fit_canvas_to_parent),
prevent_default_event_handling: ::core::clone::Clone::clone(&self.prevent_default_event_handling),
internal: ::core::clone::Clone::clone(&self.internal),
ime_enabled: ::core::clone::Clone::clone(&self.ime_enabled),
ime_position: ::core::clone::Clone::clone(&self.ime_position),
window_theme: ::core::clone::Clone::clone(&self.window_theme),
visible: ::core::clone::Clone::clone(&self.visible),
skip_taskbar: ::core::clone::Clone::clone(&self.skip_taskbar),
clip_children: ::core::clone::Clone::clone(&self.clip_children),
desired_maximum_frame_latency: ::core::clone::Clone::clone(&self.desired_maximum_frame_latency),
recognize_pinch_gesture: ::core::clone::Clone::clone(&self.recognize_pinch_gesture),
recognize_rotation_gesture: ::core::clone::Clone::clone(&self.recognize_rotation_gesture),
recognize_doubletap_gesture: ::core::clone::Clone::clone(&self.recognize_doubletap_gesture),
recognize_pan_gesture: ::core::clone::Clone::clone(&self.recognize_pan_gesture),
movable_by_window_background: ::core::clone::Clone::clone(&self.movable_by_window_background),
fullsize_content_view: ::core::clone::Clone::clone(&self.fullsize_content_view),
has_shadow: ::core::clone::Clone::clone(&self.has_shadow),
titlebar_shown: ::core::clone::Clone::clone(&self.titlebar_shown),
titlebar_transparent: ::core::clone::Clone::clone(&self.titlebar_transparent),
titlebar_show_title: ::core::clone::Clone::clone(&self.titlebar_show_title),
titlebar_show_buttons: ::core::clone::Clone::clone(&self.titlebar_show_buttons),
borderless_game: ::core::clone::Clone::clone(&self.borderless_game),
prefers_home_indicator_hidden: ::core::clone::Clone::clone(&self.prefers_home_indicator_hidden),
prefers_status_bar_hidden: ::core::clone::Clone::clone(&self.prefers_status_bar_hidden),
preferred_screen_edges_deferring_system_gestures: ::core::clone::Clone::clone(&self.preferred_screen_edges_deferring_system_gestures),
}
}
}Clone)]
153#[cfg_attr(
154 feature = "bevy_reflect",
155 derive(const _: () =
{
impl bevy_reflect::GetTypeRegistration for Window where {
fn get_type_registration() -> bevy_reflect::TypeRegistration {
let mut registration =
bevy_reflect::TypeRegistration::of::<Self>();
registration.insert::<bevy_reflect::ReflectFromPtr>(bevy_reflect::FromType::<Self>::from_type());
registration.insert::<bevy_reflect::ReflectFromReflect>(bevy_reflect::FromType::<Self>::from_type());
registration.register_type_data::<ReflectComponent, Self>();
registration.register_type_data::<ReflectDefault, Self>();
registration.register_type_data::<ReflectSerialize, Self>();
registration.register_type_data::<ReflectDeserialize, Self>();
registration
}
#[inline(never)]
fn register_type_dependencies(registry:
&mut bevy_reflect::TypeRegistry) {
<PresentMode as
bevy_reflect::__macro_exports::RegisterForReflection>::__register(registry);
<WindowMode as
bevy_reflect::__macro_exports::RegisterForReflection>::__register(registry);
<WindowPosition as
bevy_reflect::__macro_exports::RegisterForReflection>::__register(registry);
<WindowResolution as
bevy_reflect::__macro_exports::RegisterForReflection>::__register(registry);
<String as
bevy_reflect::__macro_exports::RegisterForReflection>::__register(registry);
<Option<String> as
bevy_reflect::__macro_exports::RegisterForReflection>::__register(registry);
<CompositeAlphaMode as
bevy_reflect::__macro_exports::RegisterForReflection>::__register(registry);
<WindowResizeConstraints as
bevy_reflect::__macro_exports::RegisterForReflection>::__register(registry);
<bool as
bevy_reflect::__macro_exports::RegisterForReflection>::__register(registry);
<EnabledButtons as
bevy_reflect::__macro_exports::RegisterForReflection>::__register(registry);
<WindowLevel as
bevy_reflect::__macro_exports::RegisterForReflection>::__register(registry);
<InternalWindowState as
bevy_reflect::__macro_exports::RegisterForReflection>::__register(registry);
<Vec2 as
bevy_reflect::__macro_exports::RegisterForReflection>::__register(registry);
<Option<WindowTheme> as
bevy_reflect::__macro_exports::RegisterForReflection>::__register(registry);
<Option<NonZero<u32>> as
bevy_reflect::__macro_exports::RegisterForReflection>::__register(registry);
<Option<(u8, u8)> as
bevy_reflect::__macro_exports::RegisterForReflection>::__register(registry);
<ScreenEdge as
bevy_reflect::__macro_exports::RegisterForReflection>::__register(registry);
}
}
impl bevy_reflect::Typed for Window where {
#[inline]
fn type_info() -> &'static bevy_reflect::TypeInfo {
static CELL: bevy_reflect::utility::NonGenericTypeInfoCell =
bevy_reflect::utility::NonGenericTypeInfoCell::new();
CELL.get_or_set(||
{
bevy_reflect::TypeInfo::Struct(bevy_reflect::structs::StructInfo::new::<Self>(&[bevy_reflect::NamedField::new::<PresentMode>("present_mode"),
bevy_reflect::NamedField::new::<WindowMode>("mode"),
bevy_reflect::NamedField::new::<WindowPosition>("position"),
bevy_reflect::NamedField::new::<WindowResolution>("resolution"),
bevy_reflect::NamedField::new::<String>("title"),
bevy_reflect::NamedField::new::<Option<String>>("name"),
bevy_reflect::NamedField::new::<CompositeAlphaMode>("composite_alpha_mode"),
bevy_reflect::NamedField::new::<WindowResizeConstraints>("resize_constraints"),
bevy_reflect::NamedField::new::<bool>("resizable"),
bevy_reflect::NamedField::new::<EnabledButtons>("enabled_buttons"),
bevy_reflect::NamedField::new::<bool>("decorations"),
bevy_reflect::NamedField::new::<bool>("transparent"),
bevy_reflect::NamedField::new::<bool>("focused"),
bevy_reflect::NamedField::new::<WindowLevel>("window_level"),
bevy_reflect::NamedField::new::<Option<String>>("canvas"),
bevy_reflect::NamedField::new::<bool>("fit_canvas_to_parent"),
bevy_reflect::NamedField::new::<bool>("prevent_default_event_handling"),
bevy_reflect::NamedField::new::<InternalWindowState>("internal"),
bevy_reflect::NamedField::new::<bool>("ime_enabled"),
bevy_reflect::NamedField::new::<Vec2>("ime_position"),
bevy_reflect::NamedField::new::<Option<WindowTheme>>("window_theme"),
bevy_reflect::NamedField::new::<bool>("visible"),
bevy_reflect::NamedField::new::<bool>("skip_taskbar"),
bevy_reflect::NamedField::new::<bool>("clip_children"),
bevy_reflect::NamedField::new::<Option<NonZero<u32>>>("desired_maximum_frame_latency"),
bevy_reflect::NamedField::new::<bool>("recognize_pinch_gesture"),
bevy_reflect::NamedField::new::<bool>("recognize_rotation_gesture"),
bevy_reflect::NamedField::new::<bool>("recognize_doubletap_gesture"),
bevy_reflect::NamedField::new::<Option<(u8,
u8)>>("recognize_pan_gesture"),
bevy_reflect::NamedField::new::<bool>("movable_by_window_background"),
bevy_reflect::NamedField::new::<bool>("fullsize_content_view"),
bevy_reflect::NamedField::new::<bool>("has_shadow"),
bevy_reflect::NamedField::new::<bool>("titlebar_shown"),
bevy_reflect::NamedField::new::<bool>("titlebar_transparent"),
bevy_reflect::NamedField::new::<bool>("titlebar_show_title"),
bevy_reflect::NamedField::new::<bool>("titlebar_show_buttons"),
bevy_reflect::NamedField::new::<bool>("borderless_game"),
bevy_reflect::NamedField::new::<bool>("prefers_home_indicator_hidden"),
bevy_reflect::NamedField::new::<bool>("prefers_status_bar_hidden"),
bevy_reflect::NamedField::new::<ScreenEdge>("preferred_screen_edges_deferring_system_gestures")]))
})
}
}
#[allow(deprecated, reason =
"derives on a deprecated type shouldn't be considered a usage")]
impl bevy_reflect::TypePath for Window where {
fn type_path() -> &'static str { "bevy_window::window::Window" }
fn short_type_path() -> &'static str { "Window" }
fn type_ident() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("Window")
}
fn crate_name() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("bevy_window::window".split(':').next().unwrap())
}
fn module_path() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("bevy_window::window")
}
}
impl bevy_reflect::Reflect for Window where {
#[inline]
fn into_any(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn ::core::any::Any> {
self
}
#[inline]
fn as_any(&self) -> &dyn ::core::any::Any { self }
#[inline]
fn as_any_mut(&mut self) -> &mut dyn ::core::any::Any { self }
#[inline]
fn into_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect> {
self
}
#[inline]
fn as_reflect(&self) -> &dyn bevy_reflect::Reflect { self }
#[inline]
fn as_reflect_mut(&mut self) -> &mut dyn bevy_reflect::Reflect {
self
}
#[inline]
fn set(&mut self,
value:
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>)
->
::core::result::Result<(),
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>> {
*self = <dyn bevy_reflect::Reflect>::take(value)?;
::core::result::Result::Ok(())
}
}
#[allow(non_upper_case_globals)]
const _: () =
{
static __INVENTORY: ::inventory::Node =
::inventory::Node {
value: &{
bevy_reflect::__macro_exports::auto_register::AutomaticReflectRegistrations(<Window
as
bevy_reflect::__macro_exports::auto_register::RegisterForReflection>::__register)
},
next: ::inventory::__private::UnsafeCell::new(::inventory::__private::Option::None),
};
#[link_section = ".text.startup"]
unsafe extern "C" fn __ctor() {
unsafe {
::inventory::ErasedNode::submit(__INVENTORY.value,
&__INVENTORY)
}
}
#[used]
#[link_section = ".init_array"]
static __CTOR: unsafe extern "C" fn() = __ctor;
};
impl bevy_reflect::structs::Struct for Window where {
fn field(&self, name: &str)
-> ::core::option::Option<&dyn bevy_reflect::PartialReflect> {
match name {
"present_mode" =>
::core::option::Option::Some(&self.present_mode),
"mode" => ::core::option::Option::Some(&self.mode),
"position" => ::core::option::Option::Some(&self.position),
"resolution" =>
::core::option::Option::Some(&self.resolution),
"title" => ::core::option::Option::Some(&self.title),
"name" => ::core::option::Option::Some(&self.name),
"composite_alpha_mode" =>
::core::option::Option::Some(&self.composite_alpha_mode),
"resize_constraints" =>
::core::option::Option::Some(&self.resize_constraints),
"resizable" =>
::core::option::Option::Some(&self.resizable),
"enabled_buttons" =>
::core::option::Option::Some(&self.enabled_buttons),
"decorations" =>
::core::option::Option::Some(&self.decorations),
"transparent" =>
::core::option::Option::Some(&self.transparent),
"focused" => ::core::option::Option::Some(&self.focused),
"window_level" =>
::core::option::Option::Some(&self.window_level),
"canvas" => ::core::option::Option::Some(&self.canvas),
"fit_canvas_to_parent" =>
::core::option::Option::Some(&self.fit_canvas_to_parent),
"prevent_default_event_handling" =>
::core::option::Option::Some(&self.prevent_default_event_handling),
"internal" => ::core::option::Option::Some(&self.internal),
"ime_enabled" =>
::core::option::Option::Some(&self.ime_enabled),
"ime_position" =>
::core::option::Option::Some(&self.ime_position),
"window_theme" =>
::core::option::Option::Some(&self.window_theme),
"visible" => ::core::option::Option::Some(&self.visible),
"skip_taskbar" =>
::core::option::Option::Some(&self.skip_taskbar),
"clip_children" =>
::core::option::Option::Some(&self.clip_children),
"desired_maximum_frame_latency" =>
::core::option::Option::Some(&self.desired_maximum_frame_latency),
"recognize_pinch_gesture" =>
::core::option::Option::Some(&self.recognize_pinch_gesture),
"recognize_rotation_gesture" =>
::core::option::Option::Some(&self.recognize_rotation_gesture),
"recognize_doubletap_gesture" =>
::core::option::Option::Some(&self.recognize_doubletap_gesture),
"recognize_pan_gesture" =>
::core::option::Option::Some(&self.recognize_pan_gesture),
"movable_by_window_background" =>
::core::option::Option::Some(&self.movable_by_window_background),
"fullsize_content_view" =>
::core::option::Option::Some(&self.fullsize_content_view),
"has_shadow" =>
::core::option::Option::Some(&self.has_shadow),
"titlebar_shown" =>
::core::option::Option::Some(&self.titlebar_shown),
"titlebar_transparent" =>
::core::option::Option::Some(&self.titlebar_transparent),
"titlebar_show_title" =>
::core::option::Option::Some(&self.titlebar_show_title),
"titlebar_show_buttons" =>
::core::option::Option::Some(&self.titlebar_show_buttons),
"borderless_game" =>
::core::option::Option::Some(&self.borderless_game),
"prefers_home_indicator_hidden" =>
::core::option::Option::Some(&self.prefers_home_indicator_hidden),
"prefers_status_bar_hidden" =>
::core::option::Option::Some(&self.prefers_status_bar_hidden),
"preferred_screen_edges_deferring_system_gestures" =>
::core::option::Option::Some(&self.preferred_screen_edges_deferring_system_gestures),
_ => ::core::option::Option::None,
}
}
fn field_mut(&mut self, name: &str)
->
::core::option::Option<&mut dyn bevy_reflect::PartialReflect> {
match name {
"present_mode" =>
::core::option::Option::Some(&mut self.present_mode),
"mode" => ::core::option::Option::Some(&mut self.mode),
"position" =>
::core::option::Option::Some(&mut self.position),
"resolution" =>
::core::option::Option::Some(&mut self.resolution),
"title" => ::core::option::Option::Some(&mut self.title),
"name" => ::core::option::Option::Some(&mut self.name),
"composite_alpha_mode" =>
::core::option::Option::Some(&mut self.composite_alpha_mode),
"resize_constraints" =>
::core::option::Option::Some(&mut self.resize_constraints),
"resizable" =>
::core::option::Option::Some(&mut self.resizable),
"enabled_buttons" =>
::core::option::Option::Some(&mut self.enabled_buttons),
"decorations" =>
::core::option::Option::Some(&mut self.decorations),
"transparent" =>
::core::option::Option::Some(&mut self.transparent),
"focused" =>
::core::option::Option::Some(&mut self.focused),
"window_level" =>
::core::option::Option::Some(&mut self.window_level),
"canvas" => ::core::option::Option::Some(&mut self.canvas),
"fit_canvas_to_parent" =>
::core::option::Option::Some(&mut self.fit_canvas_to_parent),
"prevent_default_event_handling" =>
::core::option::Option::Some(&mut self.prevent_default_event_handling),
"internal" =>
::core::option::Option::Some(&mut self.internal),
"ime_enabled" =>
::core::option::Option::Some(&mut self.ime_enabled),
"ime_position" =>
::core::option::Option::Some(&mut self.ime_position),
"window_theme" =>
::core::option::Option::Some(&mut self.window_theme),
"visible" =>
::core::option::Option::Some(&mut self.visible),
"skip_taskbar" =>
::core::option::Option::Some(&mut self.skip_taskbar),
"clip_children" =>
::core::option::Option::Some(&mut self.clip_children),
"desired_maximum_frame_latency" =>
::core::option::Option::Some(&mut self.desired_maximum_frame_latency),
"recognize_pinch_gesture" =>
::core::option::Option::Some(&mut self.recognize_pinch_gesture),
"recognize_rotation_gesture" =>
::core::option::Option::Some(&mut self.recognize_rotation_gesture),
"recognize_doubletap_gesture" =>
::core::option::Option::Some(&mut self.recognize_doubletap_gesture),
"recognize_pan_gesture" =>
::core::option::Option::Some(&mut self.recognize_pan_gesture),
"movable_by_window_background" =>
::core::option::Option::Some(&mut self.movable_by_window_background),
"fullsize_content_view" =>
::core::option::Option::Some(&mut self.fullsize_content_view),
"has_shadow" =>
::core::option::Option::Some(&mut self.has_shadow),
"titlebar_shown" =>
::core::option::Option::Some(&mut self.titlebar_shown),
"titlebar_transparent" =>
::core::option::Option::Some(&mut self.titlebar_transparent),
"titlebar_show_title" =>
::core::option::Option::Some(&mut self.titlebar_show_title),
"titlebar_show_buttons" =>
::core::option::Option::Some(&mut self.titlebar_show_buttons),
"borderless_game" =>
::core::option::Option::Some(&mut self.borderless_game),
"prefers_home_indicator_hidden" =>
::core::option::Option::Some(&mut self.prefers_home_indicator_hidden),
"prefers_status_bar_hidden" =>
::core::option::Option::Some(&mut self.prefers_status_bar_hidden),
"preferred_screen_edges_deferring_system_gestures" =>
::core::option::Option::Some(&mut self.preferred_screen_edges_deferring_system_gestures),
_ => ::core::option::Option::None,
}
}
fn field_at(&self, index: usize)
-> ::core::option::Option<&dyn bevy_reflect::PartialReflect> {
match index {
0usize => ::core::option::Option::Some(&self.present_mode),
1usize => ::core::option::Option::Some(&self.mode),
2usize => ::core::option::Option::Some(&self.position),
3usize => ::core::option::Option::Some(&self.resolution),
4usize => ::core::option::Option::Some(&self.title),
5usize => ::core::option::Option::Some(&self.name),
6usize =>
::core::option::Option::Some(&self.composite_alpha_mode),
7usize =>
::core::option::Option::Some(&self.resize_constraints),
8usize => ::core::option::Option::Some(&self.resizable),
9usize =>
::core::option::Option::Some(&self.enabled_buttons),
10usize => ::core::option::Option::Some(&self.decorations),
11usize => ::core::option::Option::Some(&self.transparent),
12usize => ::core::option::Option::Some(&self.focused),
13usize => ::core::option::Option::Some(&self.window_level),
14usize => ::core::option::Option::Some(&self.canvas),
15usize =>
::core::option::Option::Some(&self.fit_canvas_to_parent),
16usize =>
::core::option::Option::Some(&self.prevent_default_event_handling),
17usize => ::core::option::Option::Some(&self.internal),
18usize => ::core::option::Option::Some(&self.ime_enabled),
19usize => ::core::option::Option::Some(&self.ime_position),
20usize => ::core::option::Option::Some(&self.window_theme),
21usize => ::core::option::Option::Some(&self.visible),
22usize => ::core::option::Option::Some(&self.skip_taskbar),
23usize =>
::core::option::Option::Some(&self.clip_children),
24usize =>
::core::option::Option::Some(&self.desired_maximum_frame_latency),
25usize =>
::core::option::Option::Some(&self.recognize_pinch_gesture),
26usize =>
::core::option::Option::Some(&self.recognize_rotation_gesture),
27usize =>
::core::option::Option::Some(&self.recognize_doubletap_gesture),
28usize =>
::core::option::Option::Some(&self.recognize_pan_gesture),
29usize =>
::core::option::Option::Some(&self.movable_by_window_background),
30usize =>
::core::option::Option::Some(&self.fullsize_content_view),
31usize => ::core::option::Option::Some(&self.has_shadow),
32usize =>
::core::option::Option::Some(&self.titlebar_shown),
33usize =>
::core::option::Option::Some(&self.titlebar_transparent),
34usize =>
::core::option::Option::Some(&self.titlebar_show_title),
35usize =>
::core::option::Option::Some(&self.titlebar_show_buttons),
36usize =>
::core::option::Option::Some(&self.borderless_game),
37usize =>
::core::option::Option::Some(&self.prefers_home_indicator_hidden),
38usize =>
::core::option::Option::Some(&self.prefers_status_bar_hidden),
39usize =>
::core::option::Option::Some(&self.preferred_screen_edges_deferring_system_gestures),
_ => ::core::option::Option::None,
}
}
fn field_at_mut(&mut self, index: usize)
->
::core::option::Option<&mut dyn bevy_reflect::PartialReflect> {
match index {
0usize =>
::core::option::Option::Some(&mut self.present_mode),
1usize => ::core::option::Option::Some(&mut self.mode),
2usize => ::core::option::Option::Some(&mut self.position),
3usize =>
::core::option::Option::Some(&mut self.resolution),
4usize => ::core::option::Option::Some(&mut self.title),
5usize => ::core::option::Option::Some(&mut self.name),
6usize =>
::core::option::Option::Some(&mut self.composite_alpha_mode),
7usize =>
::core::option::Option::Some(&mut self.resize_constraints),
8usize => ::core::option::Option::Some(&mut self.resizable),
9usize =>
::core::option::Option::Some(&mut self.enabled_buttons),
10usize =>
::core::option::Option::Some(&mut self.decorations),
11usize =>
::core::option::Option::Some(&mut self.transparent),
12usize => ::core::option::Option::Some(&mut self.focused),
13usize =>
::core::option::Option::Some(&mut self.window_level),
14usize => ::core::option::Option::Some(&mut self.canvas),
15usize =>
::core::option::Option::Some(&mut self.fit_canvas_to_parent),
16usize =>
::core::option::Option::Some(&mut self.prevent_default_event_handling),
17usize => ::core::option::Option::Some(&mut self.internal),
18usize =>
::core::option::Option::Some(&mut self.ime_enabled),
19usize =>
::core::option::Option::Some(&mut self.ime_position),
20usize =>
::core::option::Option::Some(&mut self.window_theme),
21usize => ::core::option::Option::Some(&mut self.visible),
22usize =>
::core::option::Option::Some(&mut self.skip_taskbar),
23usize =>
::core::option::Option::Some(&mut self.clip_children),
24usize =>
::core::option::Option::Some(&mut self.desired_maximum_frame_latency),
25usize =>
::core::option::Option::Some(&mut self.recognize_pinch_gesture),
26usize =>
::core::option::Option::Some(&mut self.recognize_rotation_gesture),
27usize =>
::core::option::Option::Some(&mut self.recognize_doubletap_gesture),
28usize =>
::core::option::Option::Some(&mut self.recognize_pan_gesture),
29usize =>
::core::option::Option::Some(&mut self.movable_by_window_background),
30usize =>
::core::option::Option::Some(&mut self.fullsize_content_view),
31usize =>
::core::option::Option::Some(&mut self.has_shadow),
32usize =>
::core::option::Option::Some(&mut self.titlebar_shown),
33usize =>
::core::option::Option::Some(&mut self.titlebar_transparent),
34usize =>
::core::option::Option::Some(&mut self.titlebar_show_title),
35usize =>
::core::option::Option::Some(&mut self.titlebar_show_buttons),
36usize =>
::core::option::Option::Some(&mut self.borderless_game),
37usize =>
::core::option::Option::Some(&mut self.prefers_home_indicator_hidden),
38usize =>
::core::option::Option::Some(&mut self.prefers_status_bar_hidden),
39usize =>
::core::option::Option::Some(&mut self.preferred_screen_edges_deferring_system_gestures),
_ => ::core::option::Option::None,
}
}
fn name_at(&self, index: usize) -> ::core::option::Option<&str> {
match index {
0usize => ::core::option::Option::Some("present_mode"),
1usize => ::core::option::Option::Some("mode"),
2usize => ::core::option::Option::Some("position"),
3usize => ::core::option::Option::Some("resolution"),
4usize => ::core::option::Option::Some("title"),
5usize => ::core::option::Option::Some("name"),
6usize =>
::core::option::Option::Some("composite_alpha_mode"),
7usize =>
::core::option::Option::Some("resize_constraints"),
8usize => ::core::option::Option::Some("resizable"),
9usize => ::core::option::Option::Some("enabled_buttons"),
10usize => ::core::option::Option::Some("decorations"),
11usize => ::core::option::Option::Some("transparent"),
12usize => ::core::option::Option::Some("focused"),
13usize => ::core::option::Option::Some("window_level"),
14usize => ::core::option::Option::Some("canvas"),
15usize =>
::core::option::Option::Some("fit_canvas_to_parent"),
16usize =>
::core::option::Option::Some("prevent_default_event_handling"),
17usize => ::core::option::Option::Some("internal"),
18usize => ::core::option::Option::Some("ime_enabled"),
19usize => ::core::option::Option::Some("ime_position"),
20usize => ::core::option::Option::Some("window_theme"),
21usize => ::core::option::Option::Some("visible"),
22usize => ::core::option::Option::Some("skip_taskbar"),
23usize => ::core::option::Option::Some("clip_children"),
24usize =>
::core::option::Option::Some("desired_maximum_frame_latency"),
25usize =>
::core::option::Option::Some("recognize_pinch_gesture"),
26usize =>
::core::option::Option::Some("recognize_rotation_gesture"),
27usize =>
::core::option::Option::Some("recognize_doubletap_gesture"),
28usize =>
::core::option::Option::Some("recognize_pan_gesture"),
29usize =>
::core::option::Option::Some("movable_by_window_background"),
30usize =>
::core::option::Option::Some("fullsize_content_view"),
31usize => ::core::option::Option::Some("has_shadow"),
32usize => ::core::option::Option::Some("titlebar_shown"),
33usize =>
::core::option::Option::Some("titlebar_transparent"),
34usize =>
::core::option::Option::Some("titlebar_show_title"),
35usize =>
::core::option::Option::Some("titlebar_show_buttons"),
36usize => ::core::option::Option::Some("borderless_game"),
37usize =>
::core::option::Option::Some("prefers_home_indicator_hidden"),
38usize =>
::core::option::Option::Some("prefers_status_bar_hidden"),
39usize =>
::core::option::Option::Some("preferred_screen_edges_deferring_system_gestures"),
_ => ::core::option::Option::None,
}
}
fn index_of_name(&self, name: &str)
-> ::core::option::Option<usize> {
match name {
"present_mode" => ::core::option::Option::Some(0usize),
"mode" => ::core::option::Option::Some(1usize),
"position" => ::core::option::Option::Some(2usize),
"resolution" => ::core::option::Option::Some(3usize),
"title" => ::core::option::Option::Some(4usize),
"name" => ::core::option::Option::Some(5usize),
"composite_alpha_mode" =>
::core::option::Option::Some(6usize),
"resize_constraints" =>
::core::option::Option::Some(7usize),
"resizable" => ::core::option::Option::Some(8usize),
"enabled_buttons" => ::core::option::Option::Some(9usize),
"decorations" => ::core::option::Option::Some(10usize),
"transparent" => ::core::option::Option::Some(11usize),
"focused" => ::core::option::Option::Some(12usize),
"window_level" => ::core::option::Option::Some(13usize),
"canvas" => ::core::option::Option::Some(14usize),
"fit_canvas_to_parent" =>
::core::option::Option::Some(15usize),
"prevent_default_event_handling" =>
::core::option::Option::Some(16usize),
"internal" => ::core::option::Option::Some(17usize),
"ime_enabled" => ::core::option::Option::Some(18usize),
"ime_position" => ::core::option::Option::Some(19usize),
"window_theme" => ::core::option::Option::Some(20usize),
"visible" => ::core::option::Option::Some(21usize),
"skip_taskbar" => ::core::option::Option::Some(22usize),
"clip_children" => ::core::option::Option::Some(23usize),
"desired_maximum_frame_latency" =>
::core::option::Option::Some(24usize),
"recognize_pinch_gesture" =>
::core::option::Option::Some(25usize),
"recognize_rotation_gesture" =>
::core::option::Option::Some(26usize),
"recognize_doubletap_gesture" =>
::core::option::Option::Some(27usize),
"recognize_pan_gesture" =>
::core::option::Option::Some(28usize),
"movable_by_window_background" =>
::core::option::Option::Some(29usize),
"fullsize_content_view" =>
::core::option::Option::Some(30usize),
"has_shadow" => ::core::option::Option::Some(31usize),
"titlebar_shown" => ::core::option::Option::Some(32usize),
"titlebar_transparent" =>
::core::option::Option::Some(33usize),
"titlebar_show_title" =>
::core::option::Option::Some(34usize),
"titlebar_show_buttons" =>
::core::option::Option::Some(35usize),
"borderless_game" => ::core::option::Option::Some(36usize),
"prefers_home_indicator_hidden" =>
::core::option::Option::Some(37usize),
"prefers_status_bar_hidden" =>
::core::option::Option::Some(38usize),
"preferred_screen_edges_deferring_system_gestures" =>
::core::option::Option::Some(39usize),
_ => ::core::option::Option::None,
}
}
fn field_len(&self) -> usize { 40usize }
fn iter_fields(&self) -> bevy_reflect::structs::FieldIter {
bevy_reflect::structs::FieldIter::new(self)
}
fn to_dynamic_struct(&self)
-> bevy_reflect::structs::DynamicStruct {
let mut dynamic: bevy_reflect::structs::DynamicStruct =
::core::default::Default::default();
dynamic.set_represented_type(bevy_reflect::PartialReflect::get_represented_type_info(self));
dynamic.insert_boxed("present_mode",
bevy_reflect::PartialReflect::to_dynamic(&self.present_mode));
dynamic.insert_boxed("mode",
bevy_reflect::PartialReflect::to_dynamic(&self.mode));
dynamic.insert_boxed("position",
bevy_reflect::PartialReflect::to_dynamic(&self.position));
dynamic.insert_boxed("resolution",
bevy_reflect::PartialReflect::to_dynamic(&self.resolution));
dynamic.insert_boxed("title",
bevy_reflect::PartialReflect::to_dynamic(&self.title));
dynamic.insert_boxed("name",
bevy_reflect::PartialReflect::to_dynamic(&self.name));
dynamic.insert_boxed("composite_alpha_mode",
bevy_reflect::PartialReflect::to_dynamic(&self.composite_alpha_mode));
dynamic.insert_boxed("resize_constraints",
bevy_reflect::PartialReflect::to_dynamic(&self.resize_constraints));
dynamic.insert_boxed("resizable",
bevy_reflect::PartialReflect::to_dynamic(&self.resizable));
dynamic.insert_boxed("enabled_buttons",
bevy_reflect::PartialReflect::to_dynamic(&self.enabled_buttons));
dynamic.insert_boxed("decorations",
bevy_reflect::PartialReflect::to_dynamic(&self.decorations));
dynamic.insert_boxed("transparent",
bevy_reflect::PartialReflect::to_dynamic(&self.transparent));
dynamic.insert_boxed("focused",
bevy_reflect::PartialReflect::to_dynamic(&self.focused));
dynamic.insert_boxed("window_level",
bevy_reflect::PartialReflect::to_dynamic(&self.window_level));
dynamic.insert_boxed("canvas",
bevy_reflect::PartialReflect::to_dynamic(&self.canvas));
dynamic.insert_boxed("fit_canvas_to_parent",
bevy_reflect::PartialReflect::to_dynamic(&self.fit_canvas_to_parent));
dynamic.insert_boxed("prevent_default_event_handling",
bevy_reflect::PartialReflect::to_dynamic(&self.prevent_default_event_handling));
dynamic.insert_boxed("internal",
bevy_reflect::PartialReflect::to_dynamic(&self.internal));
dynamic.insert_boxed("ime_enabled",
bevy_reflect::PartialReflect::to_dynamic(&self.ime_enabled));
dynamic.insert_boxed("ime_position",
bevy_reflect::PartialReflect::to_dynamic(&self.ime_position));
dynamic.insert_boxed("window_theme",
bevy_reflect::PartialReflect::to_dynamic(&self.window_theme));
dynamic.insert_boxed("visible",
bevy_reflect::PartialReflect::to_dynamic(&self.visible));
dynamic.insert_boxed("skip_taskbar",
bevy_reflect::PartialReflect::to_dynamic(&self.skip_taskbar));
dynamic.insert_boxed("clip_children",
bevy_reflect::PartialReflect::to_dynamic(&self.clip_children));
dynamic.insert_boxed("desired_maximum_frame_latency",
bevy_reflect::PartialReflect::to_dynamic(&self.desired_maximum_frame_latency));
dynamic.insert_boxed("recognize_pinch_gesture",
bevy_reflect::PartialReflect::to_dynamic(&self.recognize_pinch_gesture));
dynamic.insert_boxed("recognize_rotation_gesture",
bevy_reflect::PartialReflect::to_dynamic(&self.recognize_rotation_gesture));
dynamic.insert_boxed("recognize_doubletap_gesture",
bevy_reflect::PartialReflect::to_dynamic(&self.recognize_doubletap_gesture));
dynamic.insert_boxed("recognize_pan_gesture",
bevy_reflect::PartialReflect::to_dynamic(&self.recognize_pan_gesture));
dynamic.insert_boxed("movable_by_window_background",
bevy_reflect::PartialReflect::to_dynamic(&self.movable_by_window_background));
dynamic.insert_boxed("fullsize_content_view",
bevy_reflect::PartialReflect::to_dynamic(&self.fullsize_content_view));
dynamic.insert_boxed("has_shadow",
bevy_reflect::PartialReflect::to_dynamic(&self.has_shadow));
dynamic.insert_boxed("titlebar_shown",
bevy_reflect::PartialReflect::to_dynamic(&self.titlebar_shown));
dynamic.insert_boxed("titlebar_transparent",
bevy_reflect::PartialReflect::to_dynamic(&self.titlebar_transparent));
dynamic.insert_boxed("titlebar_show_title",
bevy_reflect::PartialReflect::to_dynamic(&self.titlebar_show_title));
dynamic.insert_boxed("titlebar_show_buttons",
bevy_reflect::PartialReflect::to_dynamic(&self.titlebar_show_buttons));
dynamic.insert_boxed("borderless_game",
bevy_reflect::PartialReflect::to_dynamic(&self.borderless_game));
dynamic.insert_boxed("prefers_home_indicator_hidden",
bevy_reflect::PartialReflect::to_dynamic(&self.prefers_home_indicator_hidden));
dynamic.insert_boxed("prefers_status_bar_hidden",
bevy_reflect::PartialReflect::to_dynamic(&self.prefers_status_bar_hidden));
dynamic.insert_boxed("preferred_screen_edges_deferring_system_gestures",
bevy_reflect::PartialReflect::to_dynamic(&self.preferred_screen_edges_deferring_system_gestures));
dynamic
}
}
impl bevy_reflect::PartialReflect for Window where {
#[inline]
fn get_represented_type_info(&self)
-> ::core::option::Option<&'static bevy_reflect::TypeInfo> {
::core::option::Option::Some(<Self as
bevy_reflect::Typed>::type_info())
}
#[inline]
fn try_apply(&mut self, value: &dyn bevy_reflect::PartialReflect)
-> ::core::result::Result<(), bevy_reflect::ApplyError> {
if let bevy_reflect::ReflectRef::Struct(struct_value) =
bevy_reflect::PartialReflect::reflect_ref(value) {
for (name, value) in
bevy_reflect::structs::Struct::iter_fields(struct_value) {
if let ::core::option::Option::Some(v) =
bevy_reflect::structs::Struct::field_mut(self, name) {
bevy_reflect::PartialReflect::try_apply(v, value)?;
}
}
} else {
return ::core::result::Result::Err(bevy_reflect::ApplyError::MismatchedKinds {
from_kind: bevy_reflect::PartialReflect::reflect_kind(value),
to_kind: bevy_reflect::ReflectKind::Struct,
});
}
::core::result::Result::Ok(())
}
#[inline]
fn reflect_kind(&self) -> bevy_reflect::ReflectKind {
bevy_reflect::ReflectKind::Struct
}
#[inline]
fn reflect_ref(&self) -> bevy_reflect::ReflectRef {
bevy_reflect::ReflectRef::Struct(self)
}
#[inline]
fn reflect_mut(&mut self) -> bevy_reflect::ReflectMut {
bevy_reflect::ReflectMut::Struct(self)
}
#[inline]
fn reflect_owned(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
-> bevy_reflect::ReflectOwned {
bevy_reflect::ReflectOwned::Struct(self)
}
#[inline]
fn try_into_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
::core::result::Result<bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>,
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::PartialReflect>> {
::core::result::Result::Ok(self)
}
#[inline]
fn try_as_reflect(&self)
-> ::core::option::Option<&dyn bevy_reflect::Reflect> {
::core::option::Option::Some(self)
}
#[inline]
fn try_as_reflect_mut(&mut self)
-> ::core::option::Option<&mut dyn bevy_reflect::Reflect> {
::core::option::Option::Some(self)
}
#[inline]
fn into_partial_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::PartialReflect> {
self
}
#[inline]
fn as_partial_reflect(&self)
-> &dyn bevy_reflect::PartialReflect {
self
}
#[inline]
fn as_partial_reflect_mut(&mut self)
-> &mut dyn bevy_reflect::PartialReflect {
self
}
fn reflect_partial_eq(&self,
value: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<bool> {
(bevy_reflect::structs::struct_partial_eq)(self, value)
}
fn reflect_partial_cmp(&self,
value: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<::core::cmp::Ordering> {
(bevy_reflect::structs::struct_partial_cmp)(self, value)
}
fn debug(&self, f: &mut ::core::fmt::Formatter<'_>)
-> ::core::fmt::Result {
::core::fmt::Debug::fmt(self, f)
}
#[inline]
fn reflect_clone(&self)
->
::core::result::Result<bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>,
bevy_reflect::ReflectCloneError> {
::core::result::Result::Ok(bevy_reflect::__macro_exports::alloc_utils::Box::new(::core::clone::Clone::clone(self)))
}
}
impl bevy_reflect::FromReflect for Window where {
fn from_reflect(reflect: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<Self> {
if let bevy_reflect::ReflectRef::Struct(__ref_struct) =
bevy_reflect::PartialReflect::reflect_ref(reflect) {
let mut __this =
<Self as ::core::default::Default>::default();
if let ::core::option::Option::Some(__field) =
(||
<PresentMode as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"present_mode")?))() {
__this.present_mode = __field;
}
if let ::core::option::Option::Some(__field) =
(||
<WindowMode as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"mode")?))() {
__this.mode = __field;
}
if let ::core::option::Option::Some(__field) =
(||
<WindowPosition as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"position")?))() {
__this.position = __field;
}
if let ::core::option::Option::Some(__field) =
(||
<WindowResolution as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"resolution")?))() {
__this.resolution = __field;
}
if let ::core::option::Option::Some(__field) =
(||
<String as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"title")?))() {
__this.title = __field;
}
if let ::core::option::Option::Some(__field) =
(||
<Option<String> as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"name")?))() {
__this.name = __field;
}
if let ::core::option::Option::Some(__field) =
(||
<CompositeAlphaMode as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"composite_alpha_mode")?))() {
__this.composite_alpha_mode = __field;
}
if let ::core::option::Option::Some(__field) =
(||
<WindowResizeConstraints as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"resize_constraints")?))() {
__this.resize_constraints = __field;
}
if let ::core::option::Option::Some(__field) =
(||
<bool as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"resizable")?))() {
__this.resizable = __field;
}
if let ::core::option::Option::Some(__field) =
(||
<EnabledButtons as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"enabled_buttons")?))() {
__this.enabled_buttons = __field;
}
if let ::core::option::Option::Some(__field) =
(||
<bool as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"decorations")?))() {
__this.decorations = __field;
}
if let ::core::option::Option::Some(__field) =
(||
<bool as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"transparent")?))() {
__this.transparent = __field;
}
if let ::core::option::Option::Some(__field) =
(||
<bool as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"focused")?))() {
__this.focused = __field;
}
if let ::core::option::Option::Some(__field) =
(||
<WindowLevel as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"window_level")?))() {
__this.window_level = __field;
}
if let ::core::option::Option::Some(__field) =
(||
<Option<String> as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"canvas")?))() {
__this.canvas = __field;
}
if let ::core::option::Option::Some(__field) =
(||
<bool as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"fit_canvas_to_parent")?))() {
__this.fit_canvas_to_parent = __field;
}
if let ::core::option::Option::Some(__field) =
(||
<bool as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"prevent_default_event_handling")?))() {
__this.prevent_default_event_handling = __field;
}
if let ::core::option::Option::Some(__field) =
(||
<InternalWindowState as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"internal")?))() {
__this.internal = __field;
}
if let ::core::option::Option::Some(__field) =
(||
<bool as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"ime_enabled")?))() {
__this.ime_enabled = __field;
}
if let ::core::option::Option::Some(__field) =
(||
<Vec2 as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"ime_position")?))() {
__this.ime_position = __field;
}
if let ::core::option::Option::Some(__field) =
(||
<Option<WindowTheme> as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"window_theme")?))() {
__this.window_theme = __field;
}
if let ::core::option::Option::Some(__field) =
(||
<bool as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"visible")?))() {
__this.visible = __field;
}
if let ::core::option::Option::Some(__field) =
(||
<bool as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"skip_taskbar")?))() {
__this.skip_taskbar = __field;
}
if let ::core::option::Option::Some(__field) =
(||
<bool as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"clip_children")?))() {
__this.clip_children = __field;
}
if let ::core::option::Option::Some(__field) =
(||
<Option<NonZero<u32>> as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"desired_maximum_frame_latency")?))() {
__this.desired_maximum_frame_latency = __field;
}
if let ::core::option::Option::Some(__field) =
(||
<bool as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"recognize_pinch_gesture")?))() {
__this.recognize_pinch_gesture = __field;
}
if let ::core::option::Option::Some(__field) =
(||
<bool as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"recognize_rotation_gesture")?))() {
__this.recognize_rotation_gesture = __field;
}
if let ::core::option::Option::Some(__field) =
(||
<bool as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"recognize_doubletap_gesture")?))() {
__this.recognize_doubletap_gesture = __field;
}
if let ::core::option::Option::Some(__field) =
(||
<Option<(u8, u8)> as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"recognize_pan_gesture")?))() {
__this.recognize_pan_gesture = __field;
}
if let ::core::option::Option::Some(__field) =
(||
<bool as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"movable_by_window_background")?))() {
__this.movable_by_window_background = __field;
}
if let ::core::option::Option::Some(__field) =
(||
<bool as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"fullsize_content_view")?))() {
__this.fullsize_content_view = __field;
}
if let ::core::option::Option::Some(__field) =
(||
<bool as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"has_shadow")?))() {
__this.has_shadow = __field;
}
if let ::core::option::Option::Some(__field) =
(||
<bool as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"titlebar_shown")?))() {
__this.titlebar_shown = __field;
}
if let ::core::option::Option::Some(__field) =
(||
<bool as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"titlebar_transparent")?))() {
__this.titlebar_transparent = __field;
}
if let ::core::option::Option::Some(__field) =
(||
<bool as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"titlebar_show_title")?))() {
__this.titlebar_show_title = __field;
}
if let ::core::option::Option::Some(__field) =
(||
<bool as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"titlebar_show_buttons")?))() {
__this.titlebar_show_buttons = __field;
}
if let ::core::option::Option::Some(__field) =
(||
<bool as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"borderless_game")?))() {
__this.borderless_game = __field;
}
if let ::core::option::Option::Some(__field) =
(||
<bool as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"prefers_home_indicator_hidden")?))() {
__this.prefers_home_indicator_hidden = __field;
}
if let ::core::option::Option::Some(__field) =
(||
<bool as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"prefers_status_bar_hidden")?))() {
__this.prefers_status_bar_hidden = __field;
}
if let ::core::option::Option::Some(__field) =
(||
<ScreenEdge as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"preferred_screen_edges_deferring_system_gestures")?))() {
__this.preferred_screen_edges_deferring_system_gestures =
__field;
}
::core::option::Option::Some(__this)
} else { ::core::option::Option::None }
}
}
};Reflect),
156 reflect(Component, Default, Debug, Clone)
157)]
158#[cfg_attr(feature = "serialize", derive(#[doc(hidden)]
#[allow(non_upper_case_globals, unused_attributes, unused_qualifications,
clippy :: absolute_paths,)]
const _: () =
{
#[allow(unused_extern_crates, clippy :: useless_attribute)]
extern crate serde as _serde;
;
#[automatically_derived]
impl _serde::Serialize for Window {
fn serialize<__S>(&self, __serializer: __S)
-> _serde::__private228::Result<__S::Ok, __S::Error> where
__S: _serde::Serializer {
let mut __serde_state =
_serde::Serializer::serialize_struct(__serializer, "Window",
false as usize + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 +
1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 +
1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"present_mode", &self.present_mode)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"mode", &self.mode)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"position", &self.position)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"resolution", &self.resolution)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"title", &self.title)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"name", &self.name)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"composite_alpha_mode", &self.composite_alpha_mode)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"resize_constraints", &self.resize_constraints)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"resizable", &self.resizable)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"enabled_buttons", &self.enabled_buttons)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"decorations", &self.decorations)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"transparent", &self.transparent)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"focused", &self.focused)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"window_level", &self.window_level)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"canvas", &self.canvas)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"fit_canvas_to_parent", &self.fit_canvas_to_parent)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"prevent_default_event_handling",
&self.prevent_default_event_handling)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"internal", &self.internal)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"ime_enabled", &self.ime_enabled)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"ime_position", &self.ime_position)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"window_theme", &self.window_theme)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"visible", &self.visible)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"skip_taskbar", &self.skip_taskbar)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"clip_children", &self.clip_children)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"desired_maximum_frame_latency",
&self.desired_maximum_frame_latency)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"recognize_pinch_gesture", &self.recognize_pinch_gesture)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"recognize_rotation_gesture",
&self.recognize_rotation_gesture)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"recognize_doubletap_gesture",
&self.recognize_doubletap_gesture)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"recognize_pan_gesture", &self.recognize_pan_gesture)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"movable_by_window_background",
&self.movable_by_window_background)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"fullsize_content_view", &self.fullsize_content_view)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"has_shadow", &self.has_shadow)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"titlebar_shown", &self.titlebar_shown)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"titlebar_transparent", &self.titlebar_transparent)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"titlebar_show_title", &self.titlebar_show_title)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"titlebar_show_buttons", &self.titlebar_show_buttons)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"borderless_game", &self.borderless_game)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"prefers_home_indicator_hidden",
&self.prefers_home_indicator_hidden)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"prefers_status_bar_hidden",
&self.prefers_status_bar_hidden)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"preferred_screen_edges_deferring_system_gestures",
&self.preferred_screen_edges_deferring_system_gestures)?;
_serde::ser::SerializeStruct::end(__serde_state)
}
}
};serde::Serialize, #[doc(hidden)]
#[allow(non_upper_case_globals, unused_attributes, unused_qualifications,
clippy :: absolute_paths,)]
const _: () =
{
#[allow(unused_extern_crates, clippy :: useless_attribute)]
extern crate serde as _serde;
;
#[automatically_derived]
impl<'de> _serde::Deserialize<'de> for Window {
fn deserialize<__D>(__deserializer: __D)
-> _serde::__private228::Result<Self, __D::Error> where
__D: _serde::Deserializer<'de> {
#[allow(non_camel_case_types)]
#[doc(hidden)]
enum __Field {
__field0,
__field1,
__field2,
__field3,
__field4,
__field5,
__field6,
__field7,
__field8,
__field9,
__field10,
__field11,
__field12,
__field13,
__field14,
__field15,
__field16,
__field17,
__field18,
__field19,
__field20,
__field21,
__field22,
__field23,
__field24,
__field25,
__field26,
__field27,
__field28,
__field29,
__field30,
__field31,
__field32,
__field33,
__field34,
__field35,
__field36,
__field37,
__field38,
__field39,
__ignore,
}
#[doc(hidden)]
struct __FieldVisitor;
#[automatically_derived]
impl<'de> _serde::de::Visitor<'de> for __FieldVisitor {
type Value = __Field;
fn expecting(&self,
__formatter: &mut _serde::__private228::Formatter)
-> _serde::__private228::fmt::Result {
_serde::__private228::Formatter::write_str(__formatter,
"field identifier")
}
fn visit_u64<__E>(self, __value: u64)
-> _serde::__private228::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
0u64 => _serde::__private228::Ok(__Field::__field0),
1u64 => _serde::__private228::Ok(__Field::__field1),
2u64 => _serde::__private228::Ok(__Field::__field2),
3u64 => _serde::__private228::Ok(__Field::__field3),
4u64 => _serde::__private228::Ok(__Field::__field4),
5u64 => _serde::__private228::Ok(__Field::__field5),
6u64 => _serde::__private228::Ok(__Field::__field6),
7u64 => _serde::__private228::Ok(__Field::__field7),
8u64 => _serde::__private228::Ok(__Field::__field8),
9u64 => _serde::__private228::Ok(__Field::__field9),
10u64 => _serde::__private228::Ok(__Field::__field10),
11u64 => _serde::__private228::Ok(__Field::__field11),
12u64 => _serde::__private228::Ok(__Field::__field12),
13u64 => _serde::__private228::Ok(__Field::__field13),
14u64 => _serde::__private228::Ok(__Field::__field14),
15u64 => _serde::__private228::Ok(__Field::__field15),
16u64 => _serde::__private228::Ok(__Field::__field16),
17u64 => _serde::__private228::Ok(__Field::__field17),
18u64 => _serde::__private228::Ok(__Field::__field18),
19u64 => _serde::__private228::Ok(__Field::__field19),
20u64 => _serde::__private228::Ok(__Field::__field20),
21u64 => _serde::__private228::Ok(__Field::__field21),
22u64 => _serde::__private228::Ok(__Field::__field22),
23u64 => _serde::__private228::Ok(__Field::__field23),
24u64 => _serde::__private228::Ok(__Field::__field24),
25u64 => _serde::__private228::Ok(__Field::__field25),
26u64 => _serde::__private228::Ok(__Field::__field26),
27u64 => _serde::__private228::Ok(__Field::__field27),
28u64 => _serde::__private228::Ok(__Field::__field28),
29u64 => _serde::__private228::Ok(__Field::__field29),
30u64 => _serde::__private228::Ok(__Field::__field30),
31u64 => _serde::__private228::Ok(__Field::__field31),
32u64 => _serde::__private228::Ok(__Field::__field32),
33u64 => _serde::__private228::Ok(__Field::__field33),
34u64 => _serde::__private228::Ok(__Field::__field34),
35u64 => _serde::__private228::Ok(__Field::__field35),
36u64 => _serde::__private228::Ok(__Field::__field36),
37u64 => _serde::__private228::Ok(__Field::__field37),
38u64 => _serde::__private228::Ok(__Field::__field38),
39u64 => _serde::__private228::Ok(__Field::__field39),
_ => _serde::__private228::Ok(__Field::__ignore),
}
}
fn visit_str<__E>(self, __value: &str)
-> _serde::__private228::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
"present_mode" =>
_serde::__private228::Ok(__Field::__field0),
"mode" => _serde::__private228::Ok(__Field::__field1),
"position" => _serde::__private228::Ok(__Field::__field2),
"resolution" => _serde::__private228::Ok(__Field::__field3),
"title" => _serde::__private228::Ok(__Field::__field4),
"name" => _serde::__private228::Ok(__Field::__field5),
"composite_alpha_mode" =>
_serde::__private228::Ok(__Field::__field6),
"resize_constraints" =>
_serde::__private228::Ok(__Field::__field7),
"resizable" => _serde::__private228::Ok(__Field::__field8),
"enabled_buttons" =>
_serde::__private228::Ok(__Field::__field9),
"decorations" =>
_serde::__private228::Ok(__Field::__field10),
"transparent" =>
_serde::__private228::Ok(__Field::__field11),
"focused" => _serde::__private228::Ok(__Field::__field12),
"window_level" =>
_serde::__private228::Ok(__Field::__field13),
"canvas" => _serde::__private228::Ok(__Field::__field14),
"fit_canvas_to_parent" =>
_serde::__private228::Ok(__Field::__field15),
"prevent_default_event_handling" =>
_serde::__private228::Ok(__Field::__field16),
"internal" => _serde::__private228::Ok(__Field::__field17),
"ime_enabled" =>
_serde::__private228::Ok(__Field::__field18),
"ime_position" =>
_serde::__private228::Ok(__Field::__field19),
"window_theme" =>
_serde::__private228::Ok(__Field::__field20),
"visible" => _serde::__private228::Ok(__Field::__field21),
"skip_taskbar" =>
_serde::__private228::Ok(__Field::__field22),
"clip_children" =>
_serde::__private228::Ok(__Field::__field23),
"desired_maximum_frame_latency" =>
_serde::__private228::Ok(__Field::__field24),
"recognize_pinch_gesture" =>
_serde::__private228::Ok(__Field::__field25),
"recognize_rotation_gesture" =>
_serde::__private228::Ok(__Field::__field26),
"recognize_doubletap_gesture" =>
_serde::__private228::Ok(__Field::__field27),
"recognize_pan_gesture" =>
_serde::__private228::Ok(__Field::__field28),
"movable_by_window_background" =>
_serde::__private228::Ok(__Field::__field29),
"fullsize_content_view" =>
_serde::__private228::Ok(__Field::__field30),
"has_shadow" =>
_serde::__private228::Ok(__Field::__field31),
"titlebar_shown" =>
_serde::__private228::Ok(__Field::__field32),
"titlebar_transparent" =>
_serde::__private228::Ok(__Field::__field33),
"titlebar_show_title" =>
_serde::__private228::Ok(__Field::__field34),
"titlebar_show_buttons" =>
_serde::__private228::Ok(__Field::__field35),
"borderless_game" =>
_serde::__private228::Ok(__Field::__field36),
"prefers_home_indicator_hidden" =>
_serde::__private228::Ok(__Field::__field37),
"prefers_status_bar_hidden" =>
_serde::__private228::Ok(__Field::__field38),
"preferred_screen_edges_deferring_system_gestures" =>
_serde::__private228::Ok(__Field::__field39),
_ => { _serde::__private228::Ok(__Field::__ignore) }
}
}
fn visit_bytes<__E>(self, __value: &[u8])
-> _serde::__private228::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
b"present_mode" =>
_serde::__private228::Ok(__Field::__field0),
b"mode" => _serde::__private228::Ok(__Field::__field1),
b"position" => _serde::__private228::Ok(__Field::__field2),
b"resolution" =>
_serde::__private228::Ok(__Field::__field3),
b"title" => _serde::__private228::Ok(__Field::__field4),
b"name" => _serde::__private228::Ok(__Field::__field5),
b"composite_alpha_mode" =>
_serde::__private228::Ok(__Field::__field6),
b"resize_constraints" =>
_serde::__private228::Ok(__Field::__field7),
b"resizable" => _serde::__private228::Ok(__Field::__field8),
b"enabled_buttons" =>
_serde::__private228::Ok(__Field::__field9),
b"decorations" =>
_serde::__private228::Ok(__Field::__field10),
b"transparent" =>
_serde::__private228::Ok(__Field::__field11),
b"focused" => _serde::__private228::Ok(__Field::__field12),
b"window_level" =>
_serde::__private228::Ok(__Field::__field13),
b"canvas" => _serde::__private228::Ok(__Field::__field14),
b"fit_canvas_to_parent" =>
_serde::__private228::Ok(__Field::__field15),
b"prevent_default_event_handling" =>
_serde::__private228::Ok(__Field::__field16),
b"internal" => _serde::__private228::Ok(__Field::__field17),
b"ime_enabled" =>
_serde::__private228::Ok(__Field::__field18),
b"ime_position" =>
_serde::__private228::Ok(__Field::__field19),
b"window_theme" =>
_serde::__private228::Ok(__Field::__field20),
b"visible" => _serde::__private228::Ok(__Field::__field21),
b"skip_taskbar" =>
_serde::__private228::Ok(__Field::__field22),
b"clip_children" =>
_serde::__private228::Ok(__Field::__field23),
b"desired_maximum_frame_latency" =>
_serde::__private228::Ok(__Field::__field24),
b"recognize_pinch_gesture" =>
_serde::__private228::Ok(__Field::__field25),
b"recognize_rotation_gesture" =>
_serde::__private228::Ok(__Field::__field26),
b"recognize_doubletap_gesture" =>
_serde::__private228::Ok(__Field::__field27),
b"recognize_pan_gesture" =>
_serde::__private228::Ok(__Field::__field28),
b"movable_by_window_background" =>
_serde::__private228::Ok(__Field::__field29),
b"fullsize_content_view" =>
_serde::__private228::Ok(__Field::__field30),
b"has_shadow" =>
_serde::__private228::Ok(__Field::__field31),
b"titlebar_shown" =>
_serde::__private228::Ok(__Field::__field32),
b"titlebar_transparent" =>
_serde::__private228::Ok(__Field::__field33),
b"titlebar_show_title" =>
_serde::__private228::Ok(__Field::__field34),
b"titlebar_show_buttons" =>
_serde::__private228::Ok(__Field::__field35),
b"borderless_game" =>
_serde::__private228::Ok(__Field::__field36),
b"prefers_home_indicator_hidden" =>
_serde::__private228::Ok(__Field::__field37),
b"prefers_status_bar_hidden" =>
_serde::__private228::Ok(__Field::__field38),
b"preferred_screen_edges_deferring_system_gestures" =>
_serde::__private228::Ok(__Field::__field39),
_ => { _serde::__private228::Ok(__Field::__ignore) }
}
}
}
#[automatically_derived]
impl<'de> _serde::Deserialize<'de> for __Field {
#[inline]
fn deserialize<__D>(__deserializer: __D)
-> _serde::__private228::Result<Self, __D::Error> where
__D: _serde::Deserializer<'de> {
_serde::Deserializer::deserialize_identifier(__deserializer,
__FieldVisitor)
}
}
#[doc(hidden)]
struct __Visitor<'de> {
marker: _serde::__private228::PhantomData<Window>,
lifetime: _serde::__private228::PhantomData<&'de ()>,
}
#[automatically_derived]
impl<'de> _serde::de::Visitor<'de> for __Visitor<'de> {
type Value = Window;
fn expecting(&self,
__formatter: &mut _serde::__private228::Formatter)
-> _serde::__private228::fmt::Result {
_serde::__private228::Formatter::write_str(__formatter,
"struct Window")
}
#[inline]
fn visit_seq<__A>(self, mut __seq: __A)
-> _serde::__private228::Result<Self::Value, __A::Error>
where __A: _serde::de::SeqAccess<'de> {
let __field0 =
match _serde::de::SeqAccess::next_element::<PresentMode>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(0usize,
&"struct Window with 40 elements")),
};
let __field1 =
match _serde::de::SeqAccess::next_element::<WindowMode>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(1usize,
&"struct Window with 40 elements")),
};
let __field2 =
match _serde::de::SeqAccess::next_element::<WindowPosition>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(2usize,
&"struct Window with 40 elements")),
};
let __field3 =
match _serde::de::SeqAccess::next_element::<WindowResolution>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(3usize,
&"struct Window with 40 elements")),
};
let __field4 =
match _serde::de::SeqAccess::next_element::<String>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(4usize,
&"struct Window with 40 elements")),
};
let __field5 =
match _serde::de::SeqAccess::next_element::<Option<String>>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(5usize,
&"struct Window with 40 elements")),
};
let __field6 =
match _serde::de::SeqAccess::next_element::<CompositeAlphaMode>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(6usize,
&"struct Window with 40 elements")),
};
let __field7 =
match _serde::de::SeqAccess::next_element::<WindowResizeConstraints>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(7usize,
&"struct Window with 40 elements")),
};
let __field8 =
match _serde::de::SeqAccess::next_element::<bool>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(8usize,
&"struct Window with 40 elements")),
};
let __field9 =
match _serde::de::SeqAccess::next_element::<EnabledButtons>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(9usize,
&"struct Window with 40 elements")),
};
let __field10 =
match _serde::de::SeqAccess::next_element::<bool>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(10usize,
&"struct Window with 40 elements")),
};
let __field11 =
match _serde::de::SeqAccess::next_element::<bool>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(11usize,
&"struct Window with 40 elements")),
};
let __field12 =
match _serde::de::SeqAccess::next_element::<bool>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(12usize,
&"struct Window with 40 elements")),
};
let __field13 =
match _serde::de::SeqAccess::next_element::<WindowLevel>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(13usize,
&"struct Window with 40 elements")),
};
let __field14 =
match _serde::de::SeqAccess::next_element::<Option<String>>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(14usize,
&"struct Window with 40 elements")),
};
let __field15 =
match _serde::de::SeqAccess::next_element::<bool>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(15usize,
&"struct Window with 40 elements")),
};
let __field16 =
match _serde::de::SeqAccess::next_element::<bool>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(16usize,
&"struct Window with 40 elements")),
};
let __field17 =
match _serde::de::SeqAccess::next_element::<InternalWindowState>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(17usize,
&"struct Window with 40 elements")),
};
let __field18 =
match _serde::de::SeqAccess::next_element::<bool>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(18usize,
&"struct Window with 40 elements")),
};
let __field19 =
match _serde::de::SeqAccess::next_element::<Vec2>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(19usize,
&"struct Window with 40 elements")),
};
let __field20 =
match _serde::de::SeqAccess::next_element::<Option<WindowTheme>>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(20usize,
&"struct Window with 40 elements")),
};
let __field21 =
match _serde::de::SeqAccess::next_element::<bool>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(21usize,
&"struct Window with 40 elements")),
};
let __field22 =
match _serde::de::SeqAccess::next_element::<bool>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(22usize,
&"struct Window with 40 elements")),
};
let __field23 =
match _serde::de::SeqAccess::next_element::<bool>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(23usize,
&"struct Window with 40 elements")),
};
let __field24 =
match _serde::de::SeqAccess::next_element::<Option<NonZero<u32>>>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(24usize,
&"struct Window with 40 elements")),
};
let __field25 =
match _serde::de::SeqAccess::next_element::<bool>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(25usize,
&"struct Window with 40 elements")),
};
let __field26 =
match _serde::de::SeqAccess::next_element::<bool>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(26usize,
&"struct Window with 40 elements")),
};
let __field27 =
match _serde::de::SeqAccess::next_element::<bool>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(27usize,
&"struct Window with 40 elements")),
};
let __field28 =
match _serde::de::SeqAccess::next_element::<Option<(u8,
u8)>>(&mut __seq)? {
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(28usize,
&"struct Window with 40 elements")),
};
let __field29 =
match _serde::de::SeqAccess::next_element::<bool>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(29usize,
&"struct Window with 40 elements")),
};
let __field30 =
match _serde::de::SeqAccess::next_element::<bool>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(30usize,
&"struct Window with 40 elements")),
};
let __field31 =
match _serde::de::SeqAccess::next_element::<bool>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(31usize,
&"struct Window with 40 elements")),
};
let __field32 =
match _serde::de::SeqAccess::next_element::<bool>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(32usize,
&"struct Window with 40 elements")),
};
let __field33 =
match _serde::de::SeqAccess::next_element::<bool>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(33usize,
&"struct Window with 40 elements")),
};
let __field34 =
match _serde::de::SeqAccess::next_element::<bool>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(34usize,
&"struct Window with 40 elements")),
};
let __field35 =
match _serde::de::SeqAccess::next_element::<bool>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(35usize,
&"struct Window with 40 elements")),
};
let __field36 =
match _serde::de::SeqAccess::next_element::<bool>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(36usize,
&"struct Window with 40 elements")),
};
let __field37 =
match _serde::de::SeqAccess::next_element::<bool>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(37usize,
&"struct Window with 40 elements")),
};
let __field38 =
match _serde::de::SeqAccess::next_element::<bool>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(38usize,
&"struct Window with 40 elements")),
};
let __field39 =
match _serde::de::SeqAccess::next_element::<ScreenEdge>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(39usize,
&"struct Window with 40 elements")),
};
_serde::__private228::Ok(Window {
present_mode: __field0,
mode: __field1,
position: __field2,
resolution: __field3,
title: __field4,
name: __field5,
composite_alpha_mode: __field6,
resize_constraints: __field7,
resizable: __field8,
enabled_buttons: __field9,
decorations: __field10,
transparent: __field11,
focused: __field12,
window_level: __field13,
canvas: __field14,
fit_canvas_to_parent: __field15,
prevent_default_event_handling: __field16,
internal: __field17,
ime_enabled: __field18,
ime_position: __field19,
window_theme: __field20,
visible: __field21,
skip_taskbar: __field22,
clip_children: __field23,
desired_maximum_frame_latency: __field24,
recognize_pinch_gesture: __field25,
recognize_rotation_gesture: __field26,
recognize_doubletap_gesture: __field27,
recognize_pan_gesture: __field28,
movable_by_window_background: __field29,
fullsize_content_view: __field30,
has_shadow: __field31,
titlebar_shown: __field32,
titlebar_transparent: __field33,
titlebar_show_title: __field34,
titlebar_show_buttons: __field35,
borderless_game: __field36,
prefers_home_indicator_hidden: __field37,
prefers_status_bar_hidden: __field38,
preferred_screen_edges_deferring_system_gestures: __field39,
})
}
#[inline]
fn visit_map<__A>(self, mut __map: __A)
-> _serde::__private228::Result<Self::Value, __A::Error>
where __A: _serde::de::MapAccess<'de> {
let mut __field0:
_serde::__private228::Option<PresentMode> =
_serde::__private228::None;
let mut __field1: _serde::__private228::Option<WindowMode> =
_serde::__private228::None;
let mut __field2:
_serde::__private228::Option<WindowPosition> =
_serde::__private228::None;
let mut __field3:
_serde::__private228::Option<WindowResolution> =
_serde::__private228::None;
let mut __field4: _serde::__private228::Option<String> =
_serde::__private228::None;
let mut __field5:
_serde::__private228::Option<Option<String>> =
_serde::__private228::None;
let mut __field6:
_serde::__private228::Option<CompositeAlphaMode> =
_serde::__private228::None;
let mut __field7:
_serde::__private228::Option<WindowResizeConstraints> =
_serde::__private228::None;
let mut __field8: _serde::__private228::Option<bool> =
_serde::__private228::None;
let mut __field9:
_serde::__private228::Option<EnabledButtons> =
_serde::__private228::None;
let mut __field10: _serde::__private228::Option<bool> =
_serde::__private228::None;
let mut __field11: _serde::__private228::Option<bool> =
_serde::__private228::None;
let mut __field12: _serde::__private228::Option<bool> =
_serde::__private228::None;
let mut __field13:
_serde::__private228::Option<WindowLevel> =
_serde::__private228::None;
let mut __field14:
_serde::__private228::Option<Option<String>> =
_serde::__private228::None;
let mut __field15: _serde::__private228::Option<bool> =
_serde::__private228::None;
let mut __field16: _serde::__private228::Option<bool> =
_serde::__private228::None;
let mut __field17:
_serde::__private228::Option<InternalWindowState> =
_serde::__private228::None;
let mut __field18: _serde::__private228::Option<bool> =
_serde::__private228::None;
let mut __field19: _serde::__private228::Option<Vec2> =
_serde::__private228::None;
let mut __field20:
_serde::__private228::Option<Option<WindowTheme>> =
_serde::__private228::None;
let mut __field21: _serde::__private228::Option<bool> =
_serde::__private228::None;
let mut __field22: _serde::__private228::Option<bool> =
_serde::__private228::None;
let mut __field23: _serde::__private228::Option<bool> =
_serde::__private228::None;
let mut __field24:
_serde::__private228::Option<Option<NonZero<u32>>> =
_serde::__private228::None;
let mut __field25: _serde::__private228::Option<bool> =
_serde::__private228::None;
let mut __field26: _serde::__private228::Option<bool> =
_serde::__private228::None;
let mut __field27: _serde::__private228::Option<bool> =
_serde::__private228::None;
let mut __field28:
_serde::__private228::Option<Option<(u8, u8)>> =
_serde::__private228::None;
let mut __field29: _serde::__private228::Option<bool> =
_serde::__private228::None;
let mut __field30: _serde::__private228::Option<bool> =
_serde::__private228::None;
let mut __field31: _serde::__private228::Option<bool> =
_serde::__private228::None;
let mut __field32: _serde::__private228::Option<bool> =
_serde::__private228::None;
let mut __field33: _serde::__private228::Option<bool> =
_serde::__private228::None;
let mut __field34: _serde::__private228::Option<bool> =
_serde::__private228::None;
let mut __field35: _serde::__private228::Option<bool> =
_serde::__private228::None;
let mut __field36: _serde::__private228::Option<bool> =
_serde::__private228::None;
let mut __field37: _serde::__private228::Option<bool> =
_serde::__private228::None;
let mut __field38: _serde::__private228::Option<bool> =
_serde::__private228::None;
let mut __field39:
_serde::__private228::Option<ScreenEdge> =
_serde::__private228::None;
while let _serde::__private228::Some(__key) =
_serde::de::MapAccess::next_key::<__Field>(&mut __map)? {
match __key {
__Field::__field0 => {
if _serde::__private228::Option::is_some(&__field0) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("present_mode"));
}
__field0 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<PresentMode>(&mut __map)?);
}
__Field::__field1 => {
if _serde::__private228::Option::is_some(&__field1) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("mode"));
}
__field1 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<WindowMode>(&mut __map)?);
}
__Field::__field2 => {
if _serde::__private228::Option::is_some(&__field2) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("position"));
}
__field2 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<WindowPosition>(&mut __map)?);
}
__Field::__field3 => {
if _serde::__private228::Option::is_some(&__field3) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("resolution"));
}
__field3 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<WindowResolution>(&mut __map)?);
}
__Field::__field4 => {
if _serde::__private228::Option::is_some(&__field4) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("title"));
}
__field4 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<String>(&mut __map)?);
}
__Field::__field5 => {
if _serde::__private228::Option::is_some(&__field5) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("name"));
}
__field5 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<Option<String>>(&mut __map)?);
}
__Field::__field6 => {
if _serde::__private228::Option::is_some(&__field6) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("composite_alpha_mode"));
}
__field6 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<CompositeAlphaMode>(&mut __map)?);
}
__Field::__field7 => {
if _serde::__private228::Option::is_some(&__field7) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("resize_constraints"));
}
__field7 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<WindowResizeConstraints>(&mut __map)?);
}
__Field::__field8 => {
if _serde::__private228::Option::is_some(&__field8) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("resizable"));
}
__field8 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<bool>(&mut __map)?);
}
__Field::__field9 => {
if _serde::__private228::Option::is_some(&__field9) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("enabled_buttons"));
}
__field9 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<EnabledButtons>(&mut __map)?);
}
__Field::__field10 => {
if _serde::__private228::Option::is_some(&__field10) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("decorations"));
}
__field10 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<bool>(&mut __map)?);
}
__Field::__field11 => {
if _serde::__private228::Option::is_some(&__field11) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("transparent"));
}
__field11 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<bool>(&mut __map)?);
}
__Field::__field12 => {
if _serde::__private228::Option::is_some(&__field12) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("focused"));
}
__field12 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<bool>(&mut __map)?);
}
__Field::__field13 => {
if _serde::__private228::Option::is_some(&__field13) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("window_level"));
}
__field13 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<WindowLevel>(&mut __map)?);
}
__Field::__field14 => {
if _serde::__private228::Option::is_some(&__field14) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("canvas"));
}
__field14 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<Option<String>>(&mut __map)?);
}
__Field::__field15 => {
if _serde::__private228::Option::is_some(&__field15) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("fit_canvas_to_parent"));
}
__field15 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<bool>(&mut __map)?);
}
__Field::__field16 => {
if _serde::__private228::Option::is_some(&__field16) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("prevent_default_event_handling"));
}
__field16 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<bool>(&mut __map)?);
}
__Field::__field17 => {
if _serde::__private228::Option::is_some(&__field17) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("internal"));
}
__field17 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<InternalWindowState>(&mut __map)?);
}
__Field::__field18 => {
if _serde::__private228::Option::is_some(&__field18) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("ime_enabled"));
}
__field18 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<bool>(&mut __map)?);
}
__Field::__field19 => {
if _serde::__private228::Option::is_some(&__field19) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("ime_position"));
}
__field19 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<Vec2>(&mut __map)?);
}
__Field::__field20 => {
if _serde::__private228::Option::is_some(&__field20) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("window_theme"));
}
__field20 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<Option<WindowTheme>>(&mut __map)?);
}
__Field::__field21 => {
if _serde::__private228::Option::is_some(&__field21) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("visible"));
}
__field21 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<bool>(&mut __map)?);
}
__Field::__field22 => {
if _serde::__private228::Option::is_some(&__field22) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("skip_taskbar"));
}
__field22 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<bool>(&mut __map)?);
}
__Field::__field23 => {
if _serde::__private228::Option::is_some(&__field23) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("clip_children"));
}
__field23 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<bool>(&mut __map)?);
}
__Field::__field24 => {
if _serde::__private228::Option::is_some(&__field24) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("desired_maximum_frame_latency"));
}
__field24 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<Option<NonZero<u32>>>(&mut __map)?);
}
__Field::__field25 => {
if _serde::__private228::Option::is_some(&__field25) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("recognize_pinch_gesture"));
}
__field25 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<bool>(&mut __map)?);
}
__Field::__field26 => {
if _serde::__private228::Option::is_some(&__field26) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("recognize_rotation_gesture"));
}
__field26 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<bool>(&mut __map)?);
}
__Field::__field27 => {
if _serde::__private228::Option::is_some(&__field27) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("recognize_doubletap_gesture"));
}
__field27 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<bool>(&mut __map)?);
}
__Field::__field28 => {
if _serde::__private228::Option::is_some(&__field28) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("recognize_pan_gesture"));
}
__field28 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<Option<(u8,
u8)>>(&mut __map)?);
}
__Field::__field29 => {
if _serde::__private228::Option::is_some(&__field29) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("movable_by_window_background"));
}
__field29 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<bool>(&mut __map)?);
}
__Field::__field30 => {
if _serde::__private228::Option::is_some(&__field30) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("fullsize_content_view"));
}
__field30 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<bool>(&mut __map)?);
}
__Field::__field31 => {
if _serde::__private228::Option::is_some(&__field31) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("has_shadow"));
}
__field31 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<bool>(&mut __map)?);
}
__Field::__field32 => {
if _serde::__private228::Option::is_some(&__field32) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("titlebar_shown"));
}
__field32 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<bool>(&mut __map)?);
}
__Field::__field33 => {
if _serde::__private228::Option::is_some(&__field33) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("titlebar_transparent"));
}
__field33 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<bool>(&mut __map)?);
}
__Field::__field34 => {
if _serde::__private228::Option::is_some(&__field34) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("titlebar_show_title"));
}
__field34 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<bool>(&mut __map)?);
}
__Field::__field35 => {
if _serde::__private228::Option::is_some(&__field35) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("titlebar_show_buttons"));
}
__field35 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<bool>(&mut __map)?);
}
__Field::__field36 => {
if _serde::__private228::Option::is_some(&__field36) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("borderless_game"));
}
__field36 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<bool>(&mut __map)?);
}
__Field::__field37 => {
if _serde::__private228::Option::is_some(&__field37) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("prefers_home_indicator_hidden"));
}
__field37 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<bool>(&mut __map)?);
}
__Field::__field38 => {
if _serde::__private228::Option::is_some(&__field38) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("prefers_status_bar_hidden"));
}
__field38 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<bool>(&mut __map)?);
}
__Field::__field39 => {
if _serde::__private228::Option::is_some(&__field39) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("preferred_screen_edges_deferring_system_gestures"));
}
__field39 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<ScreenEdge>(&mut __map)?);
}
_ => {
let _ =
_serde::de::MapAccess::next_value::<_serde::de::IgnoredAny>(&mut __map)?;
}
}
}
let __field0 =
match __field0 {
_serde::__private228::Some(__field0) => __field0,
_serde::__private228::None =>
_serde::__private228::de::missing_field("present_mode")?,
};
let __field1 =
match __field1 {
_serde::__private228::Some(__field1) => __field1,
_serde::__private228::None =>
_serde::__private228::de::missing_field("mode")?,
};
let __field2 =
match __field2 {
_serde::__private228::Some(__field2) => __field2,
_serde::__private228::None =>
_serde::__private228::de::missing_field("position")?,
};
let __field3 =
match __field3 {
_serde::__private228::Some(__field3) => __field3,
_serde::__private228::None =>
_serde::__private228::de::missing_field("resolution")?,
};
let __field4 =
match __field4 {
_serde::__private228::Some(__field4) => __field4,
_serde::__private228::None =>
_serde::__private228::de::missing_field("title")?,
};
let __field5 =
match __field5 {
_serde::__private228::Some(__field5) => __field5,
_serde::__private228::None =>
_serde::__private228::de::missing_field("name")?,
};
let __field6 =
match __field6 {
_serde::__private228::Some(__field6) => __field6,
_serde::__private228::None =>
_serde::__private228::de::missing_field("composite_alpha_mode")?,
};
let __field7 =
match __field7 {
_serde::__private228::Some(__field7) => __field7,
_serde::__private228::None =>
_serde::__private228::de::missing_field("resize_constraints")?,
};
let __field8 =
match __field8 {
_serde::__private228::Some(__field8) => __field8,
_serde::__private228::None =>
_serde::__private228::de::missing_field("resizable")?,
};
let __field9 =
match __field9 {
_serde::__private228::Some(__field9) => __field9,
_serde::__private228::None =>
_serde::__private228::de::missing_field("enabled_buttons")?,
};
let __field10 =
match __field10 {
_serde::__private228::Some(__field10) => __field10,
_serde::__private228::None =>
_serde::__private228::de::missing_field("decorations")?,
};
let __field11 =
match __field11 {
_serde::__private228::Some(__field11) => __field11,
_serde::__private228::None =>
_serde::__private228::de::missing_field("transparent")?,
};
let __field12 =
match __field12 {
_serde::__private228::Some(__field12) => __field12,
_serde::__private228::None =>
_serde::__private228::de::missing_field("focused")?,
};
let __field13 =
match __field13 {
_serde::__private228::Some(__field13) => __field13,
_serde::__private228::None =>
_serde::__private228::de::missing_field("window_level")?,
};
let __field14 =
match __field14 {
_serde::__private228::Some(__field14) => __field14,
_serde::__private228::None =>
_serde::__private228::de::missing_field("canvas")?,
};
let __field15 =
match __field15 {
_serde::__private228::Some(__field15) => __field15,
_serde::__private228::None =>
_serde::__private228::de::missing_field("fit_canvas_to_parent")?,
};
let __field16 =
match __field16 {
_serde::__private228::Some(__field16) => __field16,
_serde::__private228::None =>
_serde::__private228::de::missing_field("prevent_default_event_handling")?,
};
let __field17 =
match __field17 {
_serde::__private228::Some(__field17) => __field17,
_serde::__private228::None =>
_serde::__private228::de::missing_field("internal")?,
};
let __field18 =
match __field18 {
_serde::__private228::Some(__field18) => __field18,
_serde::__private228::None =>
_serde::__private228::de::missing_field("ime_enabled")?,
};
let __field19 =
match __field19 {
_serde::__private228::Some(__field19) => __field19,
_serde::__private228::None =>
_serde::__private228::de::missing_field("ime_position")?,
};
let __field20 =
match __field20 {
_serde::__private228::Some(__field20) => __field20,
_serde::__private228::None =>
_serde::__private228::de::missing_field("window_theme")?,
};
let __field21 =
match __field21 {
_serde::__private228::Some(__field21) => __field21,
_serde::__private228::None =>
_serde::__private228::de::missing_field("visible")?,
};
let __field22 =
match __field22 {
_serde::__private228::Some(__field22) => __field22,
_serde::__private228::None =>
_serde::__private228::de::missing_field("skip_taskbar")?,
};
let __field23 =
match __field23 {
_serde::__private228::Some(__field23) => __field23,
_serde::__private228::None =>
_serde::__private228::de::missing_field("clip_children")?,
};
let __field24 =
match __field24 {
_serde::__private228::Some(__field24) => __field24,
_serde::__private228::None =>
_serde::__private228::de::missing_field("desired_maximum_frame_latency")?,
};
let __field25 =
match __field25 {
_serde::__private228::Some(__field25) => __field25,
_serde::__private228::None =>
_serde::__private228::de::missing_field("recognize_pinch_gesture")?,
};
let __field26 =
match __field26 {
_serde::__private228::Some(__field26) => __field26,
_serde::__private228::None =>
_serde::__private228::de::missing_field("recognize_rotation_gesture")?,
};
let __field27 =
match __field27 {
_serde::__private228::Some(__field27) => __field27,
_serde::__private228::None =>
_serde::__private228::de::missing_field("recognize_doubletap_gesture")?,
};
let __field28 =
match __field28 {
_serde::__private228::Some(__field28) => __field28,
_serde::__private228::None =>
_serde::__private228::de::missing_field("recognize_pan_gesture")?,
};
let __field29 =
match __field29 {
_serde::__private228::Some(__field29) => __field29,
_serde::__private228::None =>
_serde::__private228::de::missing_field("movable_by_window_background")?,
};
let __field30 =
match __field30 {
_serde::__private228::Some(__field30) => __field30,
_serde::__private228::None =>
_serde::__private228::de::missing_field("fullsize_content_view")?,
};
let __field31 =
match __field31 {
_serde::__private228::Some(__field31) => __field31,
_serde::__private228::None =>
_serde::__private228::de::missing_field("has_shadow")?,
};
let __field32 =
match __field32 {
_serde::__private228::Some(__field32) => __field32,
_serde::__private228::None =>
_serde::__private228::de::missing_field("titlebar_shown")?,
};
let __field33 =
match __field33 {
_serde::__private228::Some(__field33) => __field33,
_serde::__private228::None =>
_serde::__private228::de::missing_field("titlebar_transparent")?,
};
let __field34 =
match __field34 {
_serde::__private228::Some(__field34) => __field34,
_serde::__private228::None =>
_serde::__private228::de::missing_field("titlebar_show_title")?,
};
let __field35 =
match __field35 {
_serde::__private228::Some(__field35) => __field35,
_serde::__private228::None =>
_serde::__private228::de::missing_field("titlebar_show_buttons")?,
};
let __field36 =
match __field36 {
_serde::__private228::Some(__field36) => __field36,
_serde::__private228::None =>
_serde::__private228::de::missing_field("borderless_game")?,
};
let __field37 =
match __field37 {
_serde::__private228::Some(__field37) => __field37,
_serde::__private228::None =>
_serde::__private228::de::missing_field("prefers_home_indicator_hidden")?,
};
let __field38 =
match __field38 {
_serde::__private228::Some(__field38) => __field38,
_serde::__private228::None =>
_serde::__private228::de::missing_field("prefers_status_bar_hidden")?,
};
let __field39 =
match __field39 {
_serde::__private228::Some(__field39) => __field39,
_serde::__private228::None =>
_serde::__private228::de::missing_field("preferred_screen_edges_deferring_system_gestures")?,
};
_serde::__private228::Ok(Window {
present_mode: __field0,
mode: __field1,
position: __field2,
resolution: __field3,
title: __field4,
name: __field5,
composite_alpha_mode: __field6,
resize_constraints: __field7,
resizable: __field8,
enabled_buttons: __field9,
decorations: __field10,
transparent: __field11,
focused: __field12,
window_level: __field13,
canvas: __field14,
fit_canvas_to_parent: __field15,
prevent_default_event_handling: __field16,
internal: __field17,
ime_enabled: __field18,
ime_position: __field19,
window_theme: __field20,
visible: __field21,
skip_taskbar: __field22,
clip_children: __field23,
desired_maximum_frame_latency: __field24,
recognize_pinch_gesture: __field25,
recognize_rotation_gesture: __field26,
recognize_doubletap_gesture: __field27,
recognize_pan_gesture: __field28,
movable_by_window_background: __field29,
fullsize_content_view: __field30,
has_shadow: __field31,
titlebar_shown: __field32,
titlebar_transparent: __field33,
titlebar_show_title: __field34,
titlebar_show_buttons: __field35,
borderless_game: __field36,
prefers_home_indicator_hidden: __field37,
prefers_status_bar_hidden: __field38,
preferred_screen_edges_deferring_system_gestures: __field39,
})
}
}
#[doc(hidden)]
const FIELDS: &'static [&'static str] =
&["present_mode", "mode", "position", "resolution", "title",
"name", "composite_alpha_mode", "resize_constraints",
"resizable", "enabled_buttons", "decorations",
"transparent", "focused", "window_level", "canvas",
"fit_canvas_to_parent", "prevent_default_event_handling",
"internal", "ime_enabled", "ime_position", "window_theme",
"visible", "skip_taskbar", "clip_children",
"desired_maximum_frame_latency", "recognize_pinch_gesture",
"recognize_rotation_gesture", "recognize_doubletap_gesture",
"recognize_pan_gesture", "movable_by_window_background",
"fullsize_content_view", "has_shadow", "titlebar_shown",
"titlebar_transparent", "titlebar_show_title",
"titlebar_show_buttons", "borderless_game",
"prefers_home_indicator_hidden",
"prefers_status_bar_hidden",
"preferred_screen_edges_deferring_system_gestures"];
_serde::Deserializer::deserialize_struct(__deserializer,
"Window", FIELDS,
__Visitor {
marker: _serde::__private228::PhantomData::<Window>,
lifetime: _serde::__private228::PhantomData,
})
}
}
};serde::Deserialize))]
159#[cfg_attr(
160 all(feature = "serialize", feature = "bevy_reflect"),
161 reflect(Serialize, Deserialize)
162)]
163#[require(CursorOptions)]
164pub struct Window {
165 pub present_mode: PresentMode,
167 pub mode: WindowMode,
169 pub position: WindowPosition,
171 pub resolution: WindowResolution,
173 pub title: String,
175 pub name: Option<String>,
190 pub composite_alpha_mode: CompositeAlphaMode,
192 pub resize_constraints: WindowResizeConstraints,
195 pub resizable: bool,
200 pub enabled_buttons: EnabledButtons,
208 pub decorations: bool,
216 pub transparent: bool,
227 pub focused: bool,
238 pub window_level: WindowLevel,
244 pub canvas: Option<String>,
252 pub fit_canvas_to_parent: bool,
260 pub prevent_default_event_handling: bool,
267 pub internal: InternalWindowState,
269 pub ime_enabled: bool,
280 pub ime_position: Vec2,
286 pub window_theme: Option<WindowTheme>,
294 pub visible: bool,
304 pub skip_taskbar: bool,
315 pub clip_children: bool,
324 pub desired_maximum_frame_latency: Option<NonZero<u32>>,
333 pub recognize_pinch_gesture: bool,
340 pub recognize_rotation_gesture: bool,
347 pub recognize_doubletap_gesture: bool,
354 pub recognize_pan_gesture: Option<(u8, u8)>,
361 pub movable_by_window_background: bool,
371 pub fullsize_content_view: bool,
385 pub has_shadow: bool,
395 pub titlebar_shown: bool,
405 pub titlebar_transparent: bool,
415 pub titlebar_show_title: bool,
425 pub titlebar_show_buttons: bool,
435 pub borderless_game: bool,
447 pub prefers_home_indicator_hidden: bool,
457 pub prefers_status_bar_hidden: bool,
467 pub preferred_screen_edges_deferring_system_gestures: ScreenEdge,
478}
479
480impl Default for Window {
481 fn default() -> Self {
482 Self {
483 title: DEFAULT_WINDOW_TITLE.to_owned(),
484 name: None,
485 present_mode: Default::default(),
486 mode: Default::default(),
487 position: Default::default(),
488 resolution: Default::default(),
489 internal: Default::default(),
490 composite_alpha_mode: Default::default(),
491 resize_constraints: Default::default(),
492 ime_enabled: Default::default(),
493 ime_position: Default::default(),
494 resizable: true,
495 enabled_buttons: Default::default(),
496 decorations: true,
497 transparent: false,
498 focused: true,
499 window_level: Default::default(),
500 fit_canvas_to_parent: false,
501 prevent_default_event_handling: true,
502 canvas: None,
503 window_theme: None,
504 visible: true,
505 skip_taskbar: false,
506 clip_children: true,
507 desired_maximum_frame_latency: None,
508 recognize_pinch_gesture: false,
509 recognize_rotation_gesture: false,
510 recognize_doubletap_gesture: false,
511 recognize_pan_gesture: None,
512 movable_by_window_background: false,
513 fullsize_content_view: false,
514 has_shadow: true,
515 titlebar_shown: true,
516 titlebar_transparent: false,
517 titlebar_show_title: true,
518 titlebar_show_buttons: true,
519 borderless_game: true,
520 prefers_home_indicator_hidden: false,
521 prefers_status_bar_hidden: false,
522 preferred_screen_edges_deferring_system_gestures: Default::default(),
523 }
524 }
525}
526
527impl Window {
528 pub fn set_maximized(&mut self, maximized: bool) {
532 self.internal.maximize_request = Some(maximized);
533 }
534
535 pub fn set_minimized(&mut self, minimized: bool) {
539 self.internal.minimize_request = Some(minimized);
540 }
541
542 pub fn start_drag_move(&mut self) {
547 self.internal.drag_move_request = true;
548 }
549
550 pub fn start_drag_resize(&mut self, direction: CompassOctant) {
555 self.internal.drag_resize_request = Some(direction);
556 }
557
558 #[inline]
562 pub fn width(&self) -> f32 {
563 self.resolution.width()
564 }
565
566 #[inline]
570 pub fn height(&self) -> f32 {
571 self.resolution.height()
572 }
573
574 #[inline]
578 pub fn size(&self) -> Vec2 {
579 self.resolution.size()
580 }
581
582 #[inline]
586 pub fn physical_width(&self) -> u32 {
587 self.resolution.physical_width()
588 }
589
590 #[inline]
594 pub fn physical_height(&self) -> u32 {
595 self.resolution.physical_height()
596 }
597
598 #[inline]
602 pub fn physical_size(&self) -> UVec2 {
603 self.resolution.physical_size()
604 }
605
606 #[inline]
610 pub fn scale_factor(&self) -> f32 {
611 self.resolution.scale_factor()
612 }
613
614 #[inline]
620 pub fn cursor_position(&self) -> Option<Vec2> {
621 self.physical_cursor_position()
622 .map(|position| (position.as_dvec2() / self.scale_factor() as f64).as_vec2())
623 }
624
625 #[inline]
631 pub fn physical_cursor_position(&self) -> Option<Vec2> {
632 match self.internal.physical_cursor_position {
633 Some(position) => {
634 if position.x >= 0.
635 && position.y >= 0.
636 && position.x < self.physical_width() as f64
637 && position.y < self.physical_height() as f64
638 {
639 Some(position.as_vec2())
640 } else {
641 None
642 }
643 }
644 None => None,
645 }
646 }
647
648 pub fn set_cursor_position(&mut self, position: Option<Vec2>) {
652 self.internal.physical_cursor_position =
653 position.map(|p| p.as_dvec2() * self.scale_factor() as f64);
654 }
655
656 pub fn set_physical_cursor_position(&mut self, position: Option<DVec2>) {
660 self.internal.physical_cursor_position = position;
661 }
662}
663
664#[derive(#[automatically_derived]
impl ::core::fmt::Debug for WindowResizeConstraints {
#[inline]
fn fmt(&self, f: &mut ::core::fmt::Formatter) -> ::core::fmt::Result {
::core::fmt::Formatter::debug_struct_field4_finish(f,
"WindowResizeConstraints", "min_width", &self.min_width,
"min_height", &self.min_height, "max_width", &self.max_width,
"max_height", &&self.max_height)
}
}Debug, #[automatically_derived]
impl ::core::clone::Clone for WindowResizeConstraints {
#[inline]
fn clone(&self) -> WindowResizeConstraints {
let _: ::core::clone::AssertParamIsClone<f32>;
*self
}
}Clone, #[automatically_derived]
impl ::core::marker::Copy for WindowResizeConstraints { }Copy, #[automatically_derived]
impl ::core::cmp::PartialEq for WindowResizeConstraints {
#[inline]
fn eq(&self, other: &WindowResizeConstraints) -> bool {
self.min_width == other.min_width &&
self.min_height == other.min_height &&
self.max_width == other.max_width &&
self.max_height == other.max_height
}
}PartialEq)]
673#[cfg_attr(
674 feature = "bevy_reflect",
675 derive(const _: () =
{
impl bevy_reflect::GetTypeRegistration for WindowResizeConstraints
where {
fn get_type_registration() -> bevy_reflect::TypeRegistration {
let mut registration =
bevy_reflect::TypeRegistration::of::<Self>();
registration.insert::<bevy_reflect::ReflectFromPtr>(bevy_reflect::FromType::<Self>::from_type());
registration.insert::<bevy_reflect::ReflectFromReflect>(bevy_reflect::FromType::<Self>::from_type());
registration.register_type_data::<ReflectDefault, Self>();
registration.register_type_data::<ReflectSerialize, Self>();
registration.register_type_data::<ReflectDeserialize, Self>();
registration
}
#[inline(never)]
fn register_type_dependencies(registry:
&mut bevy_reflect::TypeRegistry) {
<f32 as
bevy_reflect::__macro_exports::RegisterForReflection>::__register(registry);
}
}
impl bevy_reflect::Typed for WindowResizeConstraints where {
#[inline]
fn type_info() -> &'static bevy_reflect::TypeInfo {
static CELL: bevy_reflect::utility::NonGenericTypeInfoCell =
bevy_reflect::utility::NonGenericTypeInfoCell::new();
CELL.get_or_set(||
{
bevy_reflect::TypeInfo::Struct(bevy_reflect::structs::StructInfo::new::<Self>(&[bevy_reflect::NamedField::new::<f32>("min_width"),
bevy_reflect::NamedField::new::<f32>("min_height"),
bevy_reflect::NamedField::new::<f32>("max_width"),
bevy_reflect::NamedField::new::<f32>("max_height")]))
})
}
}
#[allow(deprecated, reason =
"derives on a deprecated type shouldn't be considered a usage")]
impl bevy_reflect::TypePath for WindowResizeConstraints where {
fn type_path() -> &'static str {
"bevy_window::window::WindowResizeConstraints"
}
fn short_type_path() -> &'static str { "WindowResizeConstraints" }
fn type_ident() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("WindowResizeConstraints")
}
fn crate_name() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("bevy_window::window".split(':').next().unwrap())
}
fn module_path() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("bevy_window::window")
}
}
impl bevy_reflect::Reflect for WindowResizeConstraints where {
#[inline]
fn into_any(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn ::core::any::Any> {
self
}
#[inline]
fn as_any(&self) -> &dyn ::core::any::Any { self }
#[inline]
fn as_any_mut(&mut self) -> &mut dyn ::core::any::Any { self }
#[inline]
fn into_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect> {
self
}
#[inline]
fn as_reflect(&self) -> &dyn bevy_reflect::Reflect { self }
#[inline]
fn as_reflect_mut(&mut self) -> &mut dyn bevy_reflect::Reflect {
self
}
#[inline]
fn set(&mut self,
value:
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>)
->
::core::result::Result<(),
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>> {
*self = <dyn bevy_reflect::Reflect>::take(value)?;
::core::result::Result::Ok(())
}
}
#[allow(non_upper_case_globals)]
const _: () =
{
static __INVENTORY: ::inventory::Node =
::inventory::Node {
value: &{
bevy_reflect::__macro_exports::auto_register::AutomaticReflectRegistrations(<WindowResizeConstraints
as
bevy_reflect::__macro_exports::auto_register::RegisterForReflection>::__register)
},
next: ::inventory::__private::UnsafeCell::new(::inventory::__private::Option::None),
};
#[link_section = ".text.startup"]
unsafe extern "C" fn __ctor() {
unsafe {
::inventory::ErasedNode::submit(__INVENTORY.value,
&__INVENTORY)
}
}
#[used]
#[link_section = ".init_array"]
static __CTOR: unsafe extern "C" fn() = __ctor;
};
impl bevy_reflect::structs::Struct for WindowResizeConstraints where
{
fn field(&self, name: &str)
-> ::core::option::Option<&dyn bevy_reflect::PartialReflect> {
match name {
"min_width" =>
::core::option::Option::Some(&self.min_width),
"min_height" =>
::core::option::Option::Some(&self.min_height),
"max_width" =>
::core::option::Option::Some(&self.max_width),
"max_height" =>
::core::option::Option::Some(&self.max_height),
_ => ::core::option::Option::None,
}
}
fn field_mut(&mut self, name: &str)
->
::core::option::Option<&mut dyn bevy_reflect::PartialReflect> {
match name {
"min_width" =>
::core::option::Option::Some(&mut self.min_width),
"min_height" =>
::core::option::Option::Some(&mut self.min_height),
"max_width" =>
::core::option::Option::Some(&mut self.max_width),
"max_height" =>
::core::option::Option::Some(&mut self.max_height),
_ => ::core::option::Option::None,
}
}
fn field_at(&self, index: usize)
-> ::core::option::Option<&dyn bevy_reflect::PartialReflect> {
match index {
0usize => ::core::option::Option::Some(&self.min_width),
1usize => ::core::option::Option::Some(&self.min_height),
2usize => ::core::option::Option::Some(&self.max_width),
3usize => ::core::option::Option::Some(&self.max_height),
_ => ::core::option::Option::None,
}
}
fn field_at_mut(&mut self, index: usize)
->
::core::option::Option<&mut dyn bevy_reflect::PartialReflect> {
match index {
0usize => ::core::option::Option::Some(&mut self.min_width),
1usize =>
::core::option::Option::Some(&mut self.min_height),
2usize => ::core::option::Option::Some(&mut self.max_width),
3usize =>
::core::option::Option::Some(&mut self.max_height),
_ => ::core::option::Option::None,
}
}
fn name_at(&self, index: usize) -> ::core::option::Option<&str> {
match index {
0usize => ::core::option::Option::Some("min_width"),
1usize => ::core::option::Option::Some("min_height"),
2usize => ::core::option::Option::Some("max_width"),
3usize => ::core::option::Option::Some("max_height"),
_ => ::core::option::Option::None,
}
}
fn index_of_name(&self, name: &str)
-> ::core::option::Option<usize> {
match name {
"min_width" => ::core::option::Option::Some(0usize),
"min_height" => ::core::option::Option::Some(1usize),
"max_width" => ::core::option::Option::Some(2usize),
"max_height" => ::core::option::Option::Some(3usize),
_ => ::core::option::Option::None,
}
}
fn field_len(&self) -> usize { 4usize }
fn iter_fields(&self) -> bevy_reflect::structs::FieldIter {
bevy_reflect::structs::FieldIter::new(self)
}
fn to_dynamic_struct(&self)
-> bevy_reflect::structs::DynamicStruct {
let mut dynamic: bevy_reflect::structs::DynamicStruct =
::core::default::Default::default();
dynamic.set_represented_type(bevy_reflect::PartialReflect::get_represented_type_info(self));
dynamic.insert_boxed("min_width",
bevy_reflect::PartialReflect::to_dynamic(&self.min_width));
dynamic.insert_boxed("min_height",
bevy_reflect::PartialReflect::to_dynamic(&self.min_height));
dynamic.insert_boxed("max_width",
bevy_reflect::PartialReflect::to_dynamic(&self.max_width));
dynamic.insert_boxed("max_height",
bevy_reflect::PartialReflect::to_dynamic(&self.max_height));
dynamic
}
}
impl bevy_reflect::PartialReflect for WindowResizeConstraints where {
#[inline]
fn get_represented_type_info(&self)
-> ::core::option::Option<&'static bevy_reflect::TypeInfo> {
::core::option::Option::Some(<Self as
bevy_reflect::Typed>::type_info())
}
#[inline]
fn try_apply(&mut self, value: &dyn bevy_reflect::PartialReflect)
-> ::core::result::Result<(), bevy_reflect::ApplyError> {
if let bevy_reflect::ReflectRef::Struct(struct_value) =
bevy_reflect::PartialReflect::reflect_ref(value) {
for (name, value) in
bevy_reflect::structs::Struct::iter_fields(struct_value) {
if let ::core::option::Option::Some(v) =
bevy_reflect::structs::Struct::field_mut(self, name) {
bevy_reflect::PartialReflect::try_apply(v, value)?;
}
}
} else {
return ::core::result::Result::Err(bevy_reflect::ApplyError::MismatchedKinds {
from_kind: bevy_reflect::PartialReflect::reflect_kind(value),
to_kind: bevy_reflect::ReflectKind::Struct,
});
}
::core::result::Result::Ok(())
}
#[inline]
fn reflect_kind(&self) -> bevy_reflect::ReflectKind {
bevy_reflect::ReflectKind::Struct
}
#[inline]
fn reflect_ref(&self) -> bevy_reflect::ReflectRef {
bevy_reflect::ReflectRef::Struct(self)
}
#[inline]
fn reflect_mut(&mut self) -> bevy_reflect::ReflectMut {
bevy_reflect::ReflectMut::Struct(self)
}
#[inline]
fn reflect_owned(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
-> bevy_reflect::ReflectOwned {
bevy_reflect::ReflectOwned::Struct(self)
}
#[inline]
fn try_into_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
::core::result::Result<bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>,
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::PartialReflect>> {
::core::result::Result::Ok(self)
}
#[inline]
fn try_as_reflect(&self)
-> ::core::option::Option<&dyn bevy_reflect::Reflect> {
::core::option::Option::Some(self)
}
#[inline]
fn try_as_reflect_mut(&mut self)
-> ::core::option::Option<&mut dyn bevy_reflect::Reflect> {
::core::option::Option::Some(self)
}
#[inline]
fn into_partial_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::PartialReflect> {
self
}
#[inline]
fn as_partial_reflect(&self)
-> &dyn bevy_reflect::PartialReflect {
self
}
#[inline]
fn as_partial_reflect_mut(&mut self)
-> &mut dyn bevy_reflect::PartialReflect {
self
}
fn reflect_partial_eq(&self,
value: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<bool> {
let value =
<dyn bevy_reflect::PartialReflect>::try_downcast_ref::<Self>(value);
if let ::core::option::Option::Some(value) = value {
::core::option::Option::Some(::core::cmp::PartialEq::eq(self,
value))
} else { ::core::option::Option::Some(false) }
}
fn reflect_partial_cmp(&self,
value: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<::core::cmp::Ordering> {
(bevy_reflect::structs::struct_partial_cmp)(self, value)
}
fn debug(&self, f: &mut ::core::fmt::Formatter<'_>)
-> ::core::fmt::Result {
::core::fmt::Debug::fmt(self, f)
}
#[inline]
fn reflect_clone(&self)
->
::core::result::Result<bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>,
bevy_reflect::ReflectCloneError> {
::core::result::Result::Ok(bevy_reflect::__macro_exports::alloc_utils::Box::new(::core::clone::Clone::clone(self)))
}
}
impl bevy_reflect::FromReflect for WindowResizeConstraints where {
fn from_reflect(reflect: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<Self> {
if let bevy_reflect::ReflectRef::Struct(__ref_struct) =
bevy_reflect::PartialReflect::reflect_ref(reflect) {
let mut __this =
<Self as ::core::default::Default>::default();
if let ::core::option::Option::Some(__field) =
(||
<f32 as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"min_width")?))() {
__this.min_width = __field;
}
if let ::core::option::Option::Some(__field) =
(||
<f32 as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"min_height")?))() {
__this.min_height = __field;
}
if let ::core::option::Option::Some(__field) =
(||
<f32 as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"max_width")?))() {
__this.max_width = __field;
}
if let ::core::option::Option::Some(__field) =
(||
<f32 as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"max_height")?))() {
__this.max_height = __field;
}
::core::option::Option::Some(__this)
} else { ::core::option::Option::None }
}
}
};Reflect),
676 reflect(Debug, PartialEq, Default, Clone)
677)]
678#[cfg_attr(feature = "serialize", derive(#[doc(hidden)]
#[allow(non_upper_case_globals, unused_attributes, unused_qualifications,
clippy :: absolute_paths,)]
const _: () =
{
#[allow(unused_extern_crates, clippy :: useless_attribute)]
extern crate serde as _serde;
;
#[automatically_derived]
impl _serde::Serialize for WindowResizeConstraints {
fn serialize<__S>(&self, __serializer: __S)
-> _serde::__private228::Result<__S::Ok, __S::Error> where
__S: _serde::Serializer {
let mut __serde_state =
_serde::Serializer::serialize_struct(__serializer,
"WindowResizeConstraints", false as usize + 1 + 1 + 1 + 1)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"min_width", &self.min_width)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"min_height", &self.min_height)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"max_width", &self.max_width)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"max_height", &self.max_height)?;
_serde::ser::SerializeStruct::end(__serde_state)
}
}
};serde::Serialize, #[doc(hidden)]
#[allow(non_upper_case_globals, unused_attributes, unused_qualifications,
clippy :: absolute_paths,)]
const _: () =
{
#[allow(unused_extern_crates, clippy :: useless_attribute)]
extern crate serde as _serde;
;
#[automatically_derived]
impl<'de> _serde::Deserialize<'de> for WindowResizeConstraints {
fn deserialize<__D>(__deserializer: __D)
-> _serde::__private228::Result<Self, __D::Error> where
__D: _serde::Deserializer<'de> {
#[allow(non_camel_case_types)]
#[doc(hidden)]
enum __Field {
__field0,
__field1,
__field2,
__field3,
__ignore,
}
#[doc(hidden)]
struct __FieldVisitor;
#[automatically_derived]
impl<'de> _serde::de::Visitor<'de> for __FieldVisitor {
type Value = __Field;
fn expecting(&self,
__formatter: &mut _serde::__private228::Formatter)
-> _serde::__private228::fmt::Result {
_serde::__private228::Formatter::write_str(__formatter,
"field identifier")
}
fn visit_u64<__E>(self, __value: u64)
-> _serde::__private228::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
0u64 => _serde::__private228::Ok(__Field::__field0),
1u64 => _serde::__private228::Ok(__Field::__field1),
2u64 => _serde::__private228::Ok(__Field::__field2),
3u64 => _serde::__private228::Ok(__Field::__field3),
_ => _serde::__private228::Ok(__Field::__ignore),
}
}
fn visit_str<__E>(self, __value: &str)
-> _serde::__private228::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
"min_width" => _serde::__private228::Ok(__Field::__field0),
"min_height" => _serde::__private228::Ok(__Field::__field1),
"max_width" => _serde::__private228::Ok(__Field::__field2),
"max_height" => _serde::__private228::Ok(__Field::__field3),
_ => { _serde::__private228::Ok(__Field::__ignore) }
}
}
fn visit_bytes<__E>(self, __value: &[u8])
-> _serde::__private228::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
b"min_width" => _serde::__private228::Ok(__Field::__field0),
b"min_height" =>
_serde::__private228::Ok(__Field::__field1),
b"max_width" => _serde::__private228::Ok(__Field::__field2),
b"max_height" =>
_serde::__private228::Ok(__Field::__field3),
_ => { _serde::__private228::Ok(__Field::__ignore) }
}
}
}
#[automatically_derived]
impl<'de> _serde::Deserialize<'de> for __Field {
#[inline]
fn deserialize<__D>(__deserializer: __D)
-> _serde::__private228::Result<Self, __D::Error> where
__D: _serde::Deserializer<'de> {
_serde::Deserializer::deserialize_identifier(__deserializer,
__FieldVisitor)
}
}
#[doc(hidden)]
struct __Visitor<'de> {
marker: _serde::__private228::PhantomData<WindowResizeConstraints>,
lifetime: _serde::__private228::PhantomData<&'de ()>,
}
#[automatically_derived]
impl<'de> _serde::de::Visitor<'de> for __Visitor<'de> {
type Value = WindowResizeConstraints;
fn expecting(&self,
__formatter: &mut _serde::__private228::Formatter)
-> _serde::__private228::fmt::Result {
_serde::__private228::Formatter::write_str(__formatter,
"struct WindowResizeConstraints")
}
#[inline]
fn visit_seq<__A>(self, mut __seq: __A)
-> _serde::__private228::Result<Self::Value, __A::Error>
where __A: _serde::de::SeqAccess<'de> {
let __field0 =
match _serde::de::SeqAccess::next_element::<f32>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(0usize,
&"struct WindowResizeConstraints with 4 elements")),
};
let __field1 =
match _serde::de::SeqAccess::next_element::<f32>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(1usize,
&"struct WindowResizeConstraints with 4 elements")),
};
let __field2 =
match _serde::de::SeqAccess::next_element::<f32>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(2usize,
&"struct WindowResizeConstraints with 4 elements")),
};
let __field3 =
match _serde::de::SeqAccess::next_element::<f32>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(3usize,
&"struct WindowResizeConstraints with 4 elements")),
};
_serde::__private228::Ok(WindowResizeConstraints {
min_width: __field0,
min_height: __field1,
max_width: __field2,
max_height: __field3,
})
}
#[inline]
fn visit_map<__A>(self, mut __map: __A)
-> _serde::__private228::Result<Self::Value, __A::Error>
where __A: _serde::de::MapAccess<'de> {
let mut __field0: _serde::__private228::Option<f32> =
_serde::__private228::None;
let mut __field1: _serde::__private228::Option<f32> =
_serde::__private228::None;
let mut __field2: _serde::__private228::Option<f32> =
_serde::__private228::None;
let mut __field3: _serde::__private228::Option<f32> =
_serde::__private228::None;
while let _serde::__private228::Some(__key) =
_serde::de::MapAccess::next_key::<__Field>(&mut __map)? {
match __key {
__Field::__field0 => {
if _serde::__private228::Option::is_some(&__field0) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("min_width"));
}
__field0 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<f32>(&mut __map)?);
}
__Field::__field1 => {
if _serde::__private228::Option::is_some(&__field1) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("min_height"));
}
__field1 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<f32>(&mut __map)?);
}
__Field::__field2 => {
if _serde::__private228::Option::is_some(&__field2) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("max_width"));
}
__field2 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<f32>(&mut __map)?);
}
__Field::__field3 => {
if _serde::__private228::Option::is_some(&__field3) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("max_height"));
}
__field3 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<f32>(&mut __map)?);
}
_ => {
let _ =
_serde::de::MapAccess::next_value::<_serde::de::IgnoredAny>(&mut __map)?;
}
}
}
let __field0 =
match __field0 {
_serde::__private228::Some(__field0) => __field0,
_serde::__private228::None =>
_serde::__private228::de::missing_field("min_width")?,
};
let __field1 =
match __field1 {
_serde::__private228::Some(__field1) => __field1,
_serde::__private228::None =>
_serde::__private228::de::missing_field("min_height")?,
};
let __field2 =
match __field2 {
_serde::__private228::Some(__field2) => __field2,
_serde::__private228::None =>
_serde::__private228::de::missing_field("max_width")?,
};
let __field3 =
match __field3 {
_serde::__private228::Some(__field3) => __field3,
_serde::__private228::None =>
_serde::__private228::de::missing_field("max_height")?,
};
_serde::__private228::Ok(WindowResizeConstraints {
min_width: __field0,
min_height: __field1,
max_width: __field2,
max_height: __field3,
})
}
}
#[doc(hidden)]
const FIELDS: &'static [&'static str] =
&["min_width", "min_height", "max_width", "max_height"];
_serde::Deserializer::deserialize_struct(__deserializer,
"WindowResizeConstraints", FIELDS,
__Visitor {
marker: _serde::__private228::PhantomData::<WindowResizeConstraints>,
lifetime: _serde::__private228::PhantomData,
})
}
}
};serde::Deserialize))]
679#[cfg_attr(
680 all(feature = "serialize", feature = "bevy_reflect"),
681 reflect(Serialize, Deserialize)
682)]
683pub struct WindowResizeConstraints {
684 pub min_width: f32,
686 pub min_height: f32,
688 pub max_width: f32,
690 pub max_height: f32,
692}
693
694impl Default for WindowResizeConstraints {
695 fn default() -> Self {
696 Self {
697 min_width: 180.,
698 min_height: 120.,
699 max_width: f32::INFINITY,
700 max_height: f32::INFINITY,
701 }
702 }
703}
704
705impl WindowResizeConstraints {
706 #[must_use]
710 pub fn check_constraints(&self) -> Self {
711 let &WindowResizeConstraints {
712 mut min_width,
713 mut min_height,
714 mut max_width,
715 mut max_height,
716 } = self;
717 min_width = min_width.max(1.);
718 min_height = min_height.max(1.);
719 if max_width < min_width {
720 {
{
let lvl = ::log::Level::Warn;
if lvl <= ::log::STATIC_MAX_LEVEL && lvl <= ::log::max_level() {
::log::__private_api::log({ ::log::__private_api::GlobalLogger },
format_args!("The given maximum width {0} is smaller than the minimum width {1}",
max_width, min_width), lvl,
&("bevy_window::window", "bevy_window::window",
::log::__private_api::loc()), ());
}
}
};warn!(
721 "The given maximum width {max_width} is smaller than the minimum width {min_width}"
722 );
723 max_width = min_width;
724 }
725 if max_height < min_height {
726 {
{
let lvl = ::log::Level::Warn;
if lvl <= ::log::STATIC_MAX_LEVEL && lvl <= ::log::max_level() {
::log::__private_api::log({ ::log::__private_api::GlobalLogger },
format_args!("The given maximum height {0} is smaller than the minimum height {1}",
max_height, min_height), lvl,
&("bevy_window::window", "bevy_window::window",
::log::__private_api::loc()), ());
}
}
};warn!(
727 "The given maximum height {max_height} is smaller than the minimum height {min_height}",
728 );
729 max_height = min_height;
730 }
731 WindowResizeConstraints {
732 min_width,
733 min_height,
734 max_width,
735 max_height,
736 }
737 }
738}
739
740#[derive(impl bevy_ecs::component::Component for CursorOptions where
Self: ::core::marker::Send + ::core::marker::Sync + 'static {
const STORAGE_TYPE: bevy_ecs::component::StorageType =
bevy_ecs::component::StorageType::Table;
type Mutability = bevy_ecs::component::Mutable;
fn register_required_components(_requiree:
bevy_ecs::component::ComponentId,
required_components:
&mut bevy_ecs::component::RequiredComponentsRegistrator) {}
fn clone_behavior() -> bevy_ecs::component::ComponentCloneBehavior {
use bevy_ecs::component::{
DefaultCloneBehaviorBase, DefaultCloneBehaviorViaClone,
};
(&&&bevy_ecs::component::DefaultCloneBehaviorSpecialization::<Self>::default()).default_clone_behavior()
}
fn relationship_accessor()
->
::core::option::Option<bevy_ecs::relationship::ComponentRelationshipAccessor<Self>> {
::core::option::Option::None
}
}Component, #[automatically_derived]
impl ::core::fmt::Debug for CursorOptions {
#[inline]
fn fmt(&self, f: &mut ::core::fmt::Formatter) -> ::core::fmt::Result {
::core::fmt::Formatter::debug_struct_field3_finish(f, "CursorOptions",
"visible", &self.visible, "grab_mode", &self.grab_mode,
"hit_test", &&self.hit_test)
}
}Debug, #[automatically_derived]
impl ::core::clone::Clone for CursorOptions {
#[inline]
fn clone(&self) -> CursorOptions {
CursorOptions {
visible: ::core::clone::Clone::clone(&self.visible),
grab_mode: ::core::clone::Clone::clone(&self.grab_mode),
hit_test: ::core::clone::Clone::clone(&self.hit_test),
}
}
}Clone)]
742#[cfg_attr(
743 feature = "bevy_reflect",
744 derive(const _: () =
{
impl bevy_reflect::GetTypeRegistration for CursorOptions where {
fn get_type_registration() -> bevy_reflect::TypeRegistration {
let mut registration =
bevy_reflect::TypeRegistration::of::<Self>();
registration.insert::<bevy_reflect::ReflectFromPtr>(bevy_reflect::FromType::<Self>::from_type());
registration.insert::<bevy_reflect::ReflectFromReflect>(bevy_reflect::FromType::<Self>::from_type());
registration.register_type_data::<ReflectComponent, Self>();
registration.register_type_data::<ReflectDefault, Self>();
registration.register_type_data::<ReflectSerialize, Self>();
registration.register_type_data::<ReflectDeserialize, Self>();
registration
}
#[inline(never)]
fn register_type_dependencies(registry:
&mut bevy_reflect::TypeRegistry) {
<bool as
bevy_reflect::__macro_exports::RegisterForReflection>::__register(registry);
<CursorGrabMode as
bevy_reflect::__macro_exports::RegisterForReflection>::__register(registry);
}
}
impl bevy_reflect::Typed for CursorOptions where {
#[inline]
fn type_info() -> &'static bevy_reflect::TypeInfo {
static CELL: bevy_reflect::utility::NonGenericTypeInfoCell =
bevy_reflect::utility::NonGenericTypeInfoCell::new();
CELL.get_or_set(||
{
bevy_reflect::TypeInfo::Struct(bevy_reflect::structs::StructInfo::new::<Self>(&[bevy_reflect::NamedField::new::<bool>("visible"),
bevy_reflect::NamedField::new::<CursorGrabMode>("grab_mode"),
bevy_reflect::NamedField::new::<bool>("hit_test")]))
})
}
}
#[allow(deprecated, reason =
"derives on a deprecated type shouldn't be considered a usage")]
impl bevy_reflect::TypePath for CursorOptions where {
fn type_path() -> &'static str {
"bevy_window::window::CursorOptions"
}
fn short_type_path() -> &'static str { "CursorOptions" }
fn type_ident() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("CursorOptions")
}
fn crate_name() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("bevy_window::window".split(':').next().unwrap())
}
fn module_path() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("bevy_window::window")
}
}
impl bevy_reflect::Reflect for CursorOptions where {
#[inline]
fn into_any(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn ::core::any::Any> {
self
}
#[inline]
fn as_any(&self) -> &dyn ::core::any::Any { self }
#[inline]
fn as_any_mut(&mut self) -> &mut dyn ::core::any::Any { self }
#[inline]
fn into_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect> {
self
}
#[inline]
fn as_reflect(&self) -> &dyn bevy_reflect::Reflect { self }
#[inline]
fn as_reflect_mut(&mut self) -> &mut dyn bevy_reflect::Reflect {
self
}
#[inline]
fn set(&mut self,
value:
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>)
->
::core::result::Result<(),
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>> {
*self = <dyn bevy_reflect::Reflect>::take(value)?;
::core::result::Result::Ok(())
}
}
#[allow(non_upper_case_globals)]
const _: () =
{
static __INVENTORY: ::inventory::Node =
::inventory::Node {
value: &{
bevy_reflect::__macro_exports::auto_register::AutomaticReflectRegistrations(<CursorOptions
as
bevy_reflect::__macro_exports::auto_register::RegisterForReflection>::__register)
},
next: ::inventory::__private::UnsafeCell::new(::inventory::__private::Option::None),
};
#[link_section = ".text.startup"]
unsafe extern "C" fn __ctor() {
unsafe {
::inventory::ErasedNode::submit(__INVENTORY.value,
&__INVENTORY)
}
}
#[used]
#[link_section = ".init_array"]
static __CTOR: unsafe extern "C" fn() = __ctor;
};
impl bevy_reflect::structs::Struct for CursorOptions where {
fn field(&self, name: &str)
-> ::core::option::Option<&dyn bevy_reflect::PartialReflect> {
match name {
"visible" => ::core::option::Option::Some(&self.visible),
"grab_mode" =>
::core::option::Option::Some(&self.grab_mode),
"hit_test" => ::core::option::Option::Some(&self.hit_test),
_ => ::core::option::Option::None,
}
}
fn field_mut(&mut self, name: &str)
->
::core::option::Option<&mut dyn bevy_reflect::PartialReflect> {
match name {
"visible" =>
::core::option::Option::Some(&mut self.visible),
"grab_mode" =>
::core::option::Option::Some(&mut self.grab_mode),
"hit_test" =>
::core::option::Option::Some(&mut self.hit_test),
_ => ::core::option::Option::None,
}
}
fn field_at(&self, index: usize)
-> ::core::option::Option<&dyn bevy_reflect::PartialReflect> {
match index {
0usize => ::core::option::Option::Some(&self.visible),
1usize => ::core::option::Option::Some(&self.grab_mode),
2usize => ::core::option::Option::Some(&self.hit_test),
_ => ::core::option::Option::None,
}
}
fn field_at_mut(&mut self, index: usize)
->
::core::option::Option<&mut dyn bevy_reflect::PartialReflect> {
match index {
0usize => ::core::option::Option::Some(&mut self.visible),
1usize => ::core::option::Option::Some(&mut self.grab_mode),
2usize => ::core::option::Option::Some(&mut self.hit_test),
_ => ::core::option::Option::None,
}
}
fn name_at(&self, index: usize) -> ::core::option::Option<&str> {
match index {
0usize => ::core::option::Option::Some("visible"),
1usize => ::core::option::Option::Some("grab_mode"),
2usize => ::core::option::Option::Some("hit_test"),
_ => ::core::option::Option::None,
}
}
fn index_of_name(&self, name: &str)
-> ::core::option::Option<usize> {
match name {
"visible" => ::core::option::Option::Some(0usize),
"grab_mode" => ::core::option::Option::Some(1usize),
"hit_test" => ::core::option::Option::Some(2usize),
_ => ::core::option::Option::None,
}
}
fn field_len(&self) -> usize { 3usize }
fn iter_fields(&self) -> bevy_reflect::structs::FieldIter {
bevy_reflect::structs::FieldIter::new(self)
}
fn to_dynamic_struct(&self)
-> bevy_reflect::structs::DynamicStruct {
let mut dynamic: bevy_reflect::structs::DynamicStruct =
::core::default::Default::default();
dynamic.set_represented_type(bevy_reflect::PartialReflect::get_represented_type_info(self));
dynamic.insert_boxed("visible",
bevy_reflect::PartialReflect::to_dynamic(&self.visible));
dynamic.insert_boxed("grab_mode",
bevy_reflect::PartialReflect::to_dynamic(&self.grab_mode));
dynamic.insert_boxed("hit_test",
bevy_reflect::PartialReflect::to_dynamic(&self.hit_test));
dynamic
}
}
impl bevy_reflect::PartialReflect for CursorOptions where {
#[inline]
fn get_represented_type_info(&self)
-> ::core::option::Option<&'static bevy_reflect::TypeInfo> {
::core::option::Option::Some(<Self as
bevy_reflect::Typed>::type_info())
}
#[inline]
fn try_apply(&mut self, value: &dyn bevy_reflect::PartialReflect)
-> ::core::result::Result<(), bevy_reflect::ApplyError> {
if let bevy_reflect::ReflectRef::Struct(struct_value) =
bevy_reflect::PartialReflect::reflect_ref(value) {
for (name, value) in
bevy_reflect::structs::Struct::iter_fields(struct_value) {
if let ::core::option::Option::Some(v) =
bevy_reflect::structs::Struct::field_mut(self, name) {
bevy_reflect::PartialReflect::try_apply(v, value)?;
}
}
} else {
return ::core::result::Result::Err(bevy_reflect::ApplyError::MismatchedKinds {
from_kind: bevy_reflect::PartialReflect::reflect_kind(value),
to_kind: bevy_reflect::ReflectKind::Struct,
});
}
::core::result::Result::Ok(())
}
#[inline]
fn reflect_kind(&self) -> bevy_reflect::ReflectKind {
bevy_reflect::ReflectKind::Struct
}
#[inline]
fn reflect_ref(&self) -> bevy_reflect::ReflectRef {
bevy_reflect::ReflectRef::Struct(self)
}
#[inline]
fn reflect_mut(&mut self) -> bevy_reflect::ReflectMut {
bevy_reflect::ReflectMut::Struct(self)
}
#[inline]
fn reflect_owned(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
-> bevy_reflect::ReflectOwned {
bevy_reflect::ReflectOwned::Struct(self)
}
#[inline]
fn try_into_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
::core::result::Result<bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>,
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::PartialReflect>> {
::core::result::Result::Ok(self)
}
#[inline]
fn try_as_reflect(&self)
-> ::core::option::Option<&dyn bevy_reflect::Reflect> {
::core::option::Option::Some(self)
}
#[inline]
fn try_as_reflect_mut(&mut self)
-> ::core::option::Option<&mut dyn bevy_reflect::Reflect> {
::core::option::Option::Some(self)
}
#[inline]
fn into_partial_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::PartialReflect> {
self
}
#[inline]
fn as_partial_reflect(&self)
-> &dyn bevy_reflect::PartialReflect {
self
}
#[inline]
fn as_partial_reflect_mut(&mut self)
-> &mut dyn bevy_reflect::PartialReflect {
self
}
fn reflect_partial_eq(&self,
value: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<bool> {
(bevy_reflect::structs::struct_partial_eq)(self, value)
}
fn reflect_partial_cmp(&self,
value: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<::core::cmp::Ordering> {
(bevy_reflect::structs::struct_partial_cmp)(self, value)
}
fn debug(&self, f: &mut ::core::fmt::Formatter<'_>)
-> ::core::fmt::Result {
::core::fmt::Debug::fmt(self, f)
}
#[inline]
fn reflect_clone(&self)
->
::core::result::Result<bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>,
bevy_reflect::ReflectCloneError> {
::core::result::Result::Ok(bevy_reflect::__macro_exports::alloc_utils::Box::new(::core::clone::Clone::clone(self)))
}
}
impl bevy_reflect::FromReflect for CursorOptions where {
fn from_reflect(reflect: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<Self> {
if let bevy_reflect::ReflectRef::Struct(__ref_struct) =
bevy_reflect::PartialReflect::reflect_ref(reflect) {
let mut __this =
<Self as ::core::default::Default>::default();
if let ::core::option::Option::Some(__field) =
(||
<bool as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"visible")?))() {
__this.visible = __field;
}
if let ::core::option::Option::Some(__field) =
(||
<CursorGrabMode as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"grab_mode")?))() {
__this.grab_mode = __field;
}
if let ::core::option::Option::Some(__field) =
(||
<bool as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"hit_test")?))() {
__this.hit_test = __field;
}
::core::option::Option::Some(__this)
} else { ::core::option::Option::None }
}
}
};Reflect),
745 reflect(Component, Debug, Default, Clone)
746)]
747#[cfg_attr(feature = "serialize", derive(#[doc(hidden)]
#[allow(non_upper_case_globals, unused_attributes, unused_qualifications,
clippy :: absolute_paths,)]
const _: () =
{
#[allow(unused_extern_crates, clippy :: useless_attribute)]
extern crate serde as _serde;
;
#[automatically_derived]
impl _serde::Serialize for CursorOptions {
fn serialize<__S>(&self, __serializer: __S)
-> _serde::__private228::Result<__S::Ok, __S::Error> where
__S: _serde::Serializer {
let mut __serde_state =
_serde::Serializer::serialize_struct(__serializer,
"CursorOptions", false as usize + 1 + 1 + 1)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"visible", &self.visible)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"grab_mode", &self.grab_mode)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"hit_test", &self.hit_test)?;
_serde::ser::SerializeStruct::end(__serde_state)
}
}
};serde::Serialize, #[doc(hidden)]
#[allow(non_upper_case_globals, unused_attributes, unused_qualifications,
clippy :: absolute_paths,)]
const _: () =
{
#[allow(unused_extern_crates, clippy :: useless_attribute)]
extern crate serde as _serde;
;
#[automatically_derived]
impl<'de> _serde::Deserialize<'de> for CursorOptions {
fn deserialize<__D>(__deserializer: __D)
-> _serde::__private228::Result<Self, __D::Error> where
__D: _serde::Deserializer<'de> {
#[allow(non_camel_case_types)]
#[doc(hidden)]
enum __Field { __field0, __field1, __field2, __ignore, }
#[doc(hidden)]
struct __FieldVisitor;
#[automatically_derived]
impl<'de> _serde::de::Visitor<'de> for __FieldVisitor {
type Value = __Field;
fn expecting(&self,
__formatter: &mut _serde::__private228::Formatter)
-> _serde::__private228::fmt::Result {
_serde::__private228::Formatter::write_str(__formatter,
"field identifier")
}
fn visit_u64<__E>(self, __value: u64)
-> _serde::__private228::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
0u64 => _serde::__private228::Ok(__Field::__field0),
1u64 => _serde::__private228::Ok(__Field::__field1),
2u64 => _serde::__private228::Ok(__Field::__field2),
_ => _serde::__private228::Ok(__Field::__ignore),
}
}
fn visit_str<__E>(self, __value: &str)
-> _serde::__private228::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
"visible" => _serde::__private228::Ok(__Field::__field0),
"grab_mode" => _serde::__private228::Ok(__Field::__field1),
"hit_test" => _serde::__private228::Ok(__Field::__field2),
_ => { _serde::__private228::Ok(__Field::__ignore) }
}
}
fn visit_bytes<__E>(self, __value: &[u8])
-> _serde::__private228::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
b"visible" => _serde::__private228::Ok(__Field::__field0),
b"grab_mode" => _serde::__private228::Ok(__Field::__field1),
b"hit_test" => _serde::__private228::Ok(__Field::__field2),
_ => { _serde::__private228::Ok(__Field::__ignore) }
}
}
}
#[automatically_derived]
impl<'de> _serde::Deserialize<'de> for __Field {
#[inline]
fn deserialize<__D>(__deserializer: __D)
-> _serde::__private228::Result<Self, __D::Error> where
__D: _serde::Deserializer<'de> {
_serde::Deserializer::deserialize_identifier(__deserializer,
__FieldVisitor)
}
}
#[doc(hidden)]
struct __Visitor<'de> {
marker: _serde::__private228::PhantomData<CursorOptions>,
lifetime: _serde::__private228::PhantomData<&'de ()>,
}
#[automatically_derived]
impl<'de> _serde::de::Visitor<'de> for __Visitor<'de> {
type Value = CursorOptions;
fn expecting(&self,
__formatter: &mut _serde::__private228::Formatter)
-> _serde::__private228::fmt::Result {
_serde::__private228::Formatter::write_str(__formatter,
"struct CursorOptions")
}
#[inline]
fn visit_seq<__A>(self, mut __seq: __A)
-> _serde::__private228::Result<Self::Value, __A::Error>
where __A: _serde::de::SeqAccess<'de> {
let __field0 =
match _serde::de::SeqAccess::next_element::<bool>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(0usize,
&"struct CursorOptions with 3 elements")),
};
let __field1 =
match _serde::de::SeqAccess::next_element::<CursorGrabMode>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(1usize,
&"struct CursorOptions with 3 elements")),
};
let __field2 =
match _serde::de::SeqAccess::next_element::<bool>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(2usize,
&"struct CursorOptions with 3 elements")),
};
_serde::__private228::Ok(CursorOptions {
visible: __field0,
grab_mode: __field1,
hit_test: __field2,
})
}
#[inline]
fn visit_map<__A>(self, mut __map: __A)
-> _serde::__private228::Result<Self::Value, __A::Error>
where __A: _serde::de::MapAccess<'de> {
let mut __field0: _serde::__private228::Option<bool> =
_serde::__private228::None;
let mut __field1:
_serde::__private228::Option<CursorGrabMode> =
_serde::__private228::None;
let mut __field2: _serde::__private228::Option<bool> =
_serde::__private228::None;
while let _serde::__private228::Some(__key) =
_serde::de::MapAccess::next_key::<__Field>(&mut __map)? {
match __key {
__Field::__field0 => {
if _serde::__private228::Option::is_some(&__field0) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("visible"));
}
__field0 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<bool>(&mut __map)?);
}
__Field::__field1 => {
if _serde::__private228::Option::is_some(&__field1) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("grab_mode"));
}
__field1 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<CursorGrabMode>(&mut __map)?);
}
__Field::__field2 => {
if _serde::__private228::Option::is_some(&__field2) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("hit_test"));
}
__field2 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<bool>(&mut __map)?);
}
_ => {
let _ =
_serde::de::MapAccess::next_value::<_serde::de::IgnoredAny>(&mut __map)?;
}
}
}
let __field0 =
match __field0 {
_serde::__private228::Some(__field0) => __field0,
_serde::__private228::None =>
_serde::__private228::de::missing_field("visible")?,
};
let __field1 =
match __field1 {
_serde::__private228::Some(__field1) => __field1,
_serde::__private228::None =>
_serde::__private228::de::missing_field("grab_mode")?,
};
let __field2 =
match __field2 {
_serde::__private228::Some(__field2) => __field2,
_serde::__private228::None =>
_serde::__private228::de::missing_field("hit_test")?,
};
_serde::__private228::Ok(CursorOptions {
visible: __field0,
grab_mode: __field1,
hit_test: __field2,
})
}
}
#[doc(hidden)]
const FIELDS: &'static [&'static str] =
&["visible", "grab_mode", "hit_test"];
_serde::Deserializer::deserialize_struct(__deserializer,
"CursorOptions", FIELDS,
__Visitor {
marker: _serde::__private228::PhantomData::<CursorOptions>,
lifetime: _serde::__private228::PhantomData,
})
}
}
};serde::Deserialize))]
748#[cfg_attr(
749 all(feature = "serialize", feature = "bevy_reflect"),
750 reflect(Serialize, Deserialize)
751)]
752pub struct CursorOptions {
753 pub visible: bool,
762
763 pub grab_mode: CursorGrabMode,
773
774 pub hit_test: bool,
780}
781
782impl Default for CursorOptions {
783 fn default() -> Self {
784 CursorOptions {
785 visible: true,
786 grab_mode: CursorGrabMode::None,
787 hit_test: true,
788 }
789 }
790}
791
792#[derive(#[automatically_derived]
impl ::core::default::Default for WindowPosition {
#[inline]
fn default() -> WindowPosition { Self::Automatic }
}Default, #[automatically_derived]
impl ::core::fmt::Debug for WindowPosition {
#[inline]
fn fmt(&self, f: &mut ::core::fmt::Formatter) -> ::core::fmt::Result {
match self {
WindowPosition::Automatic =>
::core::fmt::Formatter::write_str(f, "Automatic"),
WindowPosition::Centered(__self_0) =>
::core::fmt::Formatter::debug_tuple_field1_finish(f,
"Centered", &__self_0),
WindowPosition::At(__self_0) =>
::core::fmt::Formatter::debug_tuple_field1_finish(f, "At",
&__self_0),
}
}
}Debug, #[automatically_derived]
impl ::core::clone::Clone for WindowPosition {
#[inline]
fn clone(&self) -> WindowPosition {
let _: ::core::clone::AssertParamIsClone<MonitorSelection>;
let _: ::core::clone::AssertParamIsClone<IVec2>;
*self
}
}Clone, #[automatically_derived]
impl ::core::marker::Copy for WindowPosition { }Copy, #[automatically_derived]
impl ::core::cmp::PartialEq for WindowPosition {
#[inline]
fn eq(&self, other: &WindowPosition) -> bool {
let __self_discr = ::core::intrinsics::discriminant_value(self);
let __arg1_discr = ::core::intrinsics::discriminant_value(other);
__self_discr == __arg1_discr &&
match (self, other) {
(WindowPosition::Centered(__self_0),
WindowPosition::Centered(__arg1_0)) => __self_0 == __arg1_0,
(WindowPosition::At(__self_0), WindowPosition::At(__arg1_0))
=> __self_0 == __arg1_0,
_ => true,
}
}
}PartialEq)]
794#[cfg_attr(
795 feature = "bevy_reflect",
796 derive(const _: () =
{
impl bevy_reflect::GetTypeRegistration for WindowPosition where {
fn get_type_registration() -> bevy_reflect::TypeRegistration {
let mut registration =
bevy_reflect::TypeRegistration::of::<Self>();
registration.insert::<bevy_reflect::ReflectFromPtr>(bevy_reflect::FromType::<Self>::from_type());
registration.insert::<bevy_reflect::ReflectFromReflect>(bevy_reflect::FromType::<Self>::from_type());
registration.register_type_data::<ReflectSerialize, Self>();
registration.register_type_data::<ReflectDeserialize, Self>();
registration
}
#[inline(never)]
fn register_type_dependencies(registry:
&mut bevy_reflect::TypeRegistry) {
<MonitorSelection as
bevy_reflect::__macro_exports::RegisterForReflection>::__register(registry);
<IVec2 as
bevy_reflect::__macro_exports::RegisterForReflection>::__register(registry);
}
}
impl bevy_reflect::Typed for WindowPosition where {
#[inline]
fn type_info() -> &'static bevy_reflect::TypeInfo {
static CELL: bevy_reflect::utility::NonGenericTypeInfoCell =
bevy_reflect::utility::NonGenericTypeInfoCell::new();
CELL.get_or_set(||
{
bevy_reflect::TypeInfo::Enum(bevy_reflect::enums::EnumInfo::new::<Self>(&[bevy_reflect::enums::VariantInfo::Unit(bevy_reflect::enums::UnitVariantInfo::new("Automatic")),
bevy_reflect::enums::VariantInfo::Tuple(bevy_reflect::enums::TupleVariantInfo::new("Centered",
&[bevy_reflect::UnnamedField::new::<MonitorSelection>(0usize)])),
bevy_reflect::enums::VariantInfo::Tuple(bevy_reflect::enums::TupleVariantInfo::new("At",
&[bevy_reflect::UnnamedField::new::<IVec2>(0usize)]))]))
})
}
}
#[allow(deprecated, reason =
"derives on a deprecated type shouldn't be considered a usage")]
impl bevy_reflect::TypePath for WindowPosition where {
fn type_path() -> &'static str {
"bevy_window::window::WindowPosition"
}
fn short_type_path() -> &'static str { "WindowPosition" }
fn type_ident() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("WindowPosition")
}
fn crate_name() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("bevy_window::window".split(':').next().unwrap())
}
fn module_path() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("bevy_window::window")
}
}
impl bevy_reflect::Reflect for WindowPosition where {
#[inline]
fn into_any(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn ::core::any::Any> {
self
}
#[inline]
fn as_any(&self) -> &dyn ::core::any::Any { self }
#[inline]
fn as_any_mut(&mut self) -> &mut dyn ::core::any::Any { self }
#[inline]
fn into_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect> {
self
}
#[inline]
fn as_reflect(&self) -> &dyn bevy_reflect::Reflect { self }
#[inline]
fn as_reflect_mut(&mut self) -> &mut dyn bevy_reflect::Reflect {
self
}
#[inline]
fn set(&mut self,
value:
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>)
->
::core::result::Result<(),
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>> {
*self = <dyn bevy_reflect::Reflect>::take(value)?;
::core::result::Result::Ok(())
}
}
#[allow(non_upper_case_globals)]
const _: () =
{
static __INVENTORY: ::inventory::Node =
::inventory::Node {
value: &{
bevy_reflect::__macro_exports::auto_register::AutomaticReflectRegistrations(<WindowPosition
as
bevy_reflect::__macro_exports::auto_register::RegisterForReflection>::__register)
},
next: ::inventory::__private::UnsafeCell::new(::inventory::__private::Option::None),
};
#[link_section = ".text.startup"]
unsafe extern "C" fn __ctor() {
unsafe {
::inventory::ErasedNode::submit(__INVENTORY.value,
&__INVENTORY)
}
}
#[used]
#[link_section = ".init_array"]
static __CTOR: unsafe extern "C" fn() = __ctor;
};
impl bevy_reflect::enums::Enum for WindowPosition where {
fn field(&self, __name_param: &str)
-> ::core::option::Option<&dyn bevy_reflect::PartialReflect> {
match self { _ => ::core::option::Option::None, }
}
fn field_at(&self, __index_param: usize)
-> ::core::option::Option<&dyn bevy_reflect::PartialReflect> {
match self {
WindowPosition::Centered { 0: __value, .. } if
__index_param == 0usize =>
::core::option::Option::Some(__value),
WindowPosition::At { 0: __value, .. } if
__index_param == 0usize =>
::core::option::Option::Some(__value),
_ => ::core::option::Option::None,
}
}
fn field_mut(&mut self, __name_param: &str)
->
::core::option::Option<&mut dyn bevy_reflect::PartialReflect> {
match self { _ => ::core::option::Option::None, }
}
fn field_at_mut(&mut self, __index_param: usize)
->
::core::option::Option<&mut dyn bevy_reflect::PartialReflect> {
match self {
WindowPosition::Centered { 0: __value, .. } if
__index_param == 0usize =>
::core::option::Option::Some(__value),
WindowPosition::At { 0: __value, .. } if
__index_param == 0usize =>
::core::option::Option::Some(__value),
_ => ::core::option::Option::None,
}
}
fn index_of(&self, __name_param: &str)
-> ::core::option::Option<usize> {
match self { _ => ::core::option::Option::None, }
}
fn name_at(&self, __index_param: usize)
-> ::core::option::Option<&str> {
match self { _ => ::core::option::Option::None, }
}
fn iter_fields(&self) -> bevy_reflect::enums::VariantFieldIter {
bevy_reflect::enums::VariantFieldIter::new(self)
}
#[inline]
fn field_len(&self) -> usize {
match self {
WindowPosition::Automatic { .. } => 0usize,
WindowPosition::Centered { .. } => 1usize,
WindowPosition::At { .. } => 1usize,
_ => 0,
}
}
#[inline]
fn variant_name(&self) -> &str {
match self {
WindowPosition::Automatic { .. } => "Automatic",
WindowPosition::Centered { .. } => "Centered",
WindowPosition::At { .. } => "At",
_ =>
::core::panicking::panic("internal error: entered unreachable code"),
}
}
#[inline]
fn variant_index(&self) -> usize {
match self {
WindowPosition::Automatic { .. } => 0usize,
WindowPosition::Centered { .. } => 1usize,
WindowPosition::At { .. } => 2usize,
_ =>
::core::panicking::panic("internal error: entered unreachable code"),
}
}
#[inline]
fn variant_type(&self) -> bevy_reflect::enums::VariantType {
match self {
WindowPosition::Automatic { .. } =>
bevy_reflect::enums::VariantType::Unit,
WindowPosition::Centered { .. } =>
bevy_reflect::enums::VariantType::Tuple,
WindowPosition::At { .. } =>
bevy_reflect::enums::VariantType::Tuple,
_ =>
::core::panicking::panic("internal error: entered unreachable code"),
}
}
fn to_dynamic_enum(&self) -> bevy_reflect::enums::DynamicEnum {
bevy_reflect::enums::DynamicEnum::from_ref::<Self>(self)
}
}
impl bevy_reflect::PartialReflect for WindowPosition where {
#[inline]
fn get_represented_type_info(&self)
-> ::core::option::Option<&'static bevy_reflect::TypeInfo> {
::core::option::Option::Some(<Self as
bevy_reflect::Typed>::type_info())
}
#[inline]
fn try_apply(&mut self,
__value_param: &dyn bevy_reflect::PartialReflect)
-> ::core::result::Result<(), bevy_reflect::ApplyError> {
if let bevy_reflect::ReflectRef::Enum(__value_param) =
bevy_reflect::PartialReflect::reflect_ref(__value_param) {
if bevy_reflect::enums::Enum::variant_name(self) ==
bevy_reflect::enums::Enum::variant_name(__value_param) {
match bevy_reflect::enums::Enum::variant_type(__value_param)
{
bevy_reflect::enums::VariantType::Struct => {
for field in
bevy_reflect::enums::Enum::iter_fields(__value_param) {
let name = field.name().unwrap();
if let ::core::option::Option::Some(v) =
bevy_reflect::enums::Enum::field_mut(self, name) {
bevy_reflect::PartialReflect::try_apply(v, field.value())?;
}
}
}
bevy_reflect::enums::VariantType::Tuple => {
for (index, field) in
::core::iter::Iterator::enumerate(bevy_reflect::enums::Enum::iter_fields(__value_param))
{
if let ::core::option::Option::Some(v) =
bevy_reflect::enums::Enum::field_at_mut(self, index) {
bevy_reflect::PartialReflect::try_apply(v, field.value())?;
}
}
}
_ => {}
}
} else {
match bevy_reflect::enums::Enum::variant_name(__value_param)
{
"Automatic" => { *self = WindowPosition::Automatic {} }
"Centered" => {
*self =
WindowPosition::Centered {
0: {
let __0 = __value_param.field_at(0usize);
let __0 =
__0.ok_or(bevy_reflect::ApplyError::MissingEnumField {
variant_name: ::core::convert::Into::into("Centered"),
field_name: ::core::convert::Into::into(".0"),
})?;
<MonitorSelection as
bevy_reflect::FromReflect>::from_reflect(__0).ok_or(bevy_reflect::ApplyError::MismatchedTypes {
from_type: ::core::convert::Into::into(bevy_reflect::DynamicTypePath::reflect_type_path(__0)),
to_type: ::core::convert::Into::into(<MonitorSelection as
bevy_reflect::TypePath>::type_path()),
})?
},
}
}
"At" => {
*self =
WindowPosition::At {
0: {
let __0 = __value_param.field_at(0usize);
let __0 =
__0.ok_or(bevy_reflect::ApplyError::MissingEnumField {
variant_name: ::core::convert::Into::into("At"),
field_name: ::core::convert::Into::into(".0"),
})?;
<IVec2 as
bevy_reflect::FromReflect>::from_reflect(__0).ok_or(bevy_reflect::ApplyError::MismatchedTypes {
from_type: ::core::convert::Into::into(bevy_reflect::DynamicTypePath::reflect_type_path(__0)),
to_type: ::core::convert::Into::into(<IVec2 as
bevy_reflect::TypePath>::type_path()),
})?
},
}
}
name => {
return ::core::result::Result::Err(bevy_reflect::ApplyError::UnknownVariant {
enum_name: ::core::convert::Into::into(bevy_reflect::DynamicTypePath::reflect_type_path(self)),
variant_name: ::core::convert::Into::into(name),
});
}
}
}
} else {
return ::core::result::Result::Err(bevy_reflect::ApplyError::MismatchedKinds {
from_kind: bevy_reflect::PartialReflect::reflect_kind(__value_param),
to_kind: bevy_reflect::ReflectKind::Enum,
});
}
::core::result::Result::Ok(())
}
fn reflect_kind(&self) -> bevy_reflect::ReflectKind {
bevy_reflect::ReflectKind::Enum
}
fn reflect_ref(&self) -> bevy_reflect::ReflectRef {
bevy_reflect::ReflectRef::Enum(self)
}
fn reflect_mut(&mut self) -> bevy_reflect::ReflectMut {
bevy_reflect::ReflectMut::Enum(self)
}
fn reflect_owned(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
-> bevy_reflect::ReflectOwned {
bevy_reflect::ReflectOwned::Enum(self)
}
#[inline]
fn try_into_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
::core::result::Result<bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>,
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::PartialReflect>> {
::core::result::Result::Ok(self)
}
#[inline]
fn try_as_reflect(&self)
-> ::core::option::Option<&dyn bevy_reflect::Reflect> {
::core::option::Option::Some(self)
}
#[inline]
fn try_as_reflect_mut(&mut self)
-> ::core::option::Option<&mut dyn bevy_reflect::Reflect> {
::core::option::Option::Some(self)
}
#[inline]
fn into_partial_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::PartialReflect> {
self
}
#[inline]
fn as_partial_reflect(&self)
-> &dyn bevy_reflect::PartialReflect {
self
}
#[inline]
fn as_partial_reflect_mut(&mut self)
-> &mut dyn bevy_reflect::PartialReflect {
self
}
fn reflect_hash(&self) -> ::core::option::Option<u64> {
(bevy_reflect::enums::enum_hash)(self)
}
fn reflect_partial_eq(&self,
value: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<bool> {
let value =
<dyn bevy_reflect::PartialReflect>::try_downcast_ref::<Self>(value);
if let ::core::option::Option::Some(value) = value {
::core::option::Option::Some(::core::cmp::PartialEq::eq(self,
value))
} else { ::core::option::Option::Some(false) }
}
fn reflect_partial_cmp(&self,
value: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<::core::cmp::Ordering> {
(bevy_reflect::enums::enum_partial_cmp)(self, value)
}
fn debug(&self, f: &mut ::core::fmt::Formatter<'_>)
-> ::core::fmt::Result {
::core::fmt::Debug::fmt(self, f)
}
#[inline]
fn reflect_clone(&self)
->
::core::result::Result<bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>,
bevy_reflect::ReflectCloneError> {
::core::result::Result::Ok(bevy_reflect::__macro_exports::alloc_utils::Box::new(::core::clone::Clone::clone(self)))
}
}
impl bevy_reflect::FromReflect for WindowPosition where {
fn from_reflect(__param0: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<Self> {
if let bevy_reflect::ReflectRef::Enum(__param0) =
bevy_reflect::PartialReflect::reflect_ref(__param0) {
match bevy_reflect::enums::Enum::variant_name(__param0) {
"Automatic" =>
::core::option::Option::Some(WindowPosition::Automatic {}),
"Centered" =>
::core::option::Option::Some(WindowPosition::Centered {
0: {
let __0 = __param0.field_at(0usize);
let __0 = __0?;
<MonitorSelection as
bevy_reflect::FromReflect>::from_reflect(__0)?
},
}),
"At" =>
::core::option::Option::Some(WindowPosition::At {
0: {
let __0 = __param0.field_at(0usize);
let __0 = __0?;
<IVec2 as bevy_reflect::FromReflect>::from_reflect(__0)?
},
}),
name => ::core::option::Option::None,
}
} else { ::core::option::Option::None }
}
}
};Reflect),
797 reflect(Debug, PartialEq, Clone)
798)]
799#[cfg_attr(feature = "serialize", derive(#[doc(hidden)]
#[allow(non_upper_case_globals, unused_attributes, unused_qualifications,
clippy :: absolute_paths,)]
const _: () =
{
#[allow(unused_extern_crates, clippy :: useless_attribute)]
extern crate serde as _serde;
;
#[automatically_derived]
impl _serde::Serialize for WindowPosition {
fn serialize<__S>(&self, __serializer: __S)
-> _serde::__private228::Result<__S::Ok, __S::Error> where
__S: _serde::Serializer {
match *self {
WindowPosition::Automatic =>
_serde::Serializer::serialize_unit_variant(__serializer,
"WindowPosition", 0u32, "Automatic"),
WindowPosition::Centered(ref __field0) =>
_serde::Serializer::serialize_newtype_variant(__serializer,
"WindowPosition", 1u32, "Centered", __field0),
WindowPosition::At(ref __field0) =>
_serde::Serializer::serialize_newtype_variant(__serializer,
"WindowPosition", 2u32, "At", __field0),
}
}
}
};serde::Serialize, #[doc(hidden)]
#[allow(non_upper_case_globals, unused_attributes, unused_qualifications,
clippy :: absolute_paths,)]
const _: () =
{
#[allow(unused_extern_crates, clippy :: useless_attribute)]
extern crate serde as _serde;
;
#[automatically_derived]
impl<'de> _serde::Deserialize<'de> for WindowPosition {
fn deserialize<__D>(__deserializer: __D)
-> _serde::__private228::Result<Self, __D::Error> where
__D: _serde::Deserializer<'de> {
#[allow(non_camel_case_types)]
#[doc(hidden)]
enum __Field { __field0, __field1, __field2, }
#[doc(hidden)]
struct __FieldVisitor;
#[automatically_derived]
impl<'de> _serde::de::Visitor<'de> for __FieldVisitor {
type Value = __Field;
fn expecting(&self,
__formatter: &mut _serde::__private228::Formatter)
-> _serde::__private228::fmt::Result {
_serde::__private228::Formatter::write_str(__formatter,
"variant identifier")
}
fn visit_u64<__E>(self, __value: u64)
-> _serde::__private228::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
0u64 => _serde::__private228::Ok(__Field::__field0),
1u64 => _serde::__private228::Ok(__Field::__field1),
2u64 => _serde::__private228::Ok(__Field::__field2),
_ =>
_serde::__private228::Err(_serde::de::Error::invalid_value(_serde::de::Unexpected::Unsigned(__value),
&"variant index 0 <= i < 3")),
}
}
fn visit_str<__E>(self, __value: &str)
-> _serde::__private228::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
"Automatic" => _serde::__private228::Ok(__Field::__field0),
"Centered" => _serde::__private228::Ok(__Field::__field1),
"At" => _serde::__private228::Ok(__Field::__field2),
_ => {
_serde::__private228::Err(_serde::de::Error::unknown_variant(__value,
VARIANTS))
}
}
}
fn visit_bytes<__E>(self, __value: &[u8])
-> _serde::__private228::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
b"Automatic" => _serde::__private228::Ok(__Field::__field0),
b"Centered" => _serde::__private228::Ok(__Field::__field1),
b"At" => _serde::__private228::Ok(__Field::__field2),
_ => {
let __value =
&_serde::__private228::from_utf8_lossy(__value);
_serde::__private228::Err(_serde::de::Error::unknown_variant(__value,
VARIANTS))
}
}
}
}
#[automatically_derived]
impl<'de> _serde::Deserialize<'de> for __Field {
#[inline]
fn deserialize<__D>(__deserializer: __D)
-> _serde::__private228::Result<Self, __D::Error> where
__D: _serde::Deserializer<'de> {
_serde::Deserializer::deserialize_identifier(__deserializer,
__FieldVisitor)
}
}
#[doc(hidden)]
struct __Visitor<'de> {
marker: _serde::__private228::PhantomData<WindowPosition>,
lifetime: _serde::__private228::PhantomData<&'de ()>,
}
#[automatically_derived]
impl<'de> _serde::de::Visitor<'de> for __Visitor<'de> {
type Value = WindowPosition;
fn expecting(&self,
__formatter: &mut _serde::__private228::Formatter)
-> _serde::__private228::fmt::Result {
_serde::__private228::Formatter::write_str(__formatter,
"enum WindowPosition")
}
fn visit_enum<__A>(self, __data: __A)
-> _serde::__private228::Result<Self::Value, __A::Error>
where __A: _serde::de::EnumAccess<'de> {
match _serde::de::EnumAccess::variant(__data)? {
(__Field::__field0, __variant) => {
_serde::de::VariantAccess::unit_variant(__variant)?;
_serde::__private228::Ok(WindowPosition::Automatic)
}
(__Field::__field1, __variant) =>
_serde::__private228::Result::map(_serde::de::VariantAccess::newtype_variant::<MonitorSelection>(__variant),
WindowPosition::Centered),
(__Field::__field2, __variant) =>
_serde::__private228::Result::map(_serde::de::VariantAccess::newtype_variant::<IVec2>(__variant),
WindowPosition::At),
}
}
}
#[doc(hidden)]
const VARIANTS: &'static [&'static str] =
&["Automatic", "Centered", "At"];
_serde::Deserializer::deserialize_enum(__deserializer,
"WindowPosition", VARIANTS,
__Visitor {
marker: _serde::__private228::PhantomData::<WindowPosition>,
lifetime: _serde::__private228::PhantomData,
})
}
}
};serde::Deserialize))]
800#[cfg_attr(
801 all(feature = "serialize", feature = "bevy_reflect"),
802 reflect(Serialize, Deserialize)
803)]
804pub enum WindowPosition {
805 #[default]
810 Automatic,
811 Centered(MonitorSelection),
817 At(IVec2),
821}
822
823impl WindowPosition {
824 pub fn new(position: IVec2) -> Self {
826 Self::At(position)
827 }
828
829 pub fn set(&mut self, position: IVec2) {
831 *self = WindowPosition::At(position);
832 }
833
834 pub fn center(&mut self, monitor: MonitorSelection) {
836 *self = WindowPosition::Centered(monitor);
837 }
838}
839
840#[derive(#[automatically_derived]
impl ::core::fmt::Debug for WindowResolution {
#[inline]
fn fmt(&self, f: &mut ::core::fmt::Formatter) -> ::core::fmt::Result {
::core::fmt::Formatter::debug_struct_field4_finish(f,
"WindowResolution", "physical_width", &self.physical_width,
"physical_height", &self.physical_height, "scale_factor_override",
&self.scale_factor_override, "scale_factor", &&self.scale_factor)
}
}Debug, #[automatically_derived]
impl ::core::clone::Clone for WindowResolution {
#[inline]
fn clone(&self) -> WindowResolution {
WindowResolution {
physical_width: ::core::clone::Clone::clone(&self.physical_width),
physical_height: ::core::clone::Clone::clone(&self.physical_height),
scale_factor_override: ::core::clone::Clone::clone(&self.scale_factor_override),
scale_factor: ::core::clone::Clone::clone(&self.scale_factor),
}
}
}Clone, #[automatically_derived]
impl ::core::cmp::PartialEq for WindowResolution {
#[inline]
fn eq(&self, other: &WindowResolution) -> bool {
self.physical_width == other.physical_width &&
self.physical_height == other.physical_height &&
self.scale_factor == other.scale_factor &&
self.scale_factor_override == other.scale_factor_override
}
}PartialEq)]
887#[cfg_attr(
888 feature = "bevy_reflect",
889 derive(const _: () =
{
impl bevy_reflect::GetTypeRegistration for WindowResolution where {
fn get_type_registration() -> bevy_reflect::TypeRegistration {
let mut registration =
bevy_reflect::TypeRegistration::of::<Self>();
registration.insert::<bevy_reflect::ReflectFromPtr>(bevy_reflect::FromType::<Self>::from_type());
registration.insert::<bevy_reflect::ReflectFromReflect>(bevy_reflect::FromType::<Self>::from_type());
registration.register_type_data::<ReflectDefault, Self>();
registration.register_type_data::<ReflectSerialize, Self>();
registration.register_type_data::<ReflectDeserialize, Self>();
registration
}
#[inline(never)]
fn register_type_dependencies(registry:
&mut bevy_reflect::TypeRegistry) {
<u32 as
bevy_reflect::__macro_exports::RegisterForReflection>::__register(registry);
<Option<f32> as
bevy_reflect::__macro_exports::RegisterForReflection>::__register(registry);
<f32 as
bevy_reflect::__macro_exports::RegisterForReflection>::__register(registry);
}
}
impl bevy_reflect::Typed for WindowResolution where {
#[inline]
fn type_info() -> &'static bevy_reflect::TypeInfo {
static CELL: bevy_reflect::utility::NonGenericTypeInfoCell =
bevy_reflect::utility::NonGenericTypeInfoCell::new();
CELL.get_or_set(||
{
bevy_reflect::TypeInfo::Struct(bevy_reflect::structs::StructInfo::new::<Self>(&[bevy_reflect::NamedField::new::<u32>("physical_width"),
bevy_reflect::NamedField::new::<u32>("physical_height"),
bevy_reflect::NamedField::new::<Option<f32>>("scale_factor_override"),
bevy_reflect::NamedField::new::<f32>("scale_factor")]))
})
}
}
#[allow(deprecated, reason =
"derives on a deprecated type shouldn't be considered a usage")]
impl bevy_reflect::TypePath for WindowResolution where {
fn type_path() -> &'static str {
"bevy_window::window::WindowResolution"
}
fn short_type_path() -> &'static str { "WindowResolution" }
fn type_ident() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("WindowResolution")
}
fn crate_name() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("bevy_window::window".split(':').next().unwrap())
}
fn module_path() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("bevy_window::window")
}
}
impl bevy_reflect::Reflect for WindowResolution where {
#[inline]
fn into_any(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn ::core::any::Any> {
self
}
#[inline]
fn as_any(&self) -> &dyn ::core::any::Any { self }
#[inline]
fn as_any_mut(&mut self) -> &mut dyn ::core::any::Any { self }
#[inline]
fn into_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect> {
self
}
#[inline]
fn as_reflect(&self) -> &dyn bevy_reflect::Reflect { self }
#[inline]
fn as_reflect_mut(&mut self) -> &mut dyn bevy_reflect::Reflect {
self
}
#[inline]
fn set(&mut self,
value:
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>)
->
::core::result::Result<(),
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>> {
*self = <dyn bevy_reflect::Reflect>::take(value)?;
::core::result::Result::Ok(())
}
}
#[allow(non_upper_case_globals)]
const _: () =
{
static __INVENTORY: ::inventory::Node =
::inventory::Node {
value: &{
bevy_reflect::__macro_exports::auto_register::AutomaticReflectRegistrations(<WindowResolution
as
bevy_reflect::__macro_exports::auto_register::RegisterForReflection>::__register)
},
next: ::inventory::__private::UnsafeCell::new(::inventory::__private::Option::None),
};
#[link_section = ".text.startup"]
unsafe extern "C" fn __ctor() {
unsafe {
::inventory::ErasedNode::submit(__INVENTORY.value,
&__INVENTORY)
}
}
#[used]
#[link_section = ".init_array"]
static __CTOR: unsafe extern "C" fn() = __ctor;
};
impl bevy_reflect::structs::Struct for WindowResolution where {
fn field(&self, name: &str)
-> ::core::option::Option<&dyn bevy_reflect::PartialReflect> {
match name {
"physical_width" =>
::core::option::Option::Some(&self.physical_width),
"physical_height" =>
::core::option::Option::Some(&self.physical_height),
"scale_factor_override" =>
::core::option::Option::Some(&self.scale_factor_override),
"scale_factor" =>
::core::option::Option::Some(&self.scale_factor),
_ => ::core::option::Option::None,
}
}
fn field_mut(&mut self, name: &str)
->
::core::option::Option<&mut dyn bevy_reflect::PartialReflect> {
match name {
"physical_width" =>
::core::option::Option::Some(&mut self.physical_width),
"physical_height" =>
::core::option::Option::Some(&mut self.physical_height),
"scale_factor_override" =>
::core::option::Option::Some(&mut self.scale_factor_override),
"scale_factor" =>
::core::option::Option::Some(&mut self.scale_factor),
_ => ::core::option::Option::None,
}
}
fn field_at(&self, index: usize)
-> ::core::option::Option<&dyn bevy_reflect::PartialReflect> {
match index {
0usize =>
::core::option::Option::Some(&self.physical_width),
1usize =>
::core::option::Option::Some(&self.physical_height),
2usize =>
::core::option::Option::Some(&self.scale_factor_override),
3usize => ::core::option::Option::Some(&self.scale_factor),
_ => ::core::option::Option::None,
}
}
fn field_at_mut(&mut self, index: usize)
->
::core::option::Option<&mut dyn bevy_reflect::PartialReflect> {
match index {
0usize =>
::core::option::Option::Some(&mut self.physical_width),
1usize =>
::core::option::Option::Some(&mut self.physical_height),
2usize =>
::core::option::Option::Some(&mut self.scale_factor_override),
3usize =>
::core::option::Option::Some(&mut self.scale_factor),
_ => ::core::option::Option::None,
}
}
fn name_at(&self, index: usize) -> ::core::option::Option<&str> {
match index {
0usize => ::core::option::Option::Some("physical_width"),
1usize => ::core::option::Option::Some("physical_height"),
2usize =>
::core::option::Option::Some("scale_factor_override"),
3usize => ::core::option::Option::Some("scale_factor"),
_ => ::core::option::Option::None,
}
}
fn index_of_name(&self, name: &str)
-> ::core::option::Option<usize> {
match name {
"physical_width" => ::core::option::Option::Some(0usize),
"physical_height" => ::core::option::Option::Some(1usize),
"scale_factor_override" =>
::core::option::Option::Some(2usize),
"scale_factor" => ::core::option::Option::Some(3usize),
_ => ::core::option::Option::None,
}
}
fn field_len(&self) -> usize { 4usize }
fn iter_fields(&self) -> bevy_reflect::structs::FieldIter {
bevy_reflect::structs::FieldIter::new(self)
}
fn to_dynamic_struct(&self)
-> bevy_reflect::structs::DynamicStruct {
let mut dynamic: bevy_reflect::structs::DynamicStruct =
::core::default::Default::default();
dynamic.set_represented_type(bevy_reflect::PartialReflect::get_represented_type_info(self));
dynamic.insert_boxed("physical_width",
bevy_reflect::PartialReflect::to_dynamic(&self.physical_width));
dynamic.insert_boxed("physical_height",
bevy_reflect::PartialReflect::to_dynamic(&self.physical_height));
dynamic.insert_boxed("scale_factor_override",
bevy_reflect::PartialReflect::to_dynamic(&self.scale_factor_override));
dynamic.insert_boxed("scale_factor",
bevy_reflect::PartialReflect::to_dynamic(&self.scale_factor));
dynamic
}
}
impl bevy_reflect::PartialReflect for WindowResolution where {
#[inline]
fn get_represented_type_info(&self)
-> ::core::option::Option<&'static bevy_reflect::TypeInfo> {
::core::option::Option::Some(<Self as
bevy_reflect::Typed>::type_info())
}
#[inline]
fn try_apply(&mut self, value: &dyn bevy_reflect::PartialReflect)
-> ::core::result::Result<(), bevy_reflect::ApplyError> {
if let bevy_reflect::ReflectRef::Struct(struct_value) =
bevy_reflect::PartialReflect::reflect_ref(value) {
for (name, value) in
bevy_reflect::structs::Struct::iter_fields(struct_value) {
if let ::core::option::Option::Some(v) =
bevy_reflect::structs::Struct::field_mut(self, name) {
bevy_reflect::PartialReflect::try_apply(v, value)?;
}
}
} else {
return ::core::result::Result::Err(bevy_reflect::ApplyError::MismatchedKinds {
from_kind: bevy_reflect::PartialReflect::reflect_kind(value),
to_kind: bevy_reflect::ReflectKind::Struct,
});
}
::core::result::Result::Ok(())
}
#[inline]
fn reflect_kind(&self) -> bevy_reflect::ReflectKind {
bevy_reflect::ReflectKind::Struct
}
#[inline]
fn reflect_ref(&self) -> bevy_reflect::ReflectRef {
bevy_reflect::ReflectRef::Struct(self)
}
#[inline]
fn reflect_mut(&mut self) -> bevy_reflect::ReflectMut {
bevy_reflect::ReflectMut::Struct(self)
}
#[inline]
fn reflect_owned(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
-> bevy_reflect::ReflectOwned {
bevy_reflect::ReflectOwned::Struct(self)
}
#[inline]
fn try_into_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
::core::result::Result<bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>,
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::PartialReflect>> {
::core::result::Result::Ok(self)
}
#[inline]
fn try_as_reflect(&self)
-> ::core::option::Option<&dyn bevy_reflect::Reflect> {
::core::option::Option::Some(self)
}
#[inline]
fn try_as_reflect_mut(&mut self)
-> ::core::option::Option<&mut dyn bevy_reflect::Reflect> {
::core::option::Option::Some(self)
}
#[inline]
fn into_partial_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::PartialReflect> {
self
}
#[inline]
fn as_partial_reflect(&self)
-> &dyn bevy_reflect::PartialReflect {
self
}
#[inline]
fn as_partial_reflect_mut(&mut self)
-> &mut dyn bevy_reflect::PartialReflect {
self
}
fn reflect_partial_eq(&self,
value: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<bool> {
let value =
<dyn bevy_reflect::PartialReflect>::try_downcast_ref::<Self>(value);
if let ::core::option::Option::Some(value) = value {
::core::option::Option::Some(::core::cmp::PartialEq::eq(self,
value))
} else { ::core::option::Option::Some(false) }
}
fn reflect_partial_cmp(&self,
value: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<::core::cmp::Ordering> {
(bevy_reflect::structs::struct_partial_cmp)(self, value)
}
fn debug(&self, f: &mut ::core::fmt::Formatter<'_>)
-> ::core::fmt::Result {
::core::fmt::Debug::fmt(self, f)
}
#[inline]
fn reflect_clone(&self)
->
::core::result::Result<bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>,
bevy_reflect::ReflectCloneError> {
::core::result::Result::Ok(bevy_reflect::__macro_exports::alloc_utils::Box::new(::core::clone::Clone::clone(self)))
}
}
impl bevy_reflect::FromReflect for WindowResolution where {
fn from_reflect(reflect: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<Self> {
if let bevy_reflect::ReflectRef::Struct(__ref_struct) =
bevy_reflect::PartialReflect::reflect_ref(reflect) {
let mut __this =
<Self as ::core::default::Default>::default();
if let ::core::option::Option::Some(__field) =
(||
<u32 as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"physical_width")?))() {
__this.physical_width = __field;
}
if let ::core::option::Option::Some(__field) =
(||
<u32 as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"physical_height")?))() {
__this.physical_height = __field;
}
if let ::core::option::Option::Some(__field) =
(||
<Option<f32> as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"scale_factor_override")?))() {
__this.scale_factor_override = __field;
}
if let ::core::option::Option::Some(__field) =
(||
<f32 as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"scale_factor")?))() {
__this.scale_factor = __field;
}
::core::option::Option::Some(__this)
} else { ::core::option::Option::None }
}
}
};Reflect),
890 reflect(Debug, PartialEq, Default, Clone)
891)]
892#[cfg_attr(feature = "serialize", derive(#[doc(hidden)]
#[allow(non_upper_case_globals, unused_attributes, unused_qualifications,
clippy :: absolute_paths,)]
const _: () =
{
#[allow(unused_extern_crates, clippy :: useless_attribute)]
extern crate serde as _serde;
;
#[automatically_derived]
impl _serde::Serialize for WindowResolution {
fn serialize<__S>(&self, __serializer: __S)
-> _serde::__private228::Result<__S::Ok, __S::Error> where
__S: _serde::Serializer {
let mut __serde_state =
_serde::Serializer::serialize_struct(__serializer,
"WindowResolution", false as usize + 1 + 1 + 1 + 1)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"physical_width", &self.physical_width)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"physical_height", &self.physical_height)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"scale_factor_override", &self.scale_factor_override)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"scale_factor", &self.scale_factor)?;
_serde::ser::SerializeStruct::end(__serde_state)
}
}
};serde::Serialize, #[doc(hidden)]
#[allow(non_upper_case_globals, unused_attributes, unused_qualifications,
clippy :: absolute_paths,)]
const _: () =
{
#[allow(unused_extern_crates, clippy :: useless_attribute)]
extern crate serde as _serde;
;
#[automatically_derived]
impl<'de> _serde::Deserialize<'de> for WindowResolution {
fn deserialize<__D>(__deserializer: __D)
-> _serde::__private228::Result<Self, __D::Error> where
__D: _serde::Deserializer<'de> {
#[allow(non_camel_case_types)]
#[doc(hidden)]
enum __Field {
__field0,
__field1,
__field2,
__field3,
__ignore,
}
#[doc(hidden)]
struct __FieldVisitor;
#[automatically_derived]
impl<'de> _serde::de::Visitor<'de> for __FieldVisitor {
type Value = __Field;
fn expecting(&self,
__formatter: &mut _serde::__private228::Formatter)
-> _serde::__private228::fmt::Result {
_serde::__private228::Formatter::write_str(__formatter,
"field identifier")
}
fn visit_u64<__E>(self, __value: u64)
-> _serde::__private228::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
0u64 => _serde::__private228::Ok(__Field::__field0),
1u64 => _serde::__private228::Ok(__Field::__field1),
2u64 => _serde::__private228::Ok(__Field::__field2),
3u64 => _serde::__private228::Ok(__Field::__field3),
_ => _serde::__private228::Ok(__Field::__ignore),
}
}
fn visit_str<__E>(self, __value: &str)
-> _serde::__private228::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
"physical_width" =>
_serde::__private228::Ok(__Field::__field0),
"physical_height" =>
_serde::__private228::Ok(__Field::__field1),
"scale_factor_override" =>
_serde::__private228::Ok(__Field::__field2),
"scale_factor" =>
_serde::__private228::Ok(__Field::__field3),
_ => { _serde::__private228::Ok(__Field::__ignore) }
}
}
fn visit_bytes<__E>(self, __value: &[u8])
-> _serde::__private228::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
b"physical_width" =>
_serde::__private228::Ok(__Field::__field0),
b"physical_height" =>
_serde::__private228::Ok(__Field::__field1),
b"scale_factor_override" =>
_serde::__private228::Ok(__Field::__field2),
b"scale_factor" =>
_serde::__private228::Ok(__Field::__field3),
_ => { _serde::__private228::Ok(__Field::__ignore) }
}
}
}
#[automatically_derived]
impl<'de> _serde::Deserialize<'de> for __Field {
#[inline]
fn deserialize<__D>(__deserializer: __D)
-> _serde::__private228::Result<Self, __D::Error> where
__D: _serde::Deserializer<'de> {
_serde::Deserializer::deserialize_identifier(__deserializer,
__FieldVisitor)
}
}
#[doc(hidden)]
struct __Visitor<'de> {
marker: _serde::__private228::PhantomData<WindowResolution>,
lifetime: _serde::__private228::PhantomData<&'de ()>,
}
#[automatically_derived]
impl<'de> _serde::de::Visitor<'de> for __Visitor<'de> {
type Value = WindowResolution;
fn expecting(&self,
__formatter: &mut _serde::__private228::Formatter)
-> _serde::__private228::fmt::Result {
_serde::__private228::Formatter::write_str(__formatter,
"struct WindowResolution")
}
#[inline]
fn visit_seq<__A>(self, mut __seq: __A)
-> _serde::__private228::Result<Self::Value, __A::Error>
where __A: _serde::de::SeqAccess<'de> {
let __field0 =
match _serde::de::SeqAccess::next_element::<u32>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(0usize,
&"struct WindowResolution with 4 elements")),
};
let __field1 =
match _serde::de::SeqAccess::next_element::<u32>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(1usize,
&"struct WindowResolution with 4 elements")),
};
let __field2 =
match _serde::de::SeqAccess::next_element::<Option<f32>>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(2usize,
&"struct WindowResolution with 4 elements")),
};
let __field3 =
match _serde::de::SeqAccess::next_element::<f32>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(3usize,
&"struct WindowResolution with 4 elements")),
};
_serde::__private228::Ok(WindowResolution {
physical_width: __field0,
physical_height: __field1,
scale_factor_override: __field2,
scale_factor: __field3,
})
}
#[inline]
fn visit_map<__A>(self, mut __map: __A)
-> _serde::__private228::Result<Self::Value, __A::Error>
where __A: _serde::de::MapAccess<'de> {
let mut __field0: _serde::__private228::Option<u32> =
_serde::__private228::None;
let mut __field1: _serde::__private228::Option<u32> =
_serde::__private228::None;
let mut __field2:
_serde::__private228::Option<Option<f32>> =
_serde::__private228::None;
let mut __field3: _serde::__private228::Option<f32> =
_serde::__private228::None;
while let _serde::__private228::Some(__key) =
_serde::de::MapAccess::next_key::<__Field>(&mut __map)? {
match __key {
__Field::__field0 => {
if _serde::__private228::Option::is_some(&__field0) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("physical_width"));
}
__field0 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<u32>(&mut __map)?);
}
__Field::__field1 => {
if _serde::__private228::Option::is_some(&__field1) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("physical_height"));
}
__field1 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<u32>(&mut __map)?);
}
__Field::__field2 => {
if _serde::__private228::Option::is_some(&__field2) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("scale_factor_override"));
}
__field2 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<Option<f32>>(&mut __map)?);
}
__Field::__field3 => {
if _serde::__private228::Option::is_some(&__field3) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("scale_factor"));
}
__field3 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<f32>(&mut __map)?);
}
_ => {
let _ =
_serde::de::MapAccess::next_value::<_serde::de::IgnoredAny>(&mut __map)?;
}
}
}
let __field0 =
match __field0 {
_serde::__private228::Some(__field0) => __field0,
_serde::__private228::None =>
_serde::__private228::de::missing_field("physical_width")?,
};
let __field1 =
match __field1 {
_serde::__private228::Some(__field1) => __field1,
_serde::__private228::None =>
_serde::__private228::de::missing_field("physical_height")?,
};
let __field2 =
match __field2 {
_serde::__private228::Some(__field2) => __field2,
_serde::__private228::None =>
_serde::__private228::de::missing_field("scale_factor_override")?,
};
let __field3 =
match __field3 {
_serde::__private228::Some(__field3) => __field3,
_serde::__private228::None =>
_serde::__private228::de::missing_field("scale_factor")?,
};
_serde::__private228::Ok(WindowResolution {
physical_width: __field0,
physical_height: __field1,
scale_factor_override: __field2,
scale_factor: __field3,
})
}
}
#[doc(hidden)]
const FIELDS: &'static [&'static str] =
&["physical_width", "physical_height",
"scale_factor_override", "scale_factor"];
_serde::Deserializer::deserialize_struct(__deserializer,
"WindowResolution", FIELDS,
__Visitor {
marker: _serde::__private228::PhantomData::<WindowResolution>,
lifetime: _serde::__private228::PhantomData,
})
}
}
};serde::Deserialize))]
893#[cfg_attr(
894 all(feature = "serialize", feature = "bevy_reflect"),
895 reflect(Serialize, Deserialize)
896)]
897pub struct WindowResolution {
898 physical_width: u32,
900 physical_height: u32,
902 scale_factor_override: Option<f32>,
906 scale_factor: f32,
910}
911
912impl Default for WindowResolution {
913 fn default() -> Self {
914 WindowResolution {
915 physical_width: 1280,
916 physical_height: 720,
917 scale_factor_override: None,
918 scale_factor: 1.0,
919 }
920 }
921}
922
923impl WindowResolution {
924 pub fn new(physical_width: u32, physical_height: u32) -> Self {
926 Self {
927 physical_width,
928 physical_height,
929 ..Default::default()
930 }
931 }
932
933 pub fn with_scale_factor_override(mut self, scale_factor_override: f32) -> Self {
935 self.set_scale_factor_override(Some(scale_factor_override));
936 self
937 }
938
939 #[inline]
941 pub fn width(&self) -> f32 {
942 self.physical_width() as f32 / self.scale_factor()
943 }
944
945 #[inline]
947 pub fn height(&self) -> f32 {
948 self.physical_height() as f32 / self.scale_factor()
949 }
950
951 #[inline]
953 pub fn size(&self) -> Vec2 {
954 Vec2::new(self.width(), self.height())
955 }
956
957 #[inline]
959 pub fn physical_width(&self) -> u32 {
960 self.physical_width
961 }
962
963 #[inline]
965 pub fn physical_height(&self) -> u32 {
966 self.physical_height
967 }
968
969 #[inline]
971 pub fn physical_size(&self) -> UVec2 {
972 UVec2::new(self.physical_width, self.physical_height)
973 }
974
975 pub fn scale_factor(&self) -> f32 {
979 self.scale_factor_override
980 .unwrap_or_else(|| self.base_scale_factor())
981 }
982
983 #[inline]
987 pub fn base_scale_factor(&self) -> f32 {
988 self.scale_factor
989 }
990
991 #[inline]
995 pub fn scale_factor_override(&self) -> Option<f32> {
996 self.scale_factor_override
997 }
998
999 #[inline]
1001 pub fn set(&mut self, width: f32, height: f32) {
1002 self.set_physical_resolution(
1003 (width * self.scale_factor()) as u32,
1004 (height * self.scale_factor()) as u32,
1005 );
1006 }
1007
1008 #[inline]
1013 pub fn set_physical_resolution(&mut self, width: u32, height: u32) {
1014 self.physical_width = width;
1015 self.physical_height = height;
1016 }
1017
1018 #[inline]
1020 pub fn set_scale_factor(&mut self, scale_factor: f32) {
1021 self.scale_factor = scale_factor;
1022 }
1023
1024 #[inline]
1029 #[doc(hidden)]
1030 pub fn set_scale_factor_and_apply_to_physical_size(&mut self, scale_factor: f32) {
1031 self.scale_factor = scale_factor;
1032 self.physical_width = (self.physical_width as f32 * scale_factor) as u32;
1033 self.physical_height = (self.physical_height as f32 * scale_factor) as u32;
1034 }
1035
1036 #[inline]
1041 pub fn set_scale_factor_override(&mut self, scale_factor_override: Option<f32>) {
1042 self.scale_factor_override = scale_factor_override;
1043 }
1044}
1045
1046impl From<(u32, u32)> for WindowResolution {
1047 fn from((width, height): (u32, u32)) -> Self {
1048 WindowResolution::new(width, height)
1049 }
1050}
1051
1052impl From<[u32; 2]> for WindowResolution {
1053 fn from([width, height]: [u32; 2]) -> WindowResolution {
1054 WindowResolution::new(width, height)
1055 }
1056}
1057
1058impl From<UVec2> for WindowResolution {
1059 fn from(res: UVec2) -> WindowResolution {
1060 WindowResolution::new(res.x, res.y)
1061 }
1062}
1063
1064#[derive(#[automatically_derived]
impl ::core::default::Default for CursorGrabMode {
#[inline]
fn default() -> CursorGrabMode { Self::None }
}Default, #[automatically_derived]
impl ::core::fmt::Debug for CursorGrabMode {
#[inline]
fn fmt(&self, f: &mut ::core::fmt::Formatter) -> ::core::fmt::Result {
::core::fmt::Formatter::write_str(f,
match self {
CursorGrabMode::None => "None",
CursorGrabMode::Confined => "Confined",
CursorGrabMode::Locked => "Locked",
})
}
}Debug, #[automatically_derived]
impl ::core::clone::Clone for CursorGrabMode {
#[inline]
fn clone(&self) -> CursorGrabMode { *self }
}Clone, #[automatically_derived]
impl ::core::marker::Copy for CursorGrabMode { }Copy, #[automatically_derived]
impl ::core::cmp::PartialEq for CursorGrabMode {
#[inline]
fn eq(&self, other: &CursorGrabMode) -> bool {
let __self_discr = ::core::intrinsics::discriminant_value(self);
let __arg1_discr = ::core::intrinsics::discriminant_value(other);
__self_discr == __arg1_discr
}
}PartialEq, #[automatically_derived]
impl ::core::cmp::Eq for CursorGrabMode {
#[inline]
#[doc(hidden)]
#[coverage(off)]
fn assert_fields_are_eq(&self) {}
}Eq)]
1074#[cfg_attr(
1075 feature = "bevy_reflect",
1076 derive(const _: () =
{
impl bevy_reflect::GetTypeRegistration for CursorGrabMode where {
fn get_type_registration() -> bevy_reflect::TypeRegistration {
let mut registration =
bevy_reflect::TypeRegistration::of::<Self>();
registration.insert::<bevy_reflect::ReflectFromPtr>(bevy_reflect::FromType::<Self>::from_type());
registration.insert::<bevy_reflect::ReflectFromReflect>(bevy_reflect::FromType::<Self>::from_type());
registration.register_type_data::<ReflectDefault, Self>();
registration.register_type_data::<ReflectSerialize, Self>();
registration.register_type_data::<ReflectDeserialize, Self>();
registration
}
#[inline(never)]
fn register_type_dependencies(registry:
&mut bevy_reflect::TypeRegistry) {}
}
impl bevy_reflect::Typed for CursorGrabMode where {
#[inline]
fn type_info() -> &'static bevy_reflect::TypeInfo {
static CELL: bevy_reflect::utility::NonGenericTypeInfoCell =
bevy_reflect::utility::NonGenericTypeInfoCell::new();
CELL.get_or_set(||
{
bevy_reflect::TypeInfo::Enum(bevy_reflect::enums::EnumInfo::new::<Self>(&[bevy_reflect::enums::VariantInfo::Unit(bevy_reflect::enums::UnitVariantInfo::new("None")),
bevy_reflect::enums::VariantInfo::Unit(bevy_reflect::enums::UnitVariantInfo::new("Confined")),
bevy_reflect::enums::VariantInfo::Unit(bevy_reflect::enums::UnitVariantInfo::new("Locked"))]))
})
}
}
#[allow(deprecated, reason =
"derives on a deprecated type shouldn't be considered a usage")]
impl bevy_reflect::TypePath for CursorGrabMode where {
fn type_path() -> &'static str {
"bevy_window::window::CursorGrabMode"
}
fn short_type_path() -> &'static str { "CursorGrabMode" }
fn type_ident() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("CursorGrabMode")
}
fn crate_name() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("bevy_window::window".split(':').next().unwrap())
}
fn module_path() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("bevy_window::window")
}
}
impl bevy_reflect::Reflect for CursorGrabMode where {
#[inline]
fn into_any(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn ::core::any::Any> {
self
}
#[inline]
fn as_any(&self) -> &dyn ::core::any::Any { self }
#[inline]
fn as_any_mut(&mut self) -> &mut dyn ::core::any::Any { self }
#[inline]
fn into_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect> {
self
}
#[inline]
fn as_reflect(&self) -> &dyn bevy_reflect::Reflect { self }
#[inline]
fn as_reflect_mut(&mut self) -> &mut dyn bevy_reflect::Reflect {
self
}
#[inline]
fn set(&mut self,
value:
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>)
->
::core::result::Result<(),
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>> {
*self = <dyn bevy_reflect::Reflect>::take(value)?;
::core::result::Result::Ok(())
}
}
#[allow(non_upper_case_globals)]
const _: () =
{
static __INVENTORY: ::inventory::Node =
::inventory::Node {
value: &{
bevy_reflect::__macro_exports::auto_register::AutomaticReflectRegistrations(<CursorGrabMode
as
bevy_reflect::__macro_exports::auto_register::RegisterForReflection>::__register)
},
next: ::inventory::__private::UnsafeCell::new(::inventory::__private::Option::None),
};
#[link_section = ".text.startup"]
unsafe extern "C" fn __ctor() {
unsafe {
::inventory::ErasedNode::submit(__INVENTORY.value,
&__INVENTORY)
}
}
#[used]
#[link_section = ".init_array"]
static __CTOR: unsafe extern "C" fn() = __ctor;
};
impl bevy_reflect::enums::Enum for CursorGrabMode where {
fn field(&self, __name_param: &str)
-> ::core::option::Option<&dyn bevy_reflect::PartialReflect> {
match self { _ => ::core::option::Option::None, }
}
fn field_at(&self, __index_param: usize)
-> ::core::option::Option<&dyn bevy_reflect::PartialReflect> {
match self { _ => ::core::option::Option::None, }
}
fn field_mut(&mut self, __name_param: &str)
->
::core::option::Option<&mut dyn bevy_reflect::PartialReflect> {
match self { _ => ::core::option::Option::None, }
}
fn field_at_mut(&mut self, __index_param: usize)
->
::core::option::Option<&mut dyn bevy_reflect::PartialReflect> {
match self { _ => ::core::option::Option::None, }
}
fn index_of(&self, __name_param: &str)
-> ::core::option::Option<usize> {
match self { _ => ::core::option::Option::None, }
}
fn name_at(&self, __index_param: usize)
-> ::core::option::Option<&str> {
match self { _ => ::core::option::Option::None, }
}
fn iter_fields(&self) -> bevy_reflect::enums::VariantFieldIter {
bevy_reflect::enums::VariantFieldIter::new(self)
}
#[inline]
fn field_len(&self) -> usize {
match self {
CursorGrabMode::None { .. } => 0usize,
CursorGrabMode::Confined { .. } => 0usize,
CursorGrabMode::Locked { .. } => 0usize,
_ => 0,
}
}
#[inline]
fn variant_name(&self) -> &str {
match self {
CursorGrabMode::None { .. } => "None",
CursorGrabMode::Confined { .. } => "Confined",
CursorGrabMode::Locked { .. } => "Locked",
_ =>
::core::panicking::panic("internal error: entered unreachable code"),
}
}
#[inline]
fn variant_index(&self) -> usize {
match self {
CursorGrabMode::None { .. } => 0usize,
CursorGrabMode::Confined { .. } => 1usize,
CursorGrabMode::Locked { .. } => 2usize,
_ =>
::core::panicking::panic("internal error: entered unreachable code"),
}
}
#[inline]
fn variant_type(&self) -> bevy_reflect::enums::VariantType {
match self {
CursorGrabMode::None { .. } =>
bevy_reflect::enums::VariantType::Unit,
CursorGrabMode::Confined { .. } =>
bevy_reflect::enums::VariantType::Unit,
CursorGrabMode::Locked { .. } =>
bevy_reflect::enums::VariantType::Unit,
_ =>
::core::panicking::panic("internal error: entered unreachable code"),
}
}
fn to_dynamic_enum(&self) -> bevy_reflect::enums::DynamicEnum {
bevy_reflect::enums::DynamicEnum::from_ref::<Self>(self)
}
}
impl bevy_reflect::PartialReflect for CursorGrabMode where {
#[inline]
fn get_represented_type_info(&self)
-> ::core::option::Option<&'static bevy_reflect::TypeInfo> {
::core::option::Option::Some(<Self as
bevy_reflect::Typed>::type_info())
}
#[inline]
fn try_apply(&mut self,
__value_param: &dyn bevy_reflect::PartialReflect)
-> ::core::result::Result<(), bevy_reflect::ApplyError> {
if let bevy_reflect::ReflectRef::Enum(__value_param) =
bevy_reflect::PartialReflect::reflect_ref(__value_param) {
if bevy_reflect::enums::Enum::variant_name(self) ==
bevy_reflect::enums::Enum::variant_name(__value_param) {
match bevy_reflect::enums::Enum::variant_type(__value_param)
{
bevy_reflect::enums::VariantType::Struct => {
for field in
bevy_reflect::enums::Enum::iter_fields(__value_param) {
let name = field.name().unwrap();
if let ::core::option::Option::Some(v) =
bevy_reflect::enums::Enum::field_mut(self, name) {
bevy_reflect::PartialReflect::try_apply(v, field.value())?;
}
}
}
bevy_reflect::enums::VariantType::Tuple => {
for (index, field) in
::core::iter::Iterator::enumerate(bevy_reflect::enums::Enum::iter_fields(__value_param))
{
if let ::core::option::Option::Some(v) =
bevy_reflect::enums::Enum::field_at_mut(self, index) {
bevy_reflect::PartialReflect::try_apply(v, field.value())?;
}
}
}
_ => {}
}
} else {
match bevy_reflect::enums::Enum::variant_name(__value_param)
{
"None" => { *self = CursorGrabMode::None {} }
"Confined" => { *self = CursorGrabMode::Confined {} }
"Locked" => { *self = CursorGrabMode::Locked {} }
name => {
return ::core::result::Result::Err(bevy_reflect::ApplyError::UnknownVariant {
enum_name: ::core::convert::Into::into(bevy_reflect::DynamicTypePath::reflect_type_path(self)),
variant_name: ::core::convert::Into::into(name),
});
}
}
}
} else {
return ::core::result::Result::Err(bevy_reflect::ApplyError::MismatchedKinds {
from_kind: bevy_reflect::PartialReflect::reflect_kind(__value_param),
to_kind: bevy_reflect::ReflectKind::Enum,
});
}
::core::result::Result::Ok(())
}
fn reflect_kind(&self) -> bevy_reflect::ReflectKind {
bevy_reflect::ReflectKind::Enum
}
fn reflect_ref(&self) -> bevy_reflect::ReflectRef {
bevy_reflect::ReflectRef::Enum(self)
}
fn reflect_mut(&mut self) -> bevy_reflect::ReflectMut {
bevy_reflect::ReflectMut::Enum(self)
}
fn reflect_owned(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
-> bevy_reflect::ReflectOwned {
bevy_reflect::ReflectOwned::Enum(self)
}
#[inline]
fn try_into_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
::core::result::Result<bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>,
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::PartialReflect>> {
::core::result::Result::Ok(self)
}
#[inline]
fn try_as_reflect(&self)
-> ::core::option::Option<&dyn bevy_reflect::Reflect> {
::core::option::Option::Some(self)
}
#[inline]
fn try_as_reflect_mut(&mut self)
-> ::core::option::Option<&mut dyn bevy_reflect::Reflect> {
::core::option::Option::Some(self)
}
#[inline]
fn into_partial_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::PartialReflect> {
self
}
#[inline]
fn as_partial_reflect(&self)
-> &dyn bevy_reflect::PartialReflect {
self
}
#[inline]
fn as_partial_reflect_mut(&mut self)
-> &mut dyn bevy_reflect::PartialReflect {
self
}
fn reflect_hash(&self) -> ::core::option::Option<u64> {
(bevy_reflect::enums::enum_hash)(self)
}
fn reflect_partial_eq(&self,
value: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<bool> {
let value =
<dyn bevy_reflect::PartialReflect>::try_downcast_ref::<Self>(value);
if let ::core::option::Option::Some(value) = value {
::core::option::Option::Some(::core::cmp::PartialEq::eq(self,
value))
} else { ::core::option::Option::Some(false) }
}
fn reflect_partial_cmp(&self,
value: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<::core::cmp::Ordering> {
(bevy_reflect::enums::enum_partial_cmp)(self, value)
}
fn debug(&self, f: &mut ::core::fmt::Formatter<'_>)
-> ::core::fmt::Result {
::core::fmt::Debug::fmt(self, f)
}
#[inline]
fn reflect_clone(&self)
->
::core::result::Result<bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>,
bevy_reflect::ReflectCloneError> {
::core::result::Result::Ok(bevy_reflect::__macro_exports::alloc_utils::Box::new(::core::clone::Clone::clone(self)))
}
}
impl bevy_reflect::FromReflect for CursorGrabMode where {
fn from_reflect(__param0: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<Self> {
if let bevy_reflect::ReflectRef::Enum(__param0) =
bevy_reflect::PartialReflect::reflect_ref(__param0) {
match bevy_reflect::enums::Enum::variant_name(__param0) {
"None" =>
::core::option::Option::Some(CursorGrabMode::None {}),
"Confined" =>
::core::option::Option::Some(CursorGrabMode::Confined {}),
"Locked" =>
::core::option::Option::Some(CursorGrabMode::Locked {}),
name => ::core::option::Option::None,
}
} else { ::core::option::Option::None }
}
}
};Reflect),
1077 reflect(Debug, PartialEq, Default, Clone)
1078)]
1079#[cfg_attr(feature = "serialize", derive(#[doc(hidden)]
#[allow(non_upper_case_globals, unused_attributes, unused_qualifications,
clippy :: absolute_paths,)]
const _: () =
{
#[allow(unused_extern_crates, clippy :: useless_attribute)]
extern crate serde as _serde;
;
#[automatically_derived]
impl _serde::Serialize for CursorGrabMode {
fn serialize<__S>(&self, __serializer: __S)
-> _serde::__private228::Result<__S::Ok, __S::Error> where
__S: _serde::Serializer {
match *self {
CursorGrabMode::None =>
_serde::Serializer::serialize_unit_variant(__serializer,
"CursorGrabMode", 0u32, "None"),
CursorGrabMode::Confined =>
_serde::Serializer::serialize_unit_variant(__serializer,
"CursorGrabMode", 1u32, "Confined"),
CursorGrabMode::Locked =>
_serde::Serializer::serialize_unit_variant(__serializer,
"CursorGrabMode", 2u32, "Locked"),
}
}
}
};serde::Serialize, #[doc(hidden)]
#[allow(non_upper_case_globals, unused_attributes, unused_qualifications,
clippy :: absolute_paths,)]
const _: () =
{
#[allow(unused_extern_crates, clippy :: useless_attribute)]
extern crate serde as _serde;
;
#[automatically_derived]
impl<'de> _serde::Deserialize<'de> for CursorGrabMode {
fn deserialize<__D>(__deserializer: __D)
-> _serde::__private228::Result<Self, __D::Error> where
__D: _serde::Deserializer<'de> {
#[allow(non_camel_case_types)]
#[doc(hidden)]
enum __Field { __field0, __field1, __field2, }
#[doc(hidden)]
struct __FieldVisitor;
#[automatically_derived]
impl<'de> _serde::de::Visitor<'de> for __FieldVisitor {
type Value = __Field;
fn expecting(&self,
__formatter: &mut _serde::__private228::Formatter)
-> _serde::__private228::fmt::Result {
_serde::__private228::Formatter::write_str(__formatter,
"variant identifier")
}
fn visit_u64<__E>(self, __value: u64)
-> _serde::__private228::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
0u64 => _serde::__private228::Ok(__Field::__field0),
1u64 => _serde::__private228::Ok(__Field::__field1),
2u64 => _serde::__private228::Ok(__Field::__field2),
_ =>
_serde::__private228::Err(_serde::de::Error::invalid_value(_serde::de::Unexpected::Unsigned(__value),
&"variant index 0 <= i < 3")),
}
}
fn visit_str<__E>(self, __value: &str)
-> _serde::__private228::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
"None" => _serde::__private228::Ok(__Field::__field0),
"Confined" => _serde::__private228::Ok(__Field::__field1),
"Locked" => _serde::__private228::Ok(__Field::__field2),
_ => {
_serde::__private228::Err(_serde::de::Error::unknown_variant(__value,
VARIANTS))
}
}
}
fn visit_bytes<__E>(self, __value: &[u8])
-> _serde::__private228::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
b"None" => _serde::__private228::Ok(__Field::__field0),
b"Confined" => _serde::__private228::Ok(__Field::__field1),
b"Locked" => _serde::__private228::Ok(__Field::__field2),
_ => {
let __value =
&_serde::__private228::from_utf8_lossy(__value);
_serde::__private228::Err(_serde::de::Error::unknown_variant(__value,
VARIANTS))
}
}
}
}
#[automatically_derived]
impl<'de> _serde::Deserialize<'de> for __Field {
#[inline]
fn deserialize<__D>(__deserializer: __D)
-> _serde::__private228::Result<Self, __D::Error> where
__D: _serde::Deserializer<'de> {
_serde::Deserializer::deserialize_identifier(__deserializer,
__FieldVisitor)
}
}
#[doc(hidden)]
struct __Visitor<'de> {
marker: _serde::__private228::PhantomData<CursorGrabMode>,
lifetime: _serde::__private228::PhantomData<&'de ()>,
}
#[automatically_derived]
impl<'de> _serde::de::Visitor<'de> for __Visitor<'de> {
type Value = CursorGrabMode;
fn expecting(&self,
__formatter: &mut _serde::__private228::Formatter)
-> _serde::__private228::fmt::Result {
_serde::__private228::Formatter::write_str(__formatter,
"enum CursorGrabMode")
}
fn visit_enum<__A>(self, __data: __A)
-> _serde::__private228::Result<Self::Value, __A::Error>
where __A: _serde::de::EnumAccess<'de> {
match _serde::de::EnumAccess::variant(__data)? {
(__Field::__field0, __variant) => {
_serde::de::VariantAccess::unit_variant(__variant)?;
_serde::__private228::Ok(CursorGrabMode::None)
}
(__Field::__field1, __variant) => {
_serde::de::VariantAccess::unit_variant(__variant)?;
_serde::__private228::Ok(CursorGrabMode::Confined)
}
(__Field::__field2, __variant) => {
_serde::de::VariantAccess::unit_variant(__variant)?;
_serde::__private228::Ok(CursorGrabMode::Locked)
}
}
}
}
#[doc(hidden)]
const VARIANTS: &'static [&'static str] =
&["None", "Confined", "Locked"];
_serde::Deserializer::deserialize_enum(__deserializer,
"CursorGrabMode", VARIANTS,
__Visitor {
marker: _serde::__private228::PhantomData::<CursorGrabMode>,
lifetime: _serde::__private228::PhantomData,
})
}
}
};serde::Deserialize))]
1080#[cfg_attr(
1081 all(feature = "serialize", feature = "bevy_reflect"),
1082 reflect(Serialize, Deserialize)
1083)]
1084pub enum CursorGrabMode {
1085 #[default]
1087 None,
1088 Confined,
1090 Locked,
1092}
1093
1094#[derive(#[automatically_derived]
impl ::core::default::Default for InternalWindowState {
#[inline]
fn default() -> InternalWindowState {
InternalWindowState {
minimize_request: ::core::default::Default::default(),
maximize_request: ::core::default::Default::default(),
drag_move_request: ::core::default::Default::default(),
drag_resize_request: ::core::default::Default::default(),
physical_cursor_position: ::core::default::Default::default(),
}
}
}Default, #[automatically_derived]
impl ::core::fmt::Debug for InternalWindowState {
#[inline]
fn fmt(&self, f: &mut ::core::fmt::Formatter) -> ::core::fmt::Result {
::core::fmt::Formatter::debug_struct_field5_finish(f,
"InternalWindowState", "minimize_request", &self.minimize_request,
"maximize_request", &self.maximize_request, "drag_move_request",
&self.drag_move_request, "drag_resize_request",
&self.drag_resize_request, "physical_cursor_position",
&&self.physical_cursor_position)
}
}Debug, #[automatically_derived]
impl ::core::marker::Copy for InternalWindowState { }Copy, #[automatically_derived]
impl ::core::clone::Clone for InternalWindowState {
#[inline]
fn clone(&self) -> InternalWindowState {
let _: ::core::clone::AssertParamIsClone<Option<bool>>;
let _: ::core::clone::AssertParamIsClone<Option<bool>>;
let _: ::core::clone::AssertParamIsClone<bool>;
let _: ::core::clone::AssertParamIsClone<Option<CompassOctant>>;
let _: ::core::clone::AssertParamIsClone<Option<DVec2>>;
*self
}
}Clone, #[automatically_derived]
impl ::core::cmp::PartialEq for InternalWindowState {
#[inline]
fn eq(&self, other: &InternalWindowState) -> bool {
self.drag_move_request == other.drag_move_request &&
self.minimize_request == other.minimize_request &&
self.maximize_request == other.maximize_request &&
self.drag_resize_request == other.drag_resize_request &&
self.physical_cursor_position == other.physical_cursor_position
}
}PartialEq)]
1096#[cfg_attr(
1097 feature = "bevy_reflect",
1098 derive(const _: () =
{
impl bevy_reflect::GetTypeRegistration for InternalWindowState where
{
fn get_type_registration() -> bevy_reflect::TypeRegistration {
let mut registration =
bevy_reflect::TypeRegistration::of::<Self>();
registration.insert::<bevy_reflect::ReflectFromPtr>(bevy_reflect::FromType::<Self>::from_type());
registration.insert::<bevy_reflect::ReflectFromReflect>(bevy_reflect::FromType::<Self>::from_type());
registration.register_type_data::<ReflectDefault, Self>();
registration.register_type_data::<ReflectSerialize, Self>();
registration.register_type_data::<ReflectDeserialize, Self>();
registration
}
#[inline(never)]
fn register_type_dependencies(registry:
&mut bevy_reflect::TypeRegistry) {
<Option<bool> as
bevy_reflect::__macro_exports::RegisterForReflection>::__register(registry);
<bool as
bevy_reflect::__macro_exports::RegisterForReflection>::__register(registry);
<Option<CompassOctant> as
bevy_reflect::__macro_exports::RegisterForReflection>::__register(registry);
<Option<DVec2> as
bevy_reflect::__macro_exports::RegisterForReflection>::__register(registry);
}
}
impl bevy_reflect::Typed for InternalWindowState where {
#[inline]
fn type_info() -> &'static bevy_reflect::TypeInfo {
static CELL: bevy_reflect::utility::NonGenericTypeInfoCell =
bevy_reflect::utility::NonGenericTypeInfoCell::new();
CELL.get_or_set(||
{
bevy_reflect::TypeInfo::Struct(bevy_reflect::structs::StructInfo::new::<Self>(&[bevy_reflect::NamedField::new::<Option<bool>>("minimize_request"),
bevy_reflect::NamedField::new::<Option<bool>>("maximize_request"),
bevy_reflect::NamedField::new::<bool>("drag_move_request"),
bevy_reflect::NamedField::new::<Option<CompassOctant>>("drag_resize_request"),
bevy_reflect::NamedField::new::<Option<DVec2>>("physical_cursor_position")]))
})
}
}
#[allow(deprecated, reason =
"derives on a deprecated type shouldn't be considered a usage")]
impl bevy_reflect::TypePath for InternalWindowState where {
fn type_path() -> &'static str {
"bevy_window::window::InternalWindowState"
}
fn short_type_path() -> &'static str { "InternalWindowState" }
fn type_ident() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("InternalWindowState")
}
fn crate_name() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("bevy_window::window".split(':').next().unwrap())
}
fn module_path() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("bevy_window::window")
}
}
impl bevy_reflect::Reflect for InternalWindowState where {
#[inline]
fn into_any(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn ::core::any::Any> {
self
}
#[inline]
fn as_any(&self) -> &dyn ::core::any::Any { self }
#[inline]
fn as_any_mut(&mut self) -> &mut dyn ::core::any::Any { self }
#[inline]
fn into_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect> {
self
}
#[inline]
fn as_reflect(&self) -> &dyn bevy_reflect::Reflect { self }
#[inline]
fn as_reflect_mut(&mut self) -> &mut dyn bevy_reflect::Reflect {
self
}
#[inline]
fn set(&mut self,
value:
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>)
->
::core::result::Result<(),
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>> {
*self = <dyn bevy_reflect::Reflect>::take(value)?;
::core::result::Result::Ok(())
}
}
#[allow(non_upper_case_globals)]
const _: () =
{
static __INVENTORY: ::inventory::Node =
::inventory::Node {
value: &{
bevy_reflect::__macro_exports::auto_register::AutomaticReflectRegistrations(<InternalWindowState
as
bevy_reflect::__macro_exports::auto_register::RegisterForReflection>::__register)
},
next: ::inventory::__private::UnsafeCell::new(::inventory::__private::Option::None),
};
#[link_section = ".text.startup"]
unsafe extern "C" fn __ctor() {
unsafe {
::inventory::ErasedNode::submit(__INVENTORY.value,
&__INVENTORY)
}
}
#[used]
#[link_section = ".init_array"]
static __CTOR: unsafe extern "C" fn() = __ctor;
};
impl bevy_reflect::structs::Struct for InternalWindowState where {
fn field(&self, name: &str)
-> ::core::option::Option<&dyn bevy_reflect::PartialReflect> {
match name {
"minimize_request" =>
::core::option::Option::Some(&self.minimize_request),
"maximize_request" =>
::core::option::Option::Some(&self.maximize_request),
"drag_move_request" =>
::core::option::Option::Some(&self.drag_move_request),
"drag_resize_request" =>
::core::option::Option::Some(&self.drag_resize_request),
"physical_cursor_position" =>
::core::option::Option::Some(&self.physical_cursor_position),
_ => ::core::option::Option::None,
}
}
fn field_mut(&mut self, name: &str)
->
::core::option::Option<&mut dyn bevy_reflect::PartialReflect> {
match name {
"minimize_request" =>
::core::option::Option::Some(&mut self.minimize_request),
"maximize_request" =>
::core::option::Option::Some(&mut self.maximize_request),
"drag_move_request" =>
::core::option::Option::Some(&mut self.drag_move_request),
"drag_resize_request" =>
::core::option::Option::Some(&mut self.drag_resize_request),
"physical_cursor_position" =>
::core::option::Option::Some(&mut self.physical_cursor_position),
_ => ::core::option::Option::None,
}
}
fn field_at(&self, index: usize)
-> ::core::option::Option<&dyn bevy_reflect::PartialReflect> {
match index {
0usize =>
::core::option::Option::Some(&self.minimize_request),
1usize =>
::core::option::Option::Some(&self.maximize_request),
2usize =>
::core::option::Option::Some(&self.drag_move_request),
3usize =>
::core::option::Option::Some(&self.drag_resize_request),
4usize =>
::core::option::Option::Some(&self.physical_cursor_position),
_ => ::core::option::Option::None,
}
}
fn field_at_mut(&mut self, index: usize)
->
::core::option::Option<&mut dyn bevy_reflect::PartialReflect> {
match index {
0usize =>
::core::option::Option::Some(&mut self.minimize_request),
1usize =>
::core::option::Option::Some(&mut self.maximize_request),
2usize =>
::core::option::Option::Some(&mut self.drag_move_request),
3usize =>
::core::option::Option::Some(&mut self.drag_resize_request),
4usize =>
::core::option::Option::Some(&mut self.physical_cursor_position),
_ => ::core::option::Option::None,
}
}
fn name_at(&self, index: usize) -> ::core::option::Option<&str> {
match index {
0usize => ::core::option::Option::Some("minimize_request"),
1usize => ::core::option::Option::Some("maximize_request"),
2usize => ::core::option::Option::Some("drag_move_request"),
3usize =>
::core::option::Option::Some("drag_resize_request"),
4usize =>
::core::option::Option::Some("physical_cursor_position"),
_ => ::core::option::Option::None,
}
}
fn index_of_name(&self, name: &str)
-> ::core::option::Option<usize> {
match name {
"minimize_request" => ::core::option::Option::Some(0usize),
"maximize_request" => ::core::option::Option::Some(1usize),
"drag_move_request" => ::core::option::Option::Some(2usize),
"drag_resize_request" =>
::core::option::Option::Some(3usize),
"physical_cursor_position" =>
::core::option::Option::Some(4usize),
_ => ::core::option::Option::None,
}
}
fn field_len(&self) -> usize { 5usize }
fn iter_fields(&self) -> bevy_reflect::structs::FieldIter {
bevy_reflect::structs::FieldIter::new(self)
}
fn to_dynamic_struct(&self)
-> bevy_reflect::structs::DynamicStruct {
let mut dynamic: bevy_reflect::structs::DynamicStruct =
::core::default::Default::default();
dynamic.set_represented_type(bevy_reflect::PartialReflect::get_represented_type_info(self));
dynamic.insert_boxed("minimize_request",
bevy_reflect::PartialReflect::to_dynamic(&self.minimize_request));
dynamic.insert_boxed("maximize_request",
bevy_reflect::PartialReflect::to_dynamic(&self.maximize_request));
dynamic.insert_boxed("drag_move_request",
bevy_reflect::PartialReflect::to_dynamic(&self.drag_move_request));
dynamic.insert_boxed("drag_resize_request",
bevy_reflect::PartialReflect::to_dynamic(&self.drag_resize_request));
dynamic.insert_boxed("physical_cursor_position",
bevy_reflect::PartialReflect::to_dynamic(&self.physical_cursor_position));
dynamic
}
}
impl bevy_reflect::PartialReflect for InternalWindowState where {
#[inline]
fn get_represented_type_info(&self)
-> ::core::option::Option<&'static bevy_reflect::TypeInfo> {
::core::option::Option::Some(<Self as
bevy_reflect::Typed>::type_info())
}
#[inline]
fn try_apply(&mut self, value: &dyn bevy_reflect::PartialReflect)
-> ::core::result::Result<(), bevy_reflect::ApplyError> {
if let bevy_reflect::ReflectRef::Struct(struct_value) =
bevy_reflect::PartialReflect::reflect_ref(value) {
for (name, value) in
bevy_reflect::structs::Struct::iter_fields(struct_value) {
if let ::core::option::Option::Some(v) =
bevy_reflect::structs::Struct::field_mut(self, name) {
bevy_reflect::PartialReflect::try_apply(v, value)?;
}
}
} else {
return ::core::result::Result::Err(bevy_reflect::ApplyError::MismatchedKinds {
from_kind: bevy_reflect::PartialReflect::reflect_kind(value),
to_kind: bevy_reflect::ReflectKind::Struct,
});
}
::core::result::Result::Ok(())
}
#[inline]
fn reflect_kind(&self) -> bevy_reflect::ReflectKind {
bevy_reflect::ReflectKind::Struct
}
#[inline]
fn reflect_ref(&self) -> bevy_reflect::ReflectRef {
bevy_reflect::ReflectRef::Struct(self)
}
#[inline]
fn reflect_mut(&mut self) -> bevy_reflect::ReflectMut {
bevy_reflect::ReflectMut::Struct(self)
}
#[inline]
fn reflect_owned(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
-> bevy_reflect::ReflectOwned {
bevy_reflect::ReflectOwned::Struct(self)
}
#[inline]
fn try_into_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
::core::result::Result<bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>,
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::PartialReflect>> {
::core::result::Result::Ok(self)
}
#[inline]
fn try_as_reflect(&self)
-> ::core::option::Option<&dyn bevy_reflect::Reflect> {
::core::option::Option::Some(self)
}
#[inline]
fn try_as_reflect_mut(&mut self)
-> ::core::option::Option<&mut dyn bevy_reflect::Reflect> {
::core::option::Option::Some(self)
}
#[inline]
fn into_partial_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::PartialReflect> {
self
}
#[inline]
fn as_partial_reflect(&self)
-> &dyn bevy_reflect::PartialReflect {
self
}
#[inline]
fn as_partial_reflect_mut(&mut self)
-> &mut dyn bevy_reflect::PartialReflect {
self
}
fn reflect_partial_eq(&self,
value: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<bool> {
let value =
<dyn bevy_reflect::PartialReflect>::try_downcast_ref::<Self>(value);
if let ::core::option::Option::Some(value) = value {
::core::option::Option::Some(::core::cmp::PartialEq::eq(self,
value))
} else { ::core::option::Option::Some(false) }
}
fn reflect_partial_cmp(&self,
value: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<::core::cmp::Ordering> {
(bevy_reflect::structs::struct_partial_cmp)(self, value)
}
fn debug(&self, f: &mut ::core::fmt::Formatter<'_>)
-> ::core::fmt::Result {
::core::fmt::Debug::fmt(self, f)
}
#[inline]
fn reflect_clone(&self)
->
::core::result::Result<bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>,
bevy_reflect::ReflectCloneError> {
::core::result::Result::Ok(bevy_reflect::__macro_exports::alloc_utils::Box::new(::core::clone::Clone::clone(self)))
}
}
impl bevy_reflect::FromReflect for InternalWindowState where {
fn from_reflect(reflect: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<Self> {
if let bevy_reflect::ReflectRef::Struct(__ref_struct) =
bevy_reflect::PartialReflect::reflect_ref(reflect) {
let mut __this =
<Self as ::core::default::Default>::default();
if let ::core::option::Option::Some(__field) =
(||
<Option<bool> as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"minimize_request")?))() {
__this.minimize_request = __field;
}
if let ::core::option::Option::Some(__field) =
(||
<Option<bool> as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"maximize_request")?))() {
__this.maximize_request = __field;
}
if let ::core::option::Option::Some(__field) =
(||
<bool as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"drag_move_request")?))() {
__this.drag_move_request = __field;
}
if let ::core::option::Option::Some(__field) =
(||
<Option<CompassOctant> as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"drag_resize_request")?))() {
__this.drag_resize_request = __field;
}
if let ::core::option::Option::Some(__field) =
(||
<Option<DVec2> as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"physical_cursor_position")?))() {
__this.physical_cursor_position = __field;
}
::core::option::Option::Some(__this)
} else { ::core::option::Option::None }
}
}
};Reflect),
1099 reflect(Debug, PartialEq, Default, Clone)
1100)]
1101#[cfg_attr(feature = "serialize", derive(#[doc(hidden)]
#[allow(non_upper_case_globals, unused_attributes, unused_qualifications,
clippy :: absolute_paths,)]
const _: () =
{
#[allow(unused_extern_crates, clippy :: useless_attribute)]
extern crate serde as _serde;
;
#[automatically_derived]
impl _serde::Serialize for InternalWindowState {
fn serialize<__S>(&self, __serializer: __S)
-> _serde::__private228::Result<__S::Ok, __S::Error> where
__S: _serde::Serializer {
let mut __serde_state =
_serde::Serializer::serialize_struct(__serializer,
"InternalWindowState", false as usize + 1 + 1 + 1 + 1 + 1)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"minimize_request", &self.minimize_request)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"maximize_request", &self.maximize_request)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"drag_move_request", &self.drag_move_request)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"drag_resize_request", &self.drag_resize_request)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"physical_cursor_position",
&self.physical_cursor_position)?;
_serde::ser::SerializeStruct::end(__serde_state)
}
}
};serde::Serialize, #[doc(hidden)]
#[allow(non_upper_case_globals, unused_attributes, unused_qualifications,
clippy :: absolute_paths,)]
const _: () =
{
#[allow(unused_extern_crates, clippy :: useless_attribute)]
extern crate serde as _serde;
;
#[automatically_derived]
impl<'de> _serde::Deserialize<'de> for InternalWindowState {
fn deserialize<__D>(__deserializer: __D)
-> _serde::__private228::Result<Self, __D::Error> where
__D: _serde::Deserializer<'de> {
#[allow(non_camel_case_types)]
#[doc(hidden)]
enum __Field {
__field0,
__field1,
__field2,
__field3,
__field4,
__ignore,
}
#[doc(hidden)]
struct __FieldVisitor;
#[automatically_derived]
impl<'de> _serde::de::Visitor<'de> for __FieldVisitor {
type Value = __Field;
fn expecting(&self,
__formatter: &mut _serde::__private228::Formatter)
-> _serde::__private228::fmt::Result {
_serde::__private228::Formatter::write_str(__formatter,
"field identifier")
}
fn visit_u64<__E>(self, __value: u64)
-> _serde::__private228::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
0u64 => _serde::__private228::Ok(__Field::__field0),
1u64 => _serde::__private228::Ok(__Field::__field1),
2u64 => _serde::__private228::Ok(__Field::__field2),
3u64 => _serde::__private228::Ok(__Field::__field3),
4u64 => _serde::__private228::Ok(__Field::__field4),
_ => _serde::__private228::Ok(__Field::__ignore),
}
}
fn visit_str<__E>(self, __value: &str)
-> _serde::__private228::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
"minimize_request" =>
_serde::__private228::Ok(__Field::__field0),
"maximize_request" =>
_serde::__private228::Ok(__Field::__field1),
"drag_move_request" =>
_serde::__private228::Ok(__Field::__field2),
"drag_resize_request" =>
_serde::__private228::Ok(__Field::__field3),
"physical_cursor_position" =>
_serde::__private228::Ok(__Field::__field4),
_ => { _serde::__private228::Ok(__Field::__ignore) }
}
}
fn visit_bytes<__E>(self, __value: &[u8])
-> _serde::__private228::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
b"minimize_request" =>
_serde::__private228::Ok(__Field::__field0),
b"maximize_request" =>
_serde::__private228::Ok(__Field::__field1),
b"drag_move_request" =>
_serde::__private228::Ok(__Field::__field2),
b"drag_resize_request" =>
_serde::__private228::Ok(__Field::__field3),
b"physical_cursor_position" =>
_serde::__private228::Ok(__Field::__field4),
_ => { _serde::__private228::Ok(__Field::__ignore) }
}
}
}
#[automatically_derived]
impl<'de> _serde::Deserialize<'de> for __Field {
#[inline]
fn deserialize<__D>(__deserializer: __D)
-> _serde::__private228::Result<Self, __D::Error> where
__D: _serde::Deserializer<'de> {
_serde::Deserializer::deserialize_identifier(__deserializer,
__FieldVisitor)
}
}
#[doc(hidden)]
struct __Visitor<'de> {
marker: _serde::__private228::PhantomData<InternalWindowState>,
lifetime: _serde::__private228::PhantomData<&'de ()>,
}
#[automatically_derived]
impl<'de> _serde::de::Visitor<'de> for __Visitor<'de> {
type Value = InternalWindowState;
fn expecting(&self,
__formatter: &mut _serde::__private228::Formatter)
-> _serde::__private228::fmt::Result {
_serde::__private228::Formatter::write_str(__formatter,
"struct InternalWindowState")
}
#[inline]
fn visit_seq<__A>(self, mut __seq: __A)
-> _serde::__private228::Result<Self::Value, __A::Error>
where __A: _serde::de::SeqAccess<'de> {
let __field0 =
match _serde::de::SeqAccess::next_element::<Option<bool>>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(0usize,
&"struct InternalWindowState with 5 elements")),
};
let __field1 =
match _serde::de::SeqAccess::next_element::<Option<bool>>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(1usize,
&"struct InternalWindowState with 5 elements")),
};
let __field2 =
match _serde::de::SeqAccess::next_element::<bool>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(2usize,
&"struct InternalWindowState with 5 elements")),
};
let __field3 =
match _serde::de::SeqAccess::next_element::<Option<CompassOctant>>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(3usize,
&"struct InternalWindowState with 5 elements")),
};
let __field4 =
match _serde::de::SeqAccess::next_element::<Option<DVec2>>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(4usize,
&"struct InternalWindowState with 5 elements")),
};
_serde::__private228::Ok(InternalWindowState {
minimize_request: __field0,
maximize_request: __field1,
drag_move_request: __field2,
drag_resize_request: __field3,
physical_cursor_position: __field4,
})
}
#[inline]
fn visit_map<__A>(self, mut __map: __A)
-> _serde::__private228::Result<Self::Value, __A::Error>
where __A: _serde::de::MapAccess<'de> {
let mut __field0:
_serde::__private228::Option<Option<bool>> =
_serde::__private228::None;
let mut __field1:
_serde::__private228::Option<Option<bool>> =
_serde::__private228::None;
let mut __field2: _serde::__private228::Option<bool> =
_serde::__private228::None;
let mut __field3:
_serde::__private228::Option<Option<CompassOctant>> =
_serde::__private228::None;
let mut __field4:
_serde::__private228::Option<Option<DVec2>> =
_serde::__private228::None;
while let _serde::__private228::Some(__key) =
_serde::de::MapAccess::next_key::<__Field>(&mut __map)? {
match __key {
__Field::__field0 => {
if _serde::__private228::Option::is_some(&__field0) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("minimize_request"));
}
__field0 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<Option<bool>>(&mut __map)?);
}
__Field::__field1 => {
if _serde::__private228::Option::is_some(&__field1) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("maximize_request"));
}
__field1 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<Option<bool>>(&mut __map)?);
}
__Field::__field2 => {
if _serde::__private228::Option::is_some(&__field2) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("drag_move_request"));
}
__field2 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<bool>(&mut __map)?);
}
__Field::__field3 => {
if _serde::__private228::Option::is_some(&__field3) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("drag_resize_request"));
}
__field3 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<Option<CompassOctant>>(&mut __map)?);
}
__Field::__field4 => {
if _serde::__private228::Option::is_some(&__field4) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("physical_cursor_position"));
}
__field4 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<Option<DVec2>>(&mut __map)?);
}
_ => {
let _ =
_serde::de::MapAccess::next_value::<_serde::de::IgnoredAny>(&mut __map)?;
}
}
}
let __field0 =
match __field0 {
_serde::__private228::Some(__field0) => __field0,
_serde::__private228::None =>
_serde::__private228::de::missing_field("minimize_request")?,
};
let __field1 =
match __field1 {
_serde::__private228::Some(__field1) => __field1,
_serde::__private228::None =>
_serde::__private228::de::missing_field("maximize_request")?,
};
let __field2 =
match __field2 {
_serde::__private228::Some(__field2) => __field2,
_serde::__private228::None =>
_serde::__private228::de::missing_field("drag_move_request")?,
};
let __field3 =
match __field3 {
_serde::__private228::Some(__field3) => __field3,
_serde::__private228::None =>
_serde::__private228::de::missing_field("drag_resize_request")?,
};
let __field4 =
match __field4 {
_serde::__private228::Some(__field4) => __field4,
_serde::__private228::None =>
_serde::__private228::de::missing_field("physical_cursor_position")?,
};
_serde::__private228::Ok(InternalWindowState {
minimize_request: __field0,
maximize_request: __field1,
drag_move_request: __field2,
drag_resize_request: __field3,
physical_cursor_position: __field4,
})
}
}
#[doc(hidden)]
const FIELDS: &'static [&'static str] =
&["minimize_request", "maximize_request",
"drag_move_request", "drag_resize_request",
"physical_cursor_position"];
_serde::Deserializer::deserialize_struct(__deserializer,
"InternalWindowState", FIELDS,
__Visitor {
marker: _serde::__private228::PhantomData::<InternalWindowState>,
lifetime: _serde::__private228::PhantomData,
})
}
}
};serde::Deserialize))]
1102#[cfg_attr(
1103 all(feature = "serialize", feature = "bevy_reflect"),
1104 reflect(Serialize, Deserialize)
1105)]
1106pub struct InternalWindowState {
1107 minimize_request: Option<bool>,
1109 maximize_request: Option<bool>,
1111 drag_move_request: bool,
1113 drag_resize_request: Option<CompassOctant>,
1115 physical_cursor_position: Option<DVec2>,
1117}
1118
1119impl InternalWindowState {
1120 pub fn take_maximize_request(&mut self) -> Option<bool> {
1122 self.maximize_request.take()
1123 }
1124
1125 pub fn take_minimize_request(&mut self) -> Option<bool> {
1127 self.minimize_request.take()
1128 }
1129
1130 pub fn take_move_request(&mut self) -> bool {
1132 core::mem::take(&mut self.drag_move_request)
1133 }
1134
1135 pub fn take_resize_request(&mut self) -> Option<CompassOctant> {
1137 self.drag_resize_request.take()
1138 }
1139}
1140
1141#[derive(#[automatically_derived]
impl ::core::fmt::Debug for MonitorSelection {
#[inline]
fn fmt(&self, f: &mut ::core::fmt::Formatter) -> ::core::fmt::Result {
match self {
MonitorSelection::Current =>
::core::fmt::Formatter::write_str(f, "Current"),
MonitorSelection::Primary =>
::core::fmt::Formatter::write_str(f, "Primary"),
MonitorSelection::Index(__self_0) =>
::core::fmt::Formatter::debug_tuple_field1_finish(f, "Index",
&__self_0),
MonitorSelection::Entity(__self_0) =>
::core::fmt::Formatter::debug_tuple_field1_finish(f, "Entity",
&__self_0),
}
}
}Debug, #[automatically_derived]
impl ::core::clone::Clone for MonitorSelection {
#[inline]
fn clone(&self) -> MonitorSelection {
let _: ::core::clone::AssertParamIsClone<usize>;
let _: ::core::clone::AssertParamIsClone<Entity>;
*self
}
}Clone, #[automatically_derived]
impl ::core::marker::Copy for MonitorSelection { }Copy, #[automatically_derived]
impl ::core::cmp::PartialEq for MonitorSelection {
#[inline]
fn eq(&self, other: &MonitorSelection) -> bool {
let __self_discr = ::core::intrinsics::discriminant_value(self);
let __arg1_discr = ::core::intrinsics::discriminant_value(other);
__self_discr == __arg1_discr &&
match (self, other) {
(MonitorSelection::Index(__self_0),
MonitorSelection::Index(__arg1_0)) => __self_0 == __arg1_0,
(MonitorSelection::Entity(__self_0),
MonitorSelection::Entity(__arg1_0)) => __self_0 == __arg1_0,
_ => true,
}
}
}PartialEq, #[automatically_derived]
impl ::core::cmp::Eq for MonitorSelection {
#[inline]
#[doc(hidden)]
#[coverage(off)]
fn assert_fields_are_eq(&self) {
let _: ::core::cmp::AssertParamIsEq<usize>;
let _: ::core::cmp::AssertParamIsEq<Entity>;
}
}Eq)]
1145#[cfg_attr(
1146 feature = "bevy_reflect",
1147 derive(const _: () =
{
impl bevy_reflect::GetTypeRegistration for MonitorSelection where {
fn get_type_registration() -> bevy_reflect::TypeRegistration {
let mut registration =
bevy_reflect::TypeRegistration::of::<Self>();
registration.insert::<bevy_reflect::ReflectFromPtr>(bevy_reflect::FromType::<Self>::from_type());
registration.insert::<bevy_reflect::ReflectFromReflect>(bevy_reflect::FromType::<Self>::from_type());
registration.register_type_data::<ReflectSerialize, Self>();
registration.register_type_data::<ReflectDeserialize, Self>();
registration
}
#[inline(never)]
fn register_type_dependencies(registry:
&mut bevy_reflect::TypeRegistry) {
<usize as
bevy_reflect::__macro_exports::RegisterForReflection>::__register(registry);
<Entity as
bevy_reflect::__macro_exports::RegisterForReflection>::__register(registry);
}
}
impl bevy_reflect::Typed for MonitorSelection where {
#[inline]
fn type_info() -> &'static bevy_reflect::TypeInfo {
static CELL: bevy_reflect::utility::NonGenericTypeInfoCell =
bevy_reflect::utility::NonGenericTypeInfoCell::new();
CELL.get_or_set(||
{
bevy_reflect::TypeInfo::Enum(bevy_reflect::enums::EnumInfo::new::<Self>(&[bevy_reflect::enums::VariantInfo::Unit(bevy_reflect::enums::UnitVariantInfo::new("Current")),
bevy_reflect::enums::VariantInfo::Unit(bevy_reflect::enums::UnitVariantInfo::new("Primary")),
bevy_reflect::enums::VariantInfo::Tuple(bevy_reflect::enums::TupleVariantInfo::new("Index",
&[bevy_reflect::UnnamedField::new::<usize>(0usize)])),
bevy_reflect::enums::VariantInfo::Tuple(bevy_reflect::enums::TupleVariantInfo::new("Entity",
&[bevy_reflect::UnnamedField::new::<Entity>(0usize)]))]))
})
}
}
#[allow(deprecated, reason =
"derives on a deprecated type shouldn't be considered a usage")]
impl bevy_reflect::TypePath for MonitorSelection where {
fn type_path() -> &'static str {
"bevy_window::window::MonitorSelection"
}
fn short_type_path() -> &'static str { "MonitorSelection" }
fn type_ident() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("MonitorSelection")
}
fn crate_name() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("bevy_window::window".split(':').next().unwrap())
}
fn module_path() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("bevy_window::window")
}
}
impl bevy_reflect::Reflect for MonitorSelection where {
#[inline]
fn into_any(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn ::core::any::Any> {
self
}
#[inline]
fn as_any(&self) -> &dyn ::core::any::Any { self }
#[inline]
fn as_any_mut(&mut self) -> &mut dyn ::core::any::Any { self }
#[inline]
fn into_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect> {
self
}
#[inline]
fn as_reflect(&self) -> &dyn bevy_reflect::Reflect { self }
#[inline]
fn as_reflect_mut(&mut self) -> &mut dyn bevy_reflect::Reflect {
self
}
#[inline]
fn set(&mut self,
value:
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>)
->
::core::result::Result<(),
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>> {
*self = <dyn bevy_reflect::Reflect>::take(value)?;
::core::result::Result::Ok(())
}
}
#[allow(non_upper_case_globals)]
const _: () =
{
static __INVENTORY: ::inventory::Node =
::inventory::Node {
value: &{
bevy_reflect::__macro_exports::auto_register::AutomaticReflectRegistrations(<MonitorSelection
as
bevy_reflect::__macro_exports::auto_register::RegisterForReflection>::__register)
},
next: ::inventory::__private::UnsafeCell::new(::inventory::__private::Option::None),
};
#[link_section = ".text.startup"]
unsafe extern "C" fn __ctor() {
unsafe {
::inventory::ErasedNode::submit(__INVENTORY.value,
&__INVENTORY)
}
}
#[used]
#[link_section = ".init_array"]
static __CTOR: unsafe extern "C" fn() = __ctor;
};
impl bevy_reflect::enums::Enum for MonitorSelection where {
fn field(&self, __name_param: &str)
-> ::core::option::Option<&dyn bevy_reflect::PartialReflect> {
match self { _ => ::core::option::Option::None, }
}
fn field_at(&self, __index_param: usize)
-> ::core::option::Option<&dyn bevy_reflect::PartialReflect> {
match self {
MonitorSelection::Index { 0: __value, .. } if
__index_param == 0usize =>
::core::option::Option::Some(__value),
MonitorSelection::Entity { 0: __value, .. } if
__index_param == 0usize =>
::core::option::Option::Some(__value),
_ => ::core::option::Option::None,
}
}
fn field_mut(&mut self, __name_param: &str)
->
::core::option::Option<&mut dyn bevy_reflect::PartialReflect> {
match self { _ => ::core::option::Option::None, }
}
fn field_at_mut(&mut self, __index_param: usize)
->
::core::option::Option<&mut dyn bevy_reflect::PartialReflect> {
match self {
MonitorSelection::Index { 0: __value, .. } if
__index_param == 0usize =>
::core::option::Option::Some(__value),
MonitorSelection::Entity { 0: __value, .. } if
__index_param == 0usize =>
::core::option::Option::Some(__value),
_ => ::core::option::Option::None,
}
}
fn index_of(&self, __name_param: &str)
-> ::core::option::Option<usize> {
match self { _ => ::core::option::Option::None, }
}
fn name_at(&self, __index_param: usize)
-> ::core::option::Option<&str> {
match self { _ => ::core::option::Option::None, }
}
fn iter_fields(&self) -> bevy_reflect::enums::VariantFieldIter {
bevy_reflect::enums::VariantFieldIter::new(self)
}
#[inline]
fn field_len(&self) -> usize {
match self {
MonitorSelection::Current { .. } => 0usize,
MonitorSelection::Primary { .. } => 0usize,
MonitorSelection::Index { .. } => 1usize,
MonitorSelection::Entity { .. } => 1usize,
_ => 0,
}
}
#[inline]
fn variant_name(&self) -> &str {
match self {
MonitorSelection::Current { .. } => "Current",
MonitorSelection::Primary { .. } => "Primary",
MonitorSelection::Index { .. } => "Index",
MonitorSelection::Entity { .. } => "Entity",
_ =>
::core::panicking::panic("internal error: entered unreachable code"),
}
}
#[inline]
fn variant_index(&self) -> usize {
match self {
MonitorSelection::Current { .. } => 0usize,
MonitorSelection::Primary { .. } => 1usize,
MonitorSelection::Index { .. } => 2usize,
MonitorSelection::Entity { .. } => 3usize,
_ =>
::core::panicking::panic("internal error: entered unreachable code"),
}
}
#[inline]
fn variant_type(&self) -> bevy_reflect::enums::VariantType {
match self {
MonitorSelection::Current { .. } =>
bevy_reflect::enums::VariantType::Unit,
MonitorSelection::Primary { .. } =>
bevy_reflect::enums::VariantType::Unit,
MonitorSelection::Index { .. } =>
bevy_reflect::enums::VariantType::Tuple,
MonitorSelection::Entity { .. } =>
bevy_reflect::enums::VariantType::Tuple,
_ =>
::core::panicking::panic("internal error: entered unreachable code"),
}
}
fn to_dynamic_enum(&self) -> bevy_reflect::enums::DynamicEnum {
bevy_reflect::enums::DynamicEnum::from_ref::<Self>(self)
}
}
impl bevy_reflect::PartialReflect for MonitorSelection where {
#[inline]
fn get_represented_type_info(&self)
-> ::core::option::Option<&'static bevy_reflect::TypeInfo> {
::core::option::Option::Some(<Self as
bevy_reflect::Typed>::type_info())
}
#[inline]
fn try_apply(&mut self,
__value_param: &dyn bevy_reflect::PartialReflect)
-> ::core::result::Result<(), bevy_reflect::ApplyError> {
if let bevy_reflect::ReflectRef::Enum(__value_param) =
bevy_reflect::PartialReflect::reflect_ref(__value_param) {
if bevy_reflect::enums::Enum::variant_name(self) ==
bevy_reflect::enums::Enum::variant_name(__value_param) {
match bevy_reflect::enums::Enum::variant_type(__value_param)
{
bevy_reflect::enums::VariantType::Struct => {
for field in
bevy_reflect::enums::Enum::iter_fields(__value_param) {
let name = field.name().unwrap();
if let ::core::option::Option::Some(v) =
bevy_reflect::enums::Enum::field_mut(self, name) {
bevy_reflect::PartialReflect::try_apply(v, field.value())?;
}
}
}
bevy_reflect::enums::VariantType::Tuple => {
for (index, field) in
::core::iter::Iterator::enumerate(bevy_reflect::enums::Enum::iter_fields(__value_param))
{
if let ::core::option::Option::Some(v) =
bevy_reflect::enums::Enum::field_at_mut(self, index) {
bevy_reflect::PartialReflect::try_apply(v, field.value())?;
}
}
}
_ => {}
}
} else {
match bevy_reflect::enums::Enum::variant_name(__value_param)
{
"Current" => { *self = MonitorSelection::Current {} }
"Primary" => { *self = MonitorSelection::Primary {} }
"Index" => {
*self =
MonitorSelection::Index {
0: {
let __0 = __value_param.field_at(0usize);
let __0 =
__0.ok_or(bevy_reflect::ApplyError::MissingEnumField {
variant_name: ::core::convert::Into::into("Index"),
field_name: ::core::convert::Into::into(".0"),
})?;
<usize as
bevy_reflect::FromReflect>::from_reflect(__0).ok_or(bevy_reflect::ApplyError::MismatchedTypes {
from_type: ::core::convert::Into::into(bevy_reflect::DynamicTypePath::reflect_type_path(__0)),
to_type: ::core::convert::Into::into(<usize as
bevy_reflect::TypePath>::type_path()),
})?
},
}
}
"Entity" => {
*self =
MonitorSelection::Entity {
0: {
let __0 = __value_param.field_at(0usize);
let __0 =
__0.ok_or(bevy_reflect::ApplyError::MissingEnumField {
variant_name: ::core::convert::Into::into("Entity"),
field_name: ::core::convert::Into::into(".0"),
})?;
<Entity as
bevy_reflect::FromReflect>::from_reflect(__0).ok_or(bevy_reflect::ApplyError::MismatchedTypes {
from_type: ::core::convert::Into::into(bevy_reflect::DynamicTypePath::reflect_type_path(__0)),
to_type: ::core::convert::Into::into(<Entity as
bevy_reflect::TypePath>::type_path()),
})?
},
}
}
name => {
return ::core::result::Result::Err(bevy_reflect::ApplyError::UnknownVariant {
enum_name: ::core::convert::Into::into(bevy_reflect::DynamicTypePath::reflect_type_path(self)),
variant_name: ::core::convert::Into::into(name),
});
}
}
}
} else {
return ::core::result::Result::Err(bevy_reflect::ApplyError::MismatchedKinds {
from_kind: bevy_reflect::PartialReflect::reflect_kind(__value_param),
to_kind: bevy_reflect::ReflectKind::Enum,
});
}
::core::result::Result::Ok(())
}
fn reflect_kind(&self) -> bevy_reflect::ReflectKind {
bevy_reflect::ReflectKind::Enum
}
fn reflect_ref(&self) -> bevy_reflect::ReflectRef {
bevy_reflect::ReflectRef::Enum(self)
}
fn reflect_mut(&mut self) -> bevy_reflect::ReflectMut {
bevy_reflect::ReflectMut::Enum(self)
}
fn reflect_owned(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
-> bevy_reflect::ReflectOwned {
bevy_reflect::ReflectOwned::Enum(self)
}
#[inline]
fn try_into_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
::core::result::Result<bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>,
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::PartialReflect>> {
::core::result::Result::Ok(self)
}
#[inline]
fn try_as_reflect(&self)
-> ::core::option::Option<&dyn bevy_reflect::Reflect> {
::core::option::Option::Some(self)
}
#[inline]
fn try_as_reflect_mut(&mut self)
-> ::core::option::Option<&mut dyn bevy_reflect::Reflect> {
::core::option::Option::Some(self)
}
#[inline]
fn into_partial_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::PartialReflect> {
self
}
#[inline]
fn as_partial_reflect(&self)
-> &dyn bevy_reflect::PartialReflect {
self
}
#[inline]
fn as_partial_reflect_mut(&mut self)
-> &mut dyn bevy_reflect::PartialReflect {
self
}
fn reflect_hash(&self) -> ::core::option::Option<u64> {
(bevy_reflect::enums::enum_hash)(self)
}
fn reflect_partial_eq(&self,
value: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<bool> {
let value =
<dyn bevy_reflect::PartialReflect>::try_downcast_ref::<Self>(value);
if let ::core::option::Option::Some(value) = value {
::core::option::Option::Some(::core::cmp::PartialEq::eq(self,
value))
} else { ::core::option::Option::Some(false) }
}
fn reflect_partial_cmp(&self,
value: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<::core::cmp::Ordering> {
(bevy_reflect::enums::enum_partial_cmp)(self, value)
}
fn debug(&self, f: &mut ::core::fmt::Formatter<'_>)
-> ::core::fmt::Result {
::core::fmt::Debug::fmt(self, f)
}
#[inline]
fn reflect_clone(&self)
->
::core::result::Result<bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>,
bevy_reflect::ReflectCloneError> {
::core::result::Result::Ok(bevy_reflect::__macro_exports::alloc_utils::Box::new(::core::clone::Clone::clone(self)))
}
}
impl bevy_reflect::FromReflect for MonitorSelection where {
fn from_reflect(__param0: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<Self> {
if let bevy_reflect::ReflectRef::Enum(__param0) =
bevy_reflect::PartialReflect::reflect_ref(__param0) {
match bevy_reflect::enums::Enum::variant_name(__param0) {
"Current" =>
::core::option::Option::Some(MonitorSelection::Current {}),
"Primary" =>
::core::option::Option::Some(MonitorSelection::Primary {}),
"Index" =>
::core::option::Option::Some(MonitorSelection::Index {
0: {
let __0 = __param0.field_at(0usize);
let __0 = __0?;
<usize as bevy_reflect::FromReflect>::from_reflect(__0)?
},
}),
"Entity" =>
::core::option::Option::Some(MonitorSelection::Entity {
0: {
let __0 = __param0.field_at(0usize);
let __0 = __0?;
<Entity as bevy_reflect::FromReflect>::from_reflect(__0)?
},
}),
name => ::core::option::Option::None,
}
} else { ::core::option::Option::None }
}
}
};Reflect),
1148 reflect(Debug, PartialEq, Clone)
1149)]
1150#[cfg_attr(feature = "serialize", derive(#[doc(hidden)]
#[allow(non_upper_case_globals, unused_attributes, unused_qualifications,
clippy :: absolute_paths,)]
const _: () =
{
#[allow(unused_extern_crates, clippy :: useless_attribute)]
extern crate serde as _serde;
;
#[automatically_derived]
impl _serde::Serialize for MonitorSelection {
fn serialize<__S>(&self, __serializer: __S)
-> _serde::__private228::Result<__S::Ok, __S::Error> where
__S: _serde::Serializer {
match *self {
MonitorSelection::Current =>
_serde::Serializer::serialize_unit_variant(__serializer,
"MonitorSelection", 0u32, "Current"),
MonitorSelection::Primary =>
_serde::Serializer::serialize_unit_variant(__serializer,
"MonitorSelection", 1u32, "Primary"),
MonitorSelection::Index(ref __field0) =>
_serde::Serializer::serialize_newtype_variant(__serializer,
"MonitorSelection", 2u32, "Index", __field0),
MonitorSelection::Entity(ref __field0) =>
_serde::Serializer::serialize_newtype_variant(__serializer,
"MonitorSelection", 3u32, "Entity", __field0),
}
}
}
};serde::Serialize, #[doc(hidden)]
#[allow(non_upper_case_globals, unused_attributes, unused_qualifications,
clippy :: absolute_paths,)]
const _: () =
{
#[allow(unused_extern_crates, clippy :: useless_attribute)]
extern crate serde as _serde;
;
#[automatically_derived]
impl<'de> _serde::Deserialize<'de> for MonitorSelection {
fn deserialize<__D>(__deserializer: __D)
-> _serde::__private228::Result<Self, __D::Error> where
__D: _serde::Deserializer<'de> {
#[allow(non_camel_case_types)]
#[doc(hidden)]
enum __Field { __field0, __field1, __field2, __field3, }
#[doc(hidden)]
struct __FieldVisitor;
#[automatically_derived]
impl<'de> _serde::de::Visitor<'de> for __FieldVisitor {
type Value = __Field;
fn expecting(&self,
__formatter: &mut _serde::__private228::Formatter)
-> _serde::__private228::fmt::Result {
_serde::__private228::Formatter::write_str(__formatter,
"variant identifier")
}
fn visit_u64<__E>(self, __value: u64)
-> _serde::__private228::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
0u64 => _serde::__private228::Ok(__Field::__field0),
1u64 => _serde::__private228::Ok(__Field::__field1),
2u64 => _serde::__private228::Ok(__Field::__field2),
3u64 => _serde::__private228::Ok(__Field::__field3),
_ =>
_serde::__private228::Err(_serde::de::Error::invalid_value(_serde::de::Unexpected::Unsigned(__value),
&"variant index 0 <= i < 4")),
}
}
fn visit_str<__E>(self, __value: &str)
-> _serde::__private228::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
"Current" => _serde::__private228::Ok(__Field::__field0),
"Primary" => _serde::__private228::Ok(__Field::__field1),
"Index" => _serde::__private228::Ok(__Field::__field2),
"Entity" => _serde::__private228::Ok(__Field::__field3),
_ => {
_serde::__private228::Err(_serde::de::Error::unknown_variant(__value,
VARIANTS))
}
}
}
fn visit_bytes<__E>(self, __value: &[u8])
-> _serde::__private228::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
b"Current" => _serde::__private228::Ok(__Field::__field0),
b"Primary" => _serde::__private228::Ok(__Field::__field1),
b"Index" => _serde::__private228::Ok(__Field::__field2),
b"Entity" => _serde::__private228::Ok(__Field::__field3),
_ => {
let __value =
&_serde::__private228::from_utf8_lossy(__value);
_serde::__private228::Err(_serde::de::Error::unknown_variant(__value,
VARIANTS))
}
}
}
}
#[automatically_derived]
impl<'de> _serde::Deserialize<'de> for __Field {
#[inline]
fn deserialize<__D>(__deserializer: __D)
-> _serde::__private228::Result<Self, __D::Error> where
__D: _serde::Deserializer<'de> {
_serde::Deserializer::deserialize_identifier(__deserializer,
__FieldVisitor)
}
}
#[doc(hidden)]
struct __Visitor<'de> {
marker: _serde::__private228::PhantomData<MonitorSelection>,
lifetime: _serde::__private228::PhantomData<&'de ()>,
}
#[automatically_derived]
impl<'de> _serde::de::Visitor<'de> for __Visitor<'de> {
type Value = MonitorSelection;
fn expecting(&self,
__formatter: &mut _serde::__private228::Formatter)
-> _serde::__private228::fmt::Result {
_serde::__private228::Formatter::write_str(__formatter,
"enum MonitorSelection")
}
fn visit_enum<__A>(self, __data: __A)
-> _serde::__private228::Result<Self::Value, __A::Error>
where __A: _serde::de::EnumAccess<'de> {
match _serde::de::EnumAccess::variant(__data)? {
(__Field::__field0, __variant) => {
_serde::de::VariantAccess::unit_variant(__variant)?;
_serde::__private228::Ok(MonitorSelection::Current)
}
(__Field::__field1, __variant) => {
_serde::de::VariantAccess::unit_variant(__variant)?;
_serde::__private228::Ok(MonitorSelection::Primary)
}
(__Field::__field2, __variant) =>
_serde::__private228::Result::map(_serde::de::VariantAccess::newtype_variant::<usize>(__variant),
MonitorSelection::Index),
(__Field::__field3, __variant) =>
_serde::__private228::Result::map(_serde::de::VariantAccess::newtype_variant::<Entity>(__variant),
MonitorSelection::Entity),
}
}
}
#[doc(hidden)]
const VARIANTS: &'static [&'static str] =
&["Current", "Primary", "Index", "Entity"];
_serde::Deserializer::deserialize_enum(__deserializer,
"MonitorSelection", VARIANTS,
__Visitor {
marker: _serde::__private228::PhantomData::<MonitorSelection>,
lifetime: _serde::__private228::PhantomData,
})
}
}
};serde::Deserialize))]
1151#[cfg_attr(
1152 all(feature = "serialize", feature = "bevy_reflect"),
1153 reflect(Serialize, Deserialize)
1154)]
1155pub enum MonitorSelection {
1156 Current,
1161 Primary,
1163 Index(usize),
1165 Entity(Entity),
1167}
1168
1169#[derive(#[automatically_derived]
impl ::core::fmt::Debug for VideoModeSelection {
#[inline]
fn fmt(&self, f: &mut ::core::fmt::Formatter) -> ::core::fmt::Result {
match self {
VideoModeSelection::Current =>
::core::fmt::Formatter::write_str(f, "Current"),
VideoModeSelection::Specific(__self_0) =>
::core::fmt::Formatter::debug_tuple_field1_finish(f,
"Specific", &__self_0),
}
}
}Debug, #[automatically_derived]
impl ::core::clone::Clone for VideoModeSelection {
#[inline]
fn clone(&self) -> VideoModeSelection {
let _: ::core::clone::AssertParamIsClone<VideoMode>;
*self
}
}Clone, #[automatically_derived]
impl ::core::marker::Copy for VideoModeSelection { }Copy, #[automatically_derived]
impl ::core::cmp::PartialEq for VideoModeSelection {
#[inline]
fn eq(&self, other: &VideoModeSelection) -> bool {
let __self_discr = ::core::intrinsics::discriminant_value(self);
let __arg1_discr = ::core::intrinsics::discriminant_value(other);
__self_discr == __arg1_discr &&
match (self, other) {
(VideoModeSelection::Specific(__self_0),
VideoModeSelection::Specific(__arg1_0)) =>
__self_0 == __arg1_0,
_ => true,
}
}
}PartialEq, #[automatically_derived]
impl ::core::cmp::Eq for VideoModeSelection {
#[inline]
#[doc(hidden)]
#[coverage(off)]
fn assert_fields_are_eq(&self) {
let _: ::core::cmp::AssertParamIsEq<VideoMode>;
}
}Eq)]
1173#[cfg_attr(
1174 feature = "bevy_reflect",
1175 derive(const _: () =
{
impl bevy_reflect::GetTypeRegistration for VideoModeSelection where {
fn get_type_registration() -> bevy_reflect::TypeRegistration {
let mut registration =
bevy_reflect::TypeRegistration::of::<Self>();
registration.insert::<bevy_reflect::ReflectFromPtr>(bevy_reflect::FromType::<Self>::from_type());
registration.insert::<bevy_reflect::ReflectFromReflect>(bevy_reflect::FromType::<Self>::from_type());
registration.register_type_data::<ReflectSerialize, Self>();
registration.register_type_data::<ReflectDeserialize, Self>();
registration
}
#[inline(never)]
fn register_type_dependencies(registry:
&mut bevy_reflect::TypeRegistry) {
<VideoMode as
bevy_reflect::__macro_exports::RegisterForReflection>::__register(registry);
}
}
impl bevy_reflect::Typed for VideoModeSelection where {
#[inline]
fn type_info() -> &'static bevy_reflect::TypeInfo {
static CELL: bevy_reflect::utility::NonGenericTypeInfoCell =
bevy_reflect::utility::NonGenericTypeInfoCell::new();
CELL.get_or_set(||
{
bevy_reflect::TypeInfo::Enum(bevy_reflect::enums::EnumInfo::new::<Self>(&[bevy_reflect::enums::VariantInfo::Unit(bevy_reflect::enums::UnitVariantInfo::new("Current")),
bevy_reflect::enums::VariantInfo::Tuple(bevy_reflect::enums::TupleVariantInfo::new("Specific",
&[bevy_reflect::UnnamedField::new::<VideoMode>(0usize)]))]))
})
}
}
#[allow(deprecated, reason =
"derives on a deprecated type shouldn't be considered a usage")]
impl bevy_reflect::TypePath for VideoModeSelection where {
fn type_path() -> &'static str {
"bevy_window::window::VideoModeSelection"
}
fn short_type_path() -> &'static str { "VideoModeSelection" }
fn type_ident() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("VideoModeSelection")
}
fn crate_name() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("bevy_window::window".split(':').next().unwrap())
}
fn module_path() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("bevy_window::window")
}
}
impl bevy_reflect::Reflect for VideoModeSelection where {
#[inline]
fn into_any(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn ::core::any::Any> {
self
}
#[inline]
fn as_any(&self) -> &dyn ::core::any::Any { self }
#[inline]
fn as_any_mut(&mut self) -> &mut dyn ::core::any::Any { self }
#[inline]
fn into_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect> {
self
}
#[inline]
fn as_reflect(&self) -> &dyn bevy_reflect::Reflect { self }
#[inline]
fn as_reflect_mut(&mut self) -> &mut dyn bevy_reflect::Reflect {
self
}
#[inline]
fn set(&mut self,
value:
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>)
->
::core::result::Result<(),
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>> {
*self = <dyn bevy_reflect::Reflect>::take(value)?;
::core::result::Result::Ok(())
}
}
#[allow(non_upper_case_globals)]
const _: () =
{
static __INVENTORY: ::inventory::Node =
::inventory::Node {
value: &{
bevy_reflect::__macro_exports::auto_register::AutomaticReflectRegistrations(<VideoModeSelection
as
bevy_reflect::__macro_exports::auto_register::RegisterForReflection>::__register)
},
next: ::inventory::__private::UnsafeCell::new(::inventory::__private::Option::None),
};
#[link_section = ".text.startup"]
unsafe extern "C" fn __ctor() {
unsafe {
::inventory::ErasedNode::submit(__INVENTORY.value,
&__INVENTORY)
}
}
#[used]
#[link_section = ".init_array"]
static __CTOR: unsafe extern "C" fn() = __ctor;
};
impl bevy_reflect::enums::Enum for VideoModeSelection where {
fn field(&self, __name_param: &str)
-> ::core::option::Option<&dyn bevy_reflect::PartialReflect> {
match self { _ => ::core::option::Option::None, }
}
fn field_at(&self, __index_param: usize)
-> ::core::option::Option<&dyn bevy_reflect::PartialReflect> {
match self {
VideoModeSelection::Specific { 0: __value, .. } if
__index_param == 0usize =>
::core::option::Option::Some(__value),
_ => ::core::option::Option::None,
}
}
fn field_mut(&mut self, __name_param: &str)
->
::core::option::Option<&mut dyn bevy_reflect::PartialReflect> {
match self { _ => ::core::option::Option::None, }
}
fn field_at_mut(&mut self, __index_param: usize)
->
::core::option::Option<&mut dyn bevy_reflect::PartialReflect> {
match self {
VideoModeSelection::Specific { 0: __value, .. } if
__index_param == 0usize =>
::core::option::Option::Some(__value),
_ => ::core::option::Option::None,
}
}
fn index_of(&self, __name_param: &str)
-> ::core::option::Option<usize> {
match self { _ => ::core::option::Option::None, }
}
fn name_at(&self, __index_param: usize)
-> ::core::option::Option<&str> {
match self { _ => ::core::option::Option::None, }
}
fn iter_fields(&self) -> bevy_reflect::enums::VariantFieldIter {
bevy_reflect::enums::VariantFieldIter::new(self)
}
#[inline]
fn field_len(&self) -> usize {
match self {
VideoModeSelection::Current { .. } => 0usize,
VideoModeSelection::Specific { .. } => 1usize,
_ => 0,
}
}
#[inline]
fn variant_name(&self) -> &str {
match self {
VideoModeSelection::Current { .. } => "Current",
VideoModeSelection::Specific { .. } => "Specific",
_ =>
::core::panicking::panic("internal error: entered unreachable code"),
}
}
#[inline]
fn variant_index(&self) -> usize {
match self {
VideoModeSelection::Current { .. } => 0usize,
VideoModeSelection::Specific { .. } => 1usize,
_ =>
::core::panicking::panic("internal error: entered unreachable code"),
}
}
#[inline]
fn variant_type(&self) -> bevy_reflect::enums::VariantType {
match self {
VideoModeSelection::Current { .. } =>
bevy_reflect::enums::VariantType::Unit,
VideoModeSelection::Specific { .. } =>
bevy_reflect::enums::VariantType::Tuple,
_ =>
::core::panicking::panic("internal error: entered unreachable code"),
}
}
fn to_dynamic_enum(&self) -> bevy_reflect::enums::DynamicEnum {
bevy_reflect::enums::DynamicEnum::from_ref::<Self>(self)
}
}
impl bevy_reflect::PartialReflect for VideoModeSelection where {
#[inline]
fn get_represented_type_info(&self)
-> ::core::option::Option<&'static bevy_reflect::TypeInfo> {
::core::option::Option::Some(<Self as
bevy_reflect::Typed>::type_info())
}
#[inline]
fn try_apply(&mut self,
__value_param: &dyn bevy_reflect::PartialReflect)
-> ::core::result::Result<(), bevy_reflect::ApplyError> {
if let bevy_reflect::ReflectRef::Enum(__value_param) =
bevy_reflect::PartialReflect::reflect_ref(__value_param) {
if bevy_reflect::enums::Enum::variant_name(self) ==
bevy_reflect::enums::Enum::variant_name(__value_param) {
match bevy_reflect::enums::Enum::variant_type(__value_param)
{
bevy_reflect::enums::VariantType::Struct => {
for field in
bevy_reflect::enums::Enum::iter_fields(__value_param) {
let name = field.name().unwrap();
if let ::core::option::Option::Some(v) =
bevy_reflect::enums::Enum::field_mut(self, name) {
bevy_reflect::PartialReflect::try_apply(v, field.value())?;
}
}
}
bevy_reflect::enums::VariantType::Tuple => {
for (index, field) in
::core::iter::Iterator::enumerate(bevy_reflect::enums::Enum::iter_fields(__value_param))
{
if let ::core::option::Option::Some(v) =
bevy_reflect::enums::Enum::field_at_mut(self, index) {
bevy_reflect::PartialReflect::try_apply(v, field.value())?;
}
}
}
_ => {}
}
} else {
match bevy_reflect::enums::Enum::variant_name(__value_param)
{
"Current" => { *self = VideoModeSelection::Current {} }
"Specific" => {
*self =
VideoModeSelection::Specific {
0: {
let __0 = __value_param.field_at(0usize);
let __0 =
__0.ok_or(bevy_reflect::ApplyError::MissingEnumField {
variant_name: ::core::convert::Into::into("Specific"),
field_name: ::core::convert::Into::into(".0"),
})?;
<VideoMode as
bevy_reflect::FromReflect>::from_reflect(__0).ok_or(bevy_reflect::ApplyError::MismatchedTypes {
from_type: ::core::convert::Into::into(bevy_reflect::DynamicTypePath::reflect_type_path(__0)),
to_type: ::core::convert::Into::into(<VideoMode as
bevy_reflect::TypePath>::type_path()),
})?
},
}
}
name => {
return ::core::result::Result::Err(bevy_reflect::ApplyError::UnknownVariant {
enum_name: ::core::convert::Into::into(bevy_reflect::DynamicTypePath::reflect_type_path(self)),
variant_name: ::core::convert::Into::into(name),
});
}
}
}
} else {
return ::core::result::Result::Err(bevy_reflect::ApplyError::MismatchedKinds {
from_kind: bevy_reflect::PartialReflect::reflect_kind(__value_param),
to_kind: bevy_reflect::ReflectKind::Enum,
});
}
::core::result::Result::Ok(())
}
fn reflect_kind(&self) -> bevy_reflect::ReflectKind {
bevy_reflect::ReflectKind::Enum
}
fn reflect_ref(&self) -> bevy_reflect::ReflectRef {
bevy_reflect::ReflectRef::Enum(self)
}
fn reflect_mut(&mut self) -> bevy_reflect::ReflectMut {
bevy_reflect::ReflectMut::Enum(self)
}
fn reflect_owned(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
-> bevy_reflect::ReflectOwned {
bevy_reflect::ReflectOwned::Enum(self)
}
#[inline]
fn try_into_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
::core::result::Result<bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>,
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::PartialReflect>> {
::core::result::Result::Ok(self)
}
#[inline]
fn try_as_reflect(&self)
-> ::core::option::Option<&dyn bevy_reflect::Reflect> {
::core::option::Option::Some(self)
}
#[inline]
fn try_as_reflect_mut(&mut self)
-> ::core::option::Option<&mut dyn bevy_reflect::Reflect> {
::core::option::Option::Some(self)
}
#[inline]
fn into_partial_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::PartialReflect> {
self
}
#[inline]
fn as_partial_reflect(&self)
-> &dyn bevy_reflect::PartialReflect {
self
}
#[inline]
fn as_partial_reflect_mut(&mut self)
-> &mut dyn bevy_reflect::PartialReflect {
self
}
fn reflect_hash(&self) -> ::core::option::Option<u64> {
(bevy_reflect::enums::enum_hash)(self)
}
fn reflect_partial_eq(&self,
value: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<bool> {
let value =
<dyn bevy_reflect::PartialReflect>::try_downcast_ref::<Self>(value);
if let ::core::option::Option::Some(value) = value {
::core::option::Option::Some(::core::cmp::PartialEq::eq(self,
value))
} else { ::core::option::Option::Some(false) }
}
fn reflect_partial_cmp(&self,
value: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<::core::cmp::Ordering> {
(bevy_reflect::enums::enum_partial_cmp)(self, value)
}
fn debug(&self, f: &mut ::core::fmt::Formatter<'_>)
-> ::core::fmt::Result {
::core::fmt::Debug::fmt(self, f)
}
#[inline]
fn reflect_clone(&self)
->
::core::result::Result<bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>,
bevy_reflect::ReflectCloneError> {
::core::result::Result::Ok(bevy_reflect::__macro_exports::alloc_utils::Box::new(::core::clone::Clone::clone(self)))
}
}
impl bevy_reflect::FromReflect for VideoModeSelection where {
fn from_reflect(__param0: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<Self> {
if let bevy_reflect::ReflectRef::Enum(__param0) =
bevy_reflect::PartialReflect::reflect_ref(__param0) {
match bevy_reflect::enums::Enum::variant_name(__param0) {
"Current" =>
::core::option::Option::Some(VideoModeSelection::Current {}),
"Specific" =>
::core::option::Option::Some(VideoModeSelection::Specific {
0: {
let __0 = __param0.field_at(0usize);
let __0 = __0?;
<VideoMode as bevy_reflect::FromReflect>::from_reflect(__0)?
},
}),
name => ::core::option::Option::None,
}
} else { ::core::option::Option::None }
}
}
};Reflect),
1176 reflect(Debug, PartialEq, Clone)
1177)]
1178#[cfg_attr(feature = "serialize", derive(#[doc(hidden)]
#[allow(non_upper_case_globals, unused_attributes, unused_qualifications,
clippy :: absolute_paths,)]
const _: () =
{
#[allow(unused_extern_crates, clippy :: useless_attribute)]
extern crate serde as _serde;
;
#[automatically_derived]
impl _serde::Serialize for VideoModeSelection {
fn serialize<__S>(&self, __serializer: __S)
-> _serde::__private228::Result<__S::Ok, __S::Error> where
__S: _serde::Serializer {
match *self {
VideoModeSelection::Current =>
_serde::Serializer::serialize_unit_variant(__serializer,
"VideoModeSelection", 0u32, "Current"),
VideoModeSelection::Specific(ref __field0) =>
_serde::Serializer::serialize_newtype_variant(__serializer,
"VideoModeSelection", 1u32, "Specific", __field0),
}
}
}
};serde::Serialize, #[doc(hidden)]
#[allow(non_upper_case_globals, unused_attributes, unused_qualifications,
clippy :: absolute_paths,)]
const _: () =
{
#[allow(unused_extern_crates, clippy :: useless_attribute)]
extern crate serde as _serde;
;
#[automatically_derived]
impl<'de> _serde::Deserialize<'de> for VideoModeSelection {
fn deserialize<__D>(__deserializer: __D)
-> _serde::__private228::Result<Self, __D::Error> where
__D: _serde::Deserializer<'de> {
#[allow(non_camel_case_types)]
#[doc(hidden)]
enum __Field { __field0, __field1, }
#[doc(hidden)]
struct __FieldVisitor;
#[automatically_derived]
impl<'de> _serde::de::Visitor<'de> for __FieldVisitor {
type Value = __Field;
fn expecting(&self,
__formatter: &mut _serde::__private228::Formatter)
-> _serde::__private228::fmt::Result {
_serde::__private228::Formatter::write_str(__formatter,
"variant identifier")
}
fn visit_u64<__E>(self, __value: u64)
-> _serde::__private228::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
0u64 => _serde::__private228::Ok(__Field::__field0),
1u64 => _serde::__private228::Ok(__Field::__field1),
_ =>
_serde::__private228::Err(_serde::de::Error::invalid_value(_serde::de::Unexpected::Unsigned(__value),
&"variant index 0 <= i < 2")),
}
}
fn visit_str<__E>(self, __value: &str)
-> _serde::__private228::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
"Current" => _serde::__private228::Ok(__Field::__field0),
"Specific" => _serde::__private228::Ok(__Field::__field1),
_ => {
_serde::__private228::Err(_serde::de::Error::unknown_variant(__value,
VARIANTS))
}
}
}
fn visit_bytes<__E>(self, __value: &[u8])
-> _serde::__private228::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
b"Current" => _serde::__private228::Ok(__Field::__field0),
b"Specific" => _serde::__private228::Ok(__Field::__field1),
_ => {
let __value =
&_serde::__private228::from_utf8_lossy(__value);
_serde::__private228::Err(_serde::de::Error::unknown_variant(__value,
VARIANTS))
}
}
}
}
#[automatically_derived]
impl<'de> _serde::Deserialize<'de> for __Field {
#[inline]
fn deserialize<__D>(__deserializer: __D)
-> _serde::__private228::Result<Self, __D::Error> where
__D: _serde::Deserializer<'de> {
_serde::Deserializer::deserialize_identifier(__deserializer,
__FieldVisitor)
}
}
#[doc(hidden)]
struct __Visitor<'de> {
marker: _serde::__private228::PhantomData<VideoModeSelection>,
lifetime: _serde::__private228::PhantomData<&'de ()>,
}
#[automatically_derived]
impl<'de> _serde::de::Visitor<'de> for __Visitor<'de> {
type Value = VideoModeSelection;
fn expecting(&self,
__formatter: &mut _serde::__private228::Formatter)
-> _serde::__private228::fmt::Result {
_serde::__private228::Formatter::write_str(__formatter,
"enum VideoModeSelection")
}
fn visit_enum<__A>(self, __data: __A)
-> _serde::__private228::Result<Self::Value, __A::Error>
where __A: _serde::de::EnumAccess<'de> {
match _serde::de::EnumAccess::variant(__data)? {
(__Field::__field0, __variant) => {
_serde::de::VariantAccess::unit_variant(__variant)?;
_serde::__private228::Ok(VideoModeSelection::Current)
}
(__Field::__field1, __variant) =>
_serde::__private228::Result::map(_serde::de::VariantAccess::newtype_variant::<VideoMode>(__variant),
VideoModeSelection::Specific),
}
}
}
#[doc(hidden)]
const VARIANTS: &'static [&'static str] =
&["Current", "Specific"];
_serde::Deserializer::deserialize_enum(__deserializer,
"VideoModeSelection", VARIANTS,
__Visitor {
marker: _serde::__private228::PhantomData::<VideoModeSelection>,
lifetime: _serde::__private228::PhantomData,
})
}
}
};serde::Deserialize))]
1179#[cfg_attr(
1180 all(feature = "serialize", feature = "bevy_reflect"),
1181 reflect(Serialize, Deserialize)
1182)]
1183pub enum VideoModeSelection {
1184 Current,
1186 Specific(VideoMode),
1189}
1190
1191#[repr(C)]
1211#[derive(#[automatically_derived]
impl ::core::default::Default for PresentMode {
#[inline]
fn default() -> PresentMode { Self::Fifo }
}Default, #[automatically_derived]
impl ::core::marker::Copy for PresentMode { }Copy, #[automatically_derived]
impl ::core::clone::Clone for PresentMode {
#[inline]
fn clone(&self) -> PresentMode { *self }
}Clone, #[automatically_derived]
impl ::core::fmt::Debug for PresentMode {
#[inline]
fn fmt(&self, f: &mut ::core::fmt::Formatter) -> ::core::fmt::Result {
::core::fmt::Formatter::write_str(f,
match self {
PresentMode::AutoVsync => "AutoVsync",
PresentMode::AutoNoVsync => "AutoNoVsync",
PresentMode::Fifo => "Fifo",
PresentMode::FifoRelaxed => "FifoRelaxed",
PresentMode::Immediate => "Immediate",
PresentMode::Mailbox => "Mailbox",
})
}
}Debug, #[automatically_derived]
impl ::core::cmp::PartialEq for PresentMode {
#[inline]
fn eq(&self, other: &PresentMode) -> bool {
let __self_discr = ::core::intrinsics::discriminant_value(self);
let __arg1_discr = ::core::intrinsics::discriminant_value(other);
__self_discr == __arg1_discr
}
}PartialEq, #[automatically_derived]
impl ::core::cmp::Eq for PresentMode {
#[inline]
#[doc(hidden)]
#[coverage(off)]
fn assert_fields_are_eq(&self) {}
}Eq, #[automatically_derived]
impl ::core::hash::Hash for PresentMode {
#[inline]
fn hash<__H: ::core::hash::Hasher>(&self, state: &mut __H) {
let __self_discr = ::core::intrinsics::discriminant_value(self);
::core::hash::Hash::hash(&__self_discr, state)
}
}Hash)]
1212#[cfg_attr(
1213 feature = "bevy_reflect",
1214 derive(const _: () =
{
impl bevy_reflect::GetTypeRegistration for PresentMode where {
fn get_type_registration() -> bevy_reflect::TypeRegistration {
let mut registration =
bevy_reflect::TypeRegistration::of::<Self>();
registration.insert::<bevy_reflect::ReflectFromPtr>(bevy_reflect::FromType::<Self>::from_type());
registration.insert::<bevy_reflect::ReflectFromReflect>(bevy_reflect::FromType::<Self>::from_type());
registration.register_type_data::<ReflectSerialize, Self>();
registration.register_type_data::<ReflectDeserialize, Self>();
registration
}
#[inline(never)]
fn register_type_dependencies(registry:
&mut bevy_reflect::TypeRegistry) {}
}
impl bevy_reflect::Typed for PresentMode where {
#[inline]
fn type_info() -> &'static bevy_reflect::TypeInfo {
static CELL: bevy_reflect::utility::NonGenericTypeInfoCell =
bevy_reflect::utility::NonGenericTypeInfoCell::new();
CELL.get_or_set(||
{
bevy_reflect::TypeInfo::Enum(bevy_reflect::enums::EnumInfo::new::<Self>(&[bevy_reflect::enums::VariantInfo::Unit(bevy_reflect::enums::UnitVariantInfo::new("AutoVsync")),
bevy_reflect::enums::VariantInfo::Unit(bevy_reflect::enums::UnitVariantInfo::new("AutoNoVsync")),
bevy_reflect::enums::VariantInfo::Unit(bevy_reflect::enums::UnitVariantInfo::new("Fifo")),
bevy_reflect::enums::VariantInfo::Unit(bevy_reflect::enums::UnitVariantInfo::new("FifoRelaxed")),
bevy_reflect::enums::VariantInfo::Unit(bevy_reflect::enums::UnitVariantInfo::new("Immediate")),
bevy_reflect::enums::VariantInfo::Unit(bevy_reflect::enums::UnitVariantInfo::new("Mailbox"))]))
})
}
}
#[allow(deprecated, reason =
"derives on a deprecated type shouldn't be considered a usage")]
impl bevy_reflect::TypePath for PresentMode where {
fn type_path() -> &'static str {
"bevy_window::window::PresentMode"
}
fn short_type_path() -> &'static str { "PresentMode" }
fn type_ident() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("PresentMode")
}
fn crate_name() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("bevy_window::window".split(':').next().unwrap())
}
fn module_path() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("bevy_window::window")
}
}
impl bevy_reflect::Reflect for PresentMode where {
#[inline]
fn into_any(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn ::core::any::Any> {
self
}
#[inline]
fn as_any(&self) -> &dyn ::core::any::Any { self }
#[inline]
fn as_any_mut(&mut self) -> &mut dyn ::core::any::Any { self }
#[inline]
fn into_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect> {
self
}
#[inline]
fn as_reflect(&self) -> &dyn bevy_reflect::Reflect { self }
#[inline]
fn as_reflect_mut(&mut self) -> &mut dyn bevy_reflect::Reflect {
self
}
#[inline]
fn set(&mut self,
value:
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>)
->
::core::result::Result<(),
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>> {
*self = <dyn bevy_reflect::Reflect>::take(value)?;
::core::result::Result::Ok(())
}
}
#[allow(non_upper_case_globals)]
const _: () =
{
static __INVENTORY: ::inventory::Node =
::inventory::Node {
value: &{
bevy_reflect::__macro_exports::auto_register::AutomaticReflectRegistrations(<PresentMode
as
bevy_reflect::__macro_exports::auto_register::RegisterForReflection>::__register)
},
next: ::inventory::__private::UnsafeCell::new(::inventory::__private::Option::None),
};
#[link_section = ".text.startup"]
unsafe extern "C" fn __ctor() {
unsafe {
::inventory::ErasedNode::submit(__INVENTORY.value,
&__INVENTORY)
}
}
#[used]
#[link_section = ".init_array"]
static __CTOR: unsafe extern "C" fn() = __ctor;
};
impl bevy_reflect::enums::Enum for PresentMode where {
fn field(&self, __name_param: &str)
-> ::core::option::Option<&dyn bevy_reflect::PartialReflect> {
match self { _ => ::core::option::Option::None, }
}
fn field_at(&self, __index_param: usize)
-> ::core::option::Option<&dyn bevy_reflect::PartialReflect> {
match self { _ => ::core::option::Option::None, }
}
fn field_mut(&mut self, __name_param: &str)
->
::core::option::Option<&mut dyn bevy_reflect::PartialReflect> {
match self { _ => ::core::option::Option::None, }
}
fn field_at_mut(&mut self, __index_param: usize)
->
::core::option::Option<&mut dyn bevy_reflect::PartialReflect> {
match self { _ => ::core::option::Option::None, }
}
fn index_of(&self, __name_param: &str)
-> ::core::option::Option<usize> {
match self { _ => ::core::option::Option::None, }
}
fn name_at(&self, __index_param: usize)
-> ::core::option::Option<&str> {
match self { _ => ::core::option::Option::None, }
}
fn iter_fields(&self) -> bevy_reflect::enums::VariantFieldIter {
bevy_reflect::enums::VariantFieldIter::new(self)
}
#[inline]
fn field_len(&self) -> usize {
match self {
PresentMode::AutoVsync { .. } => 0usize,
PresentMode::AutoNoVsync { .. } => 0usize,
PresentMode::Fifo { .. } => 0usize,
PresentMode::FifoRelaxed { .. } => 0usize,
PresentMode::Immediate { .. } => 0usize,
PresentMode::Mailbox { .. } => 0usize,
_ => 0,
}
}
#[inline]
fn variant_name(&self) -> &str {
match self {
PresentMode::AutoVsync { .. } => "AutoVsync",
PresentMode::AutoNoVsync { .. } => "AutoNoVsync",
PresentMode::Fifo { .. } => "Fifo",
PresentMode::FifoRelaxed { .. } => "FifoRelaxed",
PresentMode::Immediate { .. } => "Immediate",
PresentMode::Mailbox { .. } => "Mailbox",
_ =>
::core::panicking::panic("internal error: entered unreachable code"),
}
}
#[inline]
fn variant_index(&self) -> usize {
match self {
PresentMode::AutoVsync { .. } => 0usize,
PresentMode::AutoNoVsync { .. } => 1usize,
PresentMode::Fifo { .. } => 2usize,
PresentMode::FifoRelaxed { .. } => 3usize,
PresentMode::Immediate { .. } => 4usize,
PresentMode::Mailbox { .. } => 5usize,
_ =>
::core::panicking::panic("internal error: entered unreachable code"),
}
}
#[inline]
fn variant_type(&self) -> bevy_reflect::enums::VariantType {
match self {
PresentMode::AutoVsync { .. } =>
bevy_reflect::enums::VariantType::Unit,
PresentMode::AutoNoVsync { .. } =>
bevy_reflect::enums::VariantType::Unit,
PresentMode::Fifo { .. } =>
bevy_reflect::enums::VariantType::Unit,
PresentMode::FifoRelaxed { .. } =>
bevy_reflect::enums::VariantType::Unit,
PresentMode::Immediate { .. } =>
bevy_reflect::enums::VariantType::Unit,
PresentMode::Mailbox { .. } =>
bevy_reflect::enums::VariantType::Unit,
_ =>
::core::panicking::panic("internal error: entered unreachable code"),
}
}
fn to_dynamic_enum(&self) -> bevy_reflect::enums::DynamicEnum {
bevy_reflect::enums::DynamicEnum::from_ref::<Self>(self)
}
}
impl bevy_reflect::PartialReflect for PresentMode where {
#[inline]
fn get_represented_type_info(&self)
-> ::core::option::Option<&'static bevy_reflect::TypeInfo> {
::core::option::Option::Some(<Self as
bevy_reflect::Typed>::type_info())
}
#[inline]
fn try_apply(&mut self,
__value_param: &dyn bevy_reflect::PartialReflect)
-> ::core::result::Result<(), bevy_reflect::ApplyError> {
if let bevy_reflect::ReflectRef::Enum(__value_param) =
bevy_reflect::PartialReflect::reflect_ref(__value_param) {
if bevy_reflect::enums::Enum::variant_name(self) ==
bevy_reflect::enums::Enum::variant_name(__value_param) {
match bevy_reflect::enums::Enum::variant_type(__value_param)
{
bevy_reflect::enums::VariantType::Struct => {
for field in
bevy_reflect::enums::Enum::iter_fields(__value_param) {
let name = field.name().unwrap();
if let ::core::option::Option::Some(v) =
bevy_reflect::enums::Enum::field_mut(self, name) {
bevy_reflect::PartialReflect::try_apply(v, field.value())?;
}
}
}
bevy_reflect::enums::VariantType::Tuple => {
for (index, field) in
::core::iter::Iterator::enumerate(bevy_reflect::enums::Enum::iter_fields(__value_param))
{
if let ::core::option::Option::Some(v) =
bevy_reflect::enums::Enum::field_at_mut(self, index) {
bevy_reflect::PartialReflect::try_apply(v, field.value())?;
}
}
}
_ => {}
}
} else {
match bevy_reflect::enums::Enum::variant_name(__value_param)
{
"AutoVsync" => { *self = PresentMode::AutoVsync {} }
"AutoNoVsync" => { *self = PresentMode::AutoNoVsync {} }
"Fifo" => { *self = PresentMode::Fifo {} }
"FifoRelaxed" => { *self = PresentMode::FifoRelaxed {} }
"Immediate" => { *self = PresentMode::Immediate {} }
"Mailbox" => { *self = PresentMode::Mailbox {} }
name => {
return ::core::result::Result::Err(bevy_reflect::ApplyError::UnknownVariant {
enum_name: ::core::convert::Into::into(bevy_reflect::DynamicTypePath::reflect_type_path(self)),
variant_name: ::core::convert::Into::into(name),
});
}
}
}
} else {
return ::core::result::Result::Err(bevy_reflect::ApplyError::MismatchedKinds {
from_kind: bevy_reflect::PartialReflect::reflect_kind(__value_param),
to_kind: bevy_reflect::ReflectKind::Enum,
});
}
::core::result::Result::Ok(())
}
fn reflect_kind(&self) -> bevy_reflect::ReflectKind {
bevy_reflect::ReflectKind::Enum
}
fn reflect_ref(&self) -> bevy_reflect::ReflectRef {
bevy_reflect::ReflectRef::Enum(self)
}
fn reflect_mut(&mut self) -> bevy_reflect::ReflectMut {
bevy_reflect::ReflectMut::Enum(self)
}
fn reflect_owned(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
-> bevy_reflect::ReflectOwned {
bevy_reflect::ReflectOwned::Enum(self)
}
#[inline]
fn try_into_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
::core::result::Result<bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>,
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::PartialReflect>> {
::core::result::Result::Ok(self)
}
#[inline]
fn try_as_reflect(&self)
-> ::core::option::Option<&dyn bevy_reflect::Reflect> {
::core::option::Option::Some(self)
}
#[inline]
fn try_as_reflect_mut(&mut self)
-> ::core::option::Option<&mut dyn bevy_reflect::Reflect> {
::core::option::Option::Some(self)
}
#[inline]
fn into_partial_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::PartialReflect> {
self
}
#[inline]
fn as_partial_reflect(&self)
-> &dyn bevy_reflect::PartialReflect {
self
}
#[inline]
fn as_partial_reflect_mut(&mut self)
-> &mut dyn bevy_reflect::PartialReflect {
self
}
fn reflect_hash(&self) -> ::core::option::Option<u64> {
use ::core::hash::{Hash, Hasher};
let mut hasher = bevy_reflect::utility::reflect_hasher();
Hash::hash(&::core::any::Any::type_id(self), &mut hasher);
Hash::hash(self, &mut hasher);
::core::option::Option::Some(Hasher::finish(&hasher))
}
fn reflect_partial_eq(&self,
value: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<bool> {
let value =
<dyn bevy_reflect::PartialReflect>::try_downcast_ref::<Self>(value);
if let ::core::option::Option::Some(value) = value {
::core::option::Option::Some(::core::cmp::PartialEq::eq(self,
value))
} else { ::core::option::Option::Some(false) }
}
fn reflect_partial_cmp(&self,
value: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<::core::cmp::Ordering> {
(bevy_reflect::enums::enum_partial_cmp)(self, value)
}
fn debug(&self, f: &mut ::core::fmt::Formatter<'_>)
-> ::core::fmt::Result {
::core::fmt::Debug::fmt(self, f)
}
#[inline]
fn reflect_clone(&self)
->
::core::result::Result<bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>,
bevy_reflect::ReflectCloneError> {
::core::result::Result::Ok(bevy_reflect::__macro_exports::alloc_utils::Box::new(::core::clone::Clone::clone(self)))
}
}
impl bevy_reflect::FromReflect for PresentMode where {
fn from_reflect(__param0: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<Self> {
if let bevy_reflect::ReflectRef::Enum(__param0) =
bevy_reflect::PartialReflect::reflect_ref(__param0) {
match bevy_reflect::enums::Enum::variant_name(__param0) {
"AutoVsync" =>
::core::option::Option::Some(PresentMode::AutoVsync {}),
"AutoNoVsync" =>
::core::option::Option::Some(PresentMode::AutoNoVsync {}),
"Fifo" =>
::core::option::Option::Some(PresentMode::Fifo {}),
"FifoRelaxed" =>
::core::option::Option::Some(PresentMode::FifoRelaxed {}),
"Immediate" =>
::core::option::Option::Some(PresentMode::Immediate {}),
"Mailbox" =>
::core::option::Option::Some(PresentMode::Mailbox {}),
name => ::core::option::Option::None,
}
} else { ::core::option::Option::None }
}
}
};Reflect),
1215 reflect(Debug, PartialEq, Hash, Clone)
1216)]
1217#[cfg_attr(feature = "serialize", derive(#[doc(hidden)]
#[allow(non_upper_case_globals, unused_attributes, unused_qualifications,
clippy :: absolute_paths,)]
const _: () =
{
#[allow(unused_extern_crates, clippy :: useless_attribute)]
extern crate serde as _serde;
;
#[automatically_derived]
impl _serde::Serialize for PresentMode {
fn serialize<__S>(&self, __serializer: __S)
-> _serde::__private228::Result<__S::Ok, __S::Error> where
__S: _serde::Serializer {
match *self {
PresentMode::AutoVsync =>
_serde::Serializer::serialize_unit_variant(__serializer,
"PresentMode", 0u32, "AutoVsync"),
PresentMode::AutoNoVsync =>
_serde::Serializer::serialize_unit_variant(__serializer,
"PresentMode", 1u32, "AutoNoVsync"),
PresentMode::Fifo =>
_serde::Serializer::serialize_unit_variant(__serializer,
"PresentMode", 2u32, "Fifo"),
PresentMode::FifoRelaxed =>
_serde::Serializer::serialize_unit_variant(__serializer,
"PresentMode", 3u32, "FifoRelaxed"),
PresentMode::Immediate =>
_serde::Serializer::serialize_unit_variant(__serializer,
"PresentMode", 4u32, "Immediate"),
PresentMode::Mailbox =>
_serde::Serializer::serialize_unit_variant(__serializer,
"PresentMode", 5u32, "Mailbox"),
}
}
}
};serde::Serialize, #[doc(hidden)]
#[allow(non_upper_case_globals, unused_attributes, unused_qualifications,
clippy :: absolute_paths,)]
const _: () =
{
#[allow(unused_extern_crates, clippy :: useless_attribute)]
extern crate serde as _serde;
;
#[automatically_derived]
impl<'de> _serde::Deserialize<'de> for PresentMode {
fn deserialize<__D>(__deserializer: __D)
-> _serde::__private228::Result<Self, __D::Error> where
__D: _serde::Deserializer<'de> {
#[allow(non_camel_case_types)]
#[doc(hidden)]
enum __Field {
__field0,
__field1,
__field2,
__field3,
__field4,
__field5,
}
#[doc(hidden)]
struct __FieldVisitor;
#[automatically_derived]
impl<'de> _serde::de::Visitor<'de> for __FieldVisitor {
type Value = __Field;
fn expecting(&self,
__formatter: &mut _serde::__private228::Formatter)
-> _serde::__private228::fmt::Result {
_serde::__private228::Formatter::write_str(__formatter,
"variant identifier")
}
fn visit_u64<__E>(self, __value: u64)
-> _serde::__private228::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
0u64 => _serde::__private228::Ok(__Field::__field0),
1u64 => _serde::__private228::Ok(__Field::__field1),
2u64 => _serde::__private228::Ok(__Field::__field2),
3u64 => _serde::__private228::Ok(__Field::__field3),
4u64 => _serde::__private228::Ok(__Field::__field4),
5u64 => _serde::__private228::Ok(__Field::__field5),
_ =>
_serde::__private228::Err(_serde::de::Error::invalid_value(_serde::de::Unexpected::Unsigned(__value),
&"variant index 0 <= i < 6")),
}
}
fn visit_str<__E>(self, __value: &str)
-> _serde::__private228::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
"AutoVsync" => _serde::__private228::Ok(__Field::__field0),
"AutoNoVsync" =>
_serde::__private228::Ok(__Field::__field1),
"Fifo" => _serde::__private228::Ok(__Field::__field2),
"FifoRelaxed" =>
_serde::__private228::Ok(__Field::__field3),
"Immediate" => _serde::__private228::Ok(__Field::__field4),
"Mailbox" => _serde::__private228::Ok(__Field::__field5),
_ => {
_serde::__private228::Err(_serde::de::Error::unknown_variant(__value,
VARIANTS))
}
}
}
fn visit_bytes<__E>(self, __value: &[u8])
-> _serde::__private228::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
b"AutoVsync" => _serde::__private228::Ok(__Field::__field0),
b"AutoNoVsync" =>
_serde::__private228::Ok(__Field::__field1),
b"Fifo" => _serde::__private228::Ok(__Field::__field2),
b"FifoRelaxed" =>
_serde::__private228::Ok(__Field::__field3),
b"Immediate" => _serde::__private228::Ok(__Field::__field4),
b"Mailbox" => _serde::__private228::Ok(__Field::__field5),
_ => {
let __value =
&_serde::__private228::from_utf8_lossy(__value);
_serde::__private228::Err(_serde::de::Error::unknown_variant(__value,
VARIANTS))
}
}
}
}
#[automatically_derived]
impl<'de> _serde::Deserialize<'de> for __Field {
#[inline]
fn deserialize<__D>(__deserializer: __D)
-> _serde::__private228::Result<Self, __D::Error> where
__D: _serde::Deserializer<'de> {
_serde::Deserializer::deserialize_identifier(__deserializer,
__FieldVisitor)
}
}
#[doc(hidden)]
struct __Visitor<'de> {
marker: _serde::__private228::PhantomData<PresentMode>,
lifetime: _serde::__private228::PhantomData<&'de ()>,
}
#[automatically_derived]
impl<'de> _serde::de::Visitor<'de> for __Visitor<'de> {
type Value = PresentMode;
fn expecting(&self,
__formatter: &mut _serde::__private228::Formatter)
-> _serde::__private228::fmt::Result {
_serde::__private228::Formatter::write_str(__formatter,
"enum PresentMode")
}
fn visit_enum<__A>(self, __data: __A)
-> _serde::__private228::Result<Self::Value, __A::Error>
where __A: _serde::de::EnumAccess<'de> {
match _serde::de::EnumAccess::variant(__data)? {
(__Field::__field0, __variant) => {
_serde::de::VariantAccess::unit_variant(__variant)?;
_serde::__private228::Ok(PresentMode::AutoVsync)
}
(__Field::__field1, __variant) => {
_serde::de::VariantAccess::unit_variant(__variant)?;
_serde::__private228::Ok(PresentMode::AutoNoVsync)
}
(__Field::__field2, __variant) => {
_serde::de::VariantAccess::unit_variant(__variant)?;
_serde::__private228::Ok(PresentMode::Fifo)
}
(__Field::__field3, __variant) => {
_serde::de::VariantAccess::unit_variant(__variant)?;
_serde::__private228::Ok(PresentMode::FifoRelaxed)
}
(__Field::__field4, __variant) => {
_serde::de::VariantAccess::unit_variant(__variant)?;
_serde::__private228::Ok(PresentMode::Immediate)
}
(__Field::__field5, __variant) => {
_serde::de::VariantAccess::unit_variant(__variant)?;
_serde::__private228::Ok(PresentMode::Mailbox)
}
}
}
}
#[doc(hidden)]
const VARIANTS: &'static [&'static str] =
&["AutoVsync", "AutoNoVsync", "Fifo", "FifoRelaxed",
"Immediate", "Mailbox"];
_serde::Deserializer::deserialize_enum(__deserializer,
"PresentMode", VARIANTS,
__Visitor {
marker: _serde::__private228::PhantomData::<PresentMode>,
lifetime: _serde::__private228::PhantomData,
})
}
}
};serde::Deserialize))]
1218#[cfg_attr(
1219 all(feature = "serialize", feature = "bevy_reflect"),
1220 reflect(Serialize, Deserialize)
1221)]
1222#[doc(alias = "vsync")]
1223pub enum PresentMode {
1224 AutoVsync = 0, AutoNoVsync = 1,
1232 #[default]
1247 Fifo = 2,
1248 FifoRelaxed = 3,
1264 Immediate = 4,
1274 Mailbox = 5,
1288}
1289
1290#[repr(C)]
1292#[derive(#[automatically_derived]
impl ::core::default::Default for CompositeAlphaMode {
#[inline]
fn default() -> CompositeAlphaMode { Self::Auto }
}Default, #[automatically_derived]
impl ::core::fmt::Debug for CompositeAlphaMode {
#[inline]
fn fmt(&self, f: &mut ::core::fmt::Formatter) -> ::core::fmt::Result {
::core::fmt::Formatter::write_str(f,
match self {
CompositeAlphaMode::Auto => "Auto",
CompositeAlphaMode::Opaque => "Opaque",
CompositeAlphaMode::PreMultiplied => "PreMultiplied",
CompositeAlphaMode::PostMultiplied => "PostMultiplied",
CompositeAlphaMode::Inherit => "Inherit",
})
}
}Debug, #[automatically_derived]
impl ::core::clone::Clone for CompositeAlphaMode {
#[inline]
fn clone(&self) -> CompositeAlphaMode { *self }
}Clone, #[automatically_derived]
impl ::core::marker::Copy for CompositeAlphaMode { }Copy, #[automatically_derived]
impl ::core::cmp::PartialEq for CompositeAlphaMode {
#[inline]
fn eq(&self, other: &CompositeAlphaMode) -> bool {
let __self_discr = ::core::intrinsics::discriminant_value(self);
let __arg1_discr = ::core::intrinsics::discriminant_value(other);
__self_discr == __arg1_discr
}
}PartialEq, #[automatically_derived]
impl ::core::cmp::Eq for CompositeAlphaMode {
#[inline]
#[doc(hidden)]
#[coverage(off)]
fn assert_fields_are_eq(&self) {}
}Eq, #[automatically_derived]
impl ::core::hash::Hash for CompositeAlphaMode {
#[inline]
fn hash<__H: ::core::hash::Hasher>(&self, state: &mut __H) {
let __self_discr = ::core::intrinsics::discriminant_value(self);
::core::hash::Hash::hash(&__self_discr, state)
}
}Hash)]
1293#[cfg_attr(
1294 feature = "bevy_reflect",
1295 derive(const _: () =
{
impl bevy_reflect::GetTypeRegistration for CompositeAlphaMode where {
fn get_type_registration() -> bevy_reflect::TypeRegistration {
let mut registration =
bevy_reflect::TypeRegistration::of::<Self>();
registration.insert::<bevy_reflect::ReflectFromPtr>(bevy_reflect::FromType::<Self>::from_type());
registration.insert::<bevy_reflect::ReflectFromReflect>(bevy_reflect::FromType::<Self>::from_type());
registration.register_type_data::<ReflectSerialize, Self>();
registration.register_type_data::<ReflectDeserialize, Self>();
registration
}
#[inline(never)]
fn register_type_dependencies(registry:
&mut bevy_reflect::TypeRegistry) {}
}
impl bevy_reflect::Typed for CompositeAlphaMode where {
#[inline]
fn type_info() -> &'static bevy_reflect::TypeInfo {
static CELL: bevy_reflect::utility::NonGenericTypeInfoCell =
bevy_reflect::utility::NonGenericTypeInfoCell::new();
CELL.get_or_set(||
{
bevy_reflect::TypeInfo::Enum(bevy_reflect::enums::EnumInfo::new::<Self>(&[bevy_reflect::enums::VariantInfo::Unit(bevy_reflect::enums::UnitVariantInfo::new("Auto")),
bevy_reflect::enums::VariantInfo::Unit(bevy_reflect::enums::UnitVariantInfo::new("Opaque")),
bevy_reflect::enums::VariantInfo::Unit(bevy_reflect::enums::UnitVariantInfo::new("PreMultiplied")),
bevy_reflect::enums::VariantInfo::Unit(bevy_reflect::enums::UnitVariantInfo::new("PostMultiplied")),
bevy_reflect::enums::VariantInfo::Unit(bevy_reflect::enums::UnitVariantInfo::new("Inherit"))]))
})
}
}
#[allow(deprecated, reason =
"derives on a deprecated type shouldn't be considered a usage")]
impl bevy_reflect::TypePath for CompositeAlphaMode where {
fn type_path() -> &'static str {
"bevy_window::window::CompositeAlphaMode"
}
fn short_type_path() -> &'static str { "CompositeAlphaMode" }
fn type_ident() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("CompositeAlphaMode")
}
fn crate_name() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("bevy_window::window".split(':').next().unwrap())
}
fn module_path() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("bevy_window::window")
}
}
impl bevy_reflect::Reflect for CompositeAlphaMode where {
#[inline]
fn into_any(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn ::core::any::Any> {
self
}
#[inline]
fn as_any(&self) -> &dyn ::core::any::Any { self }
#[inline]
fn as_any_mut(&mut self) -> &mut dyn ::core::any::Any { self }
#[inline]
fn into_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect> {
self
}
#[inline]
fn as_reflect(&self) -> &dyn bevy_reflect::Reflect { self }
#[inline]
fn as_reflect_mut(&mut self) -> &mut dyn bevy_reflect::Reflect {
self
}
#[inline]
fn set(&mut self,
value:
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>)
->
::core::result::Result<(),
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>> {
*self = <dyn bevy_reflect::Reflect>::take(value)?;
::core::result::Result::Ok(())
}
}
#[allow(non_upper_case_globals)]
const _: () =
{
static __INVENTORY: ::inventory::Node =
::inventory::Node {
value: &{
bevy_reflect::__macro_exports::auto_register::AutomaticReflectRegistrations(<CompositeAlphaMode
as
bevy_reflect::__macro_exports::auto_register::RegisterForReflection>::__register)
},
next: ::inventory::__private::UnsafeCell::new(::inventory::__private::Option::None),
};
#[link_section = ".text.startup"]
unsafe extern "C" fn __ctor() {
unsafe {
::inventory::ErasedNode::submit(__INVENTORY.value,
&__INVENTORY)
}
}
#[used]
#[link_section = ".init_array"]
static __CTOR: unsafe extern "C" fn() = __ctor;
};
impl bevy_reflect::enums::Enum for CompositeAlphaMode where {
fn field(&self, __name_param: &str)
-> ::core::option::Option<&dyn bevy_reflect::PartialReflect> {
match self { _ => ::core::option::Option::None, }
}
fn field_at(&self, __index_param: usize)
-> ::core::option::Option<&dyn bevy_reflect::PartialReflect> {
match self { _ => ::core::option::Option::None, }
}
fn field_mut(&mut self, __name_param: &str)
->
::core::option::Option<&mut dyn bevy_reflect::PartialReflect> {
match self { _ => ::core::option::Option::None, }
}
fn field_at_mut(&mut self, __index_param: usize)
->
::core::option::Option<&mut dyn bevy_reflect::PartialReflect> {
match self { _ => ::core::option::Option::None, }
}
fn index_of(&self, __name_param: &str)
-> ::core::option::Option<usize> {
match self { _ => ::core::option::Option::None, }
}
fn name_at(&self, __index_param: usize)
-> ::core::option::Option<&str> {
match self { _ => ::core::option::Option::None, }
}
fn iter_fields(&self) -> bevy_reflect::enums::VariantFieldIter {
bevy_reflect::enums::VariantFieldIter::new(self)
}
#[inline]
fn field_len(&self) -> usize {
match self {
CompositeAlphaMode::Auto { .. } => 0usize,
CompositeAlphaMode::Opaque { .. } => 0usize,
CompositeAlphaMode::PreMultiplied { .. } => 0usize,
CompositeAlphaMode::PostMultiplied { .. } => 0usize,
CompositeAlphaMode::Inherit { .. } => 0usize,
_ => 0,
}
}
#[inline]
fn variant_name(&self) -> &str {
match self {
CompositeAlphaMode::Auto { .. } => "Auto",
CompositeAlphaMode::Opaque { .. } => "Opaque",
CompositeAlphaMode::PreMultiplied { .. } => "PreMultiplied",
CompositeAlphaMode::PostMultiplied { .. } =>
"PostMultiplied",
CompositeAlphaMode::Inherit { .. } => "Inherit",
_ =>
::core::panicking::panic("internal error: entered unreachable code"),
}
}
#[inline]
fn variant_index(&self) -> usize {
match self {
CompositeAlphaMode::Auto { .. } => 0usize,
CompositeAlphaMode::Opaque { .. } => 1usize,
CompositeAlphaMode::PreMultiplied { .. } => 2usize,
CompositeAlphaMode::PostMultiplied { .. } => 3usize,
CompositeAlphaMode::Inherit { .. } => 4usize,
_ =>
::core::panicking::panic("internal error: entered unreachable code"),
}
}
#[inline]
fn variant_type(&self) -> bevy_reflect::enums::VariantType {
match self {
CompositeAlphaMode::Auto { .. } =>
bevy_reflect::enums::VariantType::Unit,
CompositeAlphaMode::Opaque { .. } =>
bevy_reflect::enums::VariantType::Unit,
CompositeAlphaMode::PreMultiplied { .. } =>
bevy_reflect::enums::VariantType::Unit,
CompositeAlphaMode::PostMultiplied { .. } =>
bevy_reflect::enums::VariantType::Unit,
CompositeAlphaMode::Inherit { .. } =>
bevy_reflect::enums::VariantType::Unit,
_ =>
::core::panicking::panic("internal error: entered unreachable code"),
}
}
fn to_dynamic_enum(&self) -> bevy_reflect::enums::DynamicEnum {
bevy_reflect::enums::DynamicEnum::from_ref::<Self>(self)
}
}
impl bevy_reflect::PartialReflect for CompositeAlphaMode where {
#[inline]
fn get_represented_type_info(&self)
-> ::core::option::Option<&'static bevy_reflect::TypeInfo> {
::core::option::Option::Some(<Self as
bevy_reflect::Typed>::type_info())
}
#[inline]
fn try_apply(&mut self,
__value_param: &dyn bevy_reflect::PartialReflect)
-> ::core::result::Result<(), bevy_reflect::ApplyError> {
if let bevy_reflect::ReflectRef::Enum(__value_param) =
bevy_reflect::PartialReflect::reflect_ref(__value_param) {
if bevy_reflect::enums::Enum::variant_name(self) ==
bevy_reflect::enums::Enum::variant_name(__value_param) {
match bevy_reflect::enums::Enum::variant_type(__value_param)
{
bevy_reflect::enums::VariantType::Struct => {
for field in
bevy_reflect::enums::Enum::iter_fields(__value_param) {
let name = field.name().unwrap();
if let ::core::option::Option::Some(v) =
bevy_reflect::enums::Enum::field_mut(self, name) {
bevy_reflect::PartialReflect::try_apply(v, field.value())?;
}
}
}
bevy_reflect::enums::VariantType::Tuple => {
for (index, field) in
::core::iter::Iterator::enumerate(bevy_reflect::enums::Enum::iter_fields(__value_param))
{
if let ::core::option::Option::Some(v) =
bevy_reflect::enums::Enum::field_at_mut(self, index) {
bevy_reflect::PartialReflect::try_apply(v, field.value())?;
}
}
}
_ => {}
}
} else {
match bevy_reflect::enums::Enum::variant_name(__value_param)
{
"Auto" => { *self = CompositeAlphaMode::Auto {} }
"Opaque" => { *self = CompositeAlphaMode::Opaque {} }
"PreMultiplied" => {
*self = CompositeAlphaMode::PreMultiplied {}
}
"PostMultiplied" => {
*self = CompositeAlphaMode::PostMultiplied {}
}
"Inherit" => { *self = CompositeAlphaMode::Inherit {} }
name => {
return ::core::result::Result::Err(bevy_reflect::ApplyError::UnknownVariant {
enum_name: ::core::convert::Into::into(bevy_reflect::DynamicTypePath::reflect_type_path(self)),
variant_name: ::core::convert::Into::into(name),
});
}
}
}
} else {
return ::core::result::Result::Err(bevy_reflect::ApplyError::MismatchedKinds {
from_kind: bevy_reflect::PartialReflect::reflect_kind(__value_param),
to_kind: bevy_reflect::ReflectKind::Enum,
});
}
::core::result::Result::Ok(())
}
fn reflect_kind(&self) -> bevy_reflect::ReflectKind {
bevy_reflect::ReflectKind::Enum
}
fn reflect_ref(&self) -> bevy_reflect::ReflectRef {
bevy_reflect::ReflectRef::Enum(self)
}
fn reflect_mut(&mut self) -> bevy_reflect::ReflectMut {
bevy_reflect::ReflectMut::Enum(self)
}
fn reflect_owned(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
-> bevy_reflect::ReflectOwned {
bevy_reflect::ReflectOwned::Enum(self)
}
#[inline]
fn try_into_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
::core::result::Result<bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>,
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::PartialReflect>> {
::core::result::Result::Ok(self)
}
#[inline]
fn try_as_reflect(&self)
-> ::core::option::Option<&dyn bevy_reflect::Reflect> {
::core::option::Option::Some(self)
}
#[inline]
fn try_as_reflect_mut(&mut self)
-> ::core::option::Option<&mut dyn bevy_reflect::Reflect> {
::core::option::Option::Some(self)
}
#[inline]
fn into_partial_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::PartialReflect> {
self
}
#[inline]
fn as_partial_reflect(&self)
-> &dyn bevy_reflect::PartialReflect {
self
}
#[inline]
fn as_partial_reflect_mut(&mut self)
-> &mut dyn bevy_reflect::PartialReflect {
self
}
fn reflect_hash(&self) -> ::core::option::Option<u64> {
use ::core::hash::{Hash, Hasher};
let mut hasher = bevy_reflect::utility::reflect_hasher();
Hash::hash(&::core::any::Any::type_id(self), &mut hasher);
Hash::hash(self, &mut hasher);
::core::option::Option::Some(Hasher::finish(&hasher))
}
fn reflect_partial_eq(&self,
value: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<bool> {
let value =
<dyn bevy_reflect::PartialReflect>::try_downcast_ref::<Self>(value);
if let ::core::option::Option::Some(value) = value {
::core::option::Option::Some(::core::cmp::PartialEq::eq(self,
value))
} else { ::core::option::Option::Some(false) }
}
fn reflect_partial_cmp(&self,
value: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<::core::cmp::Ordering> {
(bevy_reflect::enums::enum_partial_cmp)(self, value)
}
fn debug(&self, f: &mut ::core::fmt::Formatter<'_>)
-> ::core::fmt::Result {
::core::fmt::Debug::fmt(self, f)
}
#[inline]
fn reflect_clone(&self)
->
::core::result::Result<bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>,
bevy_reflect::ReflectCloneError> {
::core::result::Result::Ok(bevy_reflect::__macro_exports::alloc_utils::Box::new(::core::clone::Clone::clone(self)))
}
}
impl bevy_reflect::FromReflect for CompositeAlphaMode where {
fn from_reflect(__param0: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<Self> {
if let bevy_reflect::ReflectRef::Enum(__param0) =
bevy_reflect::PartialReflect::reflect_ref(__param0) {
match bevy_reflect::enums::Enum::variant_name(__param0) {
"Auto" =>
::core::option::Option::Some(CompositeAlphaMode::Auto {}),
"Opaque" =>
::core::option::Option::Some(CompositeAlphaMode::Opaque {}),
"PreMultiplied" =>
::core::option::Option::Some(CompositeAlphaMode::PreMultiplied {}),
"PostMultiplied" =>
::core::option::Option::Some(CompositeAlphaMode::PostMultiplied {}),
"Inherit" =>
::core::option::Option::Some(CompositeAlphaMode::Inherit {}),
name => ::core::option::Option::None,
}
} else { ::core::option::Option::None }
}
}
};Reflect),
1296 reflect(Debug, PartialEq, Hash, Clone)
1297)]
1298#[cfg_attr(feature = "serialize", derive(#[doc(hidden)]
#[allow(non_upper_case_globals, unused_attributes, unused_qualifications,
clippy :: absolute_paths,)]
const _: () =
{
#[allow(unused_extern_crates, clippy :: useless_attribute)]
extern crate serde as _serde;
;
#[automatically_derived]
impl _serde::Serialize for CompositeAlphaMode {
fn serialize<__S>(&self, __serializer: __S)
-> _serde::__private228::Result<__S::Ok, __S::Error> where
__S: _serde::Serializer {
match *self {
CompositeAlphaMode::Auto =>
_serde::Serializer::serialize_unit_variant(__serializer,
"CompositeAlphaMode", 0u32, "Auto"),
CompositeAlphaMode::Opaque =>
_serde::Serializer::serialize_unit_variant(__serializer,
"CompositeAlphaMode", 1u32, "Opaque"),
CompositeAlphaMode::PreMultiplied =>
_serde::Serializer::serialize_unit_variant(__serializer,
"CompositeAlphaMode", 2u32, "PreMultiplied"),
CompositeAlphaMode::PostMultiplied =>
_serde::Serializer::serialize_unit_variant(__serializer,
"CompositeAlphaMode", 3u32, "PostMultiplied"),
CompositeAlphaMode::Inherit =>
_serde::Serializer::serialize_unit_variant(__serializer,
"CompositeAlphaMode", 4u32, "Inherit"),
}
}
}
};serde::Serialize, #[doc(hidden)]
#[allow(non_upper_case_globals, unused_attributes, unused_qualifications,
clippy :: absolute_paths,)]
const _: () =
{
#[allow(unused_extern_crates, clippy :: useless_attribute)]
extern crate serde as _serde;
;
#[automatically_derived]
impl<'de> _serde::Deserialize<'de> for CompositeAlphaMode {
fn deserialize<__D>(__deserializer: __D)
-> _serde::__private228::Result<Self, __D::Error> where
__D: _serde::Deserializer<'de> {
#[allow(non_camel_case_types)]
#[doc(hidden)]
enum __Field {
__field0,
__field1,
__field2,
__field3,
__field4,
}
#[doc(hidden)]
struct __FieldVisitor;
#[automatically_derived]
impl<'de> _serde::de::Visitor<'de> for __FieldVisitor {
type Value = __Field;
fn expecting(&self,
__formatter: &mut _serde::__private228::Formatter)
-> _serde::__private228::fmt::Result {
_serde::__private228::Formatter::write_str(__formatter,
"variant identifier")
}
fn visit_u64<__E>(self, __value: u64)
-> _serde::__private228::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
0u64 => _serde::__private228::Ok(__Field::__field0),
1u64 => _serde::__private228::Ok(__Field::__field1),
2u64 => _serde::__private228::Ok(__Field::__field2),
3u64 => _serde::__private228::Ok(__Field::__field3),
4u64 => _serde::__private228::Ok(__Field::__field4),
_ =>
_serde::__private228::Err(_serde::de::Error::invalid_value(_serde::de::Unexpected::Unsigned(__value),
&"variant index 0 <= i < 5")),
}
}
fn visit_str<__E>(self, __value: &str)
-> _serde::__private228::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
"Auto" => _serde::__private228::Ok(__Field::__field0),
"Opaque" => _serde::__private228::Ok(__Field::__field1),
"PreMultiplied" =>
_serde::__private228::Ok(__Field::__field2),
"PostMultiplied" =>
_serde::__private228::Ok(__Field::__field3),
"Inherit" => _serde::__private228::Ok(__Field::__field4),
_ => {
_serde::__private228::Err(_serde::de::Error::unknown_variant(__value,
VARIANTS))
}
}
}
fn visit_bytes<__E>(self, __value: &[u8])
-> _serde::__private228::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
b"Auto" => _serde::__private228::Ok(__Field::__field0),
b"Opaque" => _serde::__private228::Ok(__Field::__field1),
b"PreMultiplied" =>
_serde::__private228::Ok(__Field::__field2),
b"PostMultiplied" =>
_serde::__private228::Ok(__Field::__field3),
b"Inherit" => _serde::__private228::Ok(__Field::__field4),
_ => {
let __value =
&_serde::__private228::from_utf8_lossy(__value);
_serde::__private228::Err(_serde::de::Error::unknown_variant(__value,
VARIANTS))
}
}
}
}
#[automatically_derived]
impl<'de> _serde::Deserialize<'de> for __Field {
#[inline]
fn deserialize<__D>(__deserializer: __D)
-> _serde::__private228::Result<Self, __D::Error> where
__D: _serde::Deserializer<'de> {
_serde::Deserializer::deserialize_identifier(__deserializer,
__FieldVisitor)
}
}
#[doc(hidden)]
struct __Visitor<'de> {
marker: _serde::__private228::PhantomData<CompositeAlphaMode>,
lifetime: _serde::__private228::PhantomData<&'de ()>,
}
#[automatically_derived]
impl<'de> _serde::de::Visitor<'de> for __Visitor<'de> {
type Value = CompositeAlphaMode;
fn expecting(&self,
__formatter: &mut _serde::__private228::Formatter)
-> _serde::__private228::fmt::Result {
_serde::__private228::Formatter::write_str(__formatter,
"enum CompositeAlphaMode")
}
fn visit_enum<__A>(self, __data: __A)
-> _serde::__private228::Result<Self::Value, __A::Error>
where __A: _serde::de::EnumAccess<'de> {
match _serde::de::EnumAccess::variant(__data)? {
(__Field::__field0, __variant) => {
_serde::de::VariantAccess::unit_variant(__variant)?;
_serde::__private228::Ok(CompositeAlphaMode::Auto)
}
(__Field::__field1, __variant) => {
_serde::de::VariantAccess::unit_variant(__variant)?;
_serde::__private228::Ok(CompositeAlphaMode::Opaque)
}
(__Field::__field2, __variant) => {
_serde::de::VariantAccess::unit_variant(__variant)?;
_serde::__private228::Ok(CompositeAlphaMode::PreMultiplied)
}
(__Field::__field3, __variant) => {
_serde::de::VariantAccess::unit_variant(__variant)?;
_serde::__private228::Ok(CompositeAlphaMode::PostMultiplied)
}
(__Field::__field4, __variant) => {
_serde::de::VariantAccess::unit_variant(__variant)?;
_serde::__private228::Ok(CompositeAlphaMode::Inherit)
}
}
}
}
#[doc(hidden)]
const VARIANTS: &'static [&'static str] =
&["Auto", "Opaque", "PreMultiplied", "PostMultiplied",
"Inherit"];
_serde::Deserializer::deserialize_enum(__deserializer,
"CompositeAlphaMode", VARIANTS,
__Visitor {
marker: _serde::__private228::PhantomData::<CompositeAlphaMode>,
lifetime: _serde::__private228::PhantomData,
})
}
}
};serde::Deserialize))]
1299#[cfg_attr(
1300 all(feature = "serialize", feature = "bevy_reflect"),
1301 reflect(Serialize, Deserialize)
1302)]
1303pub enum CompositeAlphaMode {
1304 #[default]
1307 Auto = 0,
1308 Opaque = 1,
1312 PreMultiplied = 2,
1317 PostMultiplied = 3,
1323 Inherit = 4,
1328}
1329
1330#[derive(#[automatically_derived]
impl ::core::default::Default for WindowMode {
#[inline]
fn default() -> WindowMode { Self::Windowed }
}Default, #[automatically_derived]
impl ::core::fmt::Debug for WindowMode {
#[inline]
fn fmt(&self, f: &mut ::core::fmt::Formatter) -> ::core::fmt::Result {
match self {
WindowMode::Windowed =>
::core::fmt::Formatter::write_str(f, "Windowed"),
WindowMode::BorderlessFullscreen(__self_0) =>
::core::fmt::Formatter::debug_tuple_field1_finish(f,
"BorderlessFullscreen", &__self_0),
WindowMode::Fullscreen(__self_0, __self_1) =>
::core::fmt::Formatter::debug_tuple_field2_finish(f,
"Fullscreen", __self_0, &__self_1),
}
}
}Debug, #[automatically_derived]
impl ::core::clone::Clone for WindowMode {
#[inline]
fn clone(&self) -> WindowMode {
let _: ::core::clone::AssertParamIsClone<MonitorSelection>;
let _: ::core::clone::AssertParamIsClone<VideoModeSelection>;
*self
}
}Clone, #[automatically_derived]
impl ::core::marker::Copy for WindowMode { }Copy, #[automatically_derived]
impl ::core::cmp::PartialEq for WindowMode {
#[inline]
fn eq(&self, other: &WindowMode) -> bool {
let __self_discr = ::core::intrinsics::discriminant_value(self);
let __arg1_discr = ::core::intrinsics::discriminant_value(other);
__self_discr == __arg1_discr &&
match (self, other) {
(WindowMode::BorderlessFullscreen(__self_0),
WindowMode::BorderlessFullscreen(__arg1_0)) =>
__self_0 == __arg1_0,
(WindowMode::Fullscreen(__self_0, __self_1),
WindowMode::Fullscreen(__arg1_0, __arg1_1)) =>
__self_0 == __arg1_0 && __self_1 == __arg1_1,
_ => true,
}
}
}PartialEq, #[automatically_derived]
impl ::core::cmp::Eq for WindowMode {
#[inline]
#[doc(hidden)]
#[coverage(off)]
fn assert_fields_are_eq(&self) {
let _: ::core::cmp::AssertParamIsEq<MonitorSelection>;
let _: ::core::cmp::AssertParamIsEq<VideoModeSelection>;
}
}Eq)]
1332#[cfg_attr(
1333 feature = "bevy_reflect",
1334 derive(const _: () =
{
impl bevy_reflect::GetTypeRegistration for WindowMode where {
fn get_type_registration() -> bevy_reflect::TypeRegistration {
let mut registration =
bevy_reflect::TypeRegistration::of::<Self>();
registration.insert::<bevy_reflect::ReflectFromPtr>(bevy_reflect::FromType::<Self>::from_type());
registration.insert::<bevy_reflect::ReflectFromReflect>(bevy_reflect::FromType::<Self>::from_type());
registration.register_type_data::<ReflectSerialize, Self>();
registration.register_type_data::<ReflectDeserialize, Self>();
registration
}
#[inline(never)]
fn register_type_dependencies(registry:
&mut bevy_reflect::TypeRegistry) {
<MonitorSelection as
bevy_reflect::__macro_exports::RegisterForReflection>::__register(registry);
<VideoModeSelection as
bevy_reflect::__macro_exports::RegisterForReflection>::__register(registry);
}
}
impl bevy_reflect::Typed for WindowMode where {
#[inline]
fn type_info() -> &'static bevy_reflect::TypeInfo {
static CELL: bevy_reflect::utility::NonGenericTypeInfoCell =
bevy_reflect::utility::NonGenericTypeInfoCell::new();
CELL.get_or_set(||
{
bevy_reflect::TypeInfo::Enum(bevy_reflect::enums::EnumInfo::new::<Self>(&[bevy_reflect::enums::VariantInfo::Unit(bevy_reflect::enums::UnitVariantInfo::new("Windowed")),
bevy_reflect::enums::VariantInfo::Tuple(bevy_reflect::enums::TupleVariantInfo::new("BorderlessFullscreen",
&[bevy_reflect::UnnamedField::new::<MonitorSelection>(0usize)])),
bevy_reflect::enums::VariantInfo::Tuple(bevy_reflect::enums::TupleVariantInfo::new("Fullscreen",
&[bevy_reflect::UnnamedField::new::<MonitorSelection>(0usize),
bevy_reflect::UnnamedField::new::<VideoModeSelection>(1usize)]))]))
})
}
}
#[allow(deprecated, reason =
"derives on a deprecated type shouldn't be considered a usage")]
impl bevy_reflect::TypePath for WindowMode where {
fn type_path() -> &'static str {
"bevy_window::window::WindowMode"
}
fn short_type_path() -> &'static str { "WindowMode" }
fn type_ident() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("WindowMode")
}
fn crate_name() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("bevy_window::window".split(':').next().unwrap())
}
fn module_path() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("bevy_window::window")
}
}
impl bevy_reflect::Reflect for WindowMode where {
#[inline]
fn into_any(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn ::core::any::Any> {
self
}
#[inline]
fn as_any(&self) -> &dyn ::core::any::Any { self }
#[inline]
fn as_any_mut(&mut self) -> &mut dyn ::core::any::Any { self }
#[inline]
fn into_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect> {
self
}
#[inline]
fn as_reflect(&self) -> &dyn bevy_reflect::Reflect { self }
#[inline]
fn as_reflect_mut(&mut self) -> &mut dyn bevy_reflect::Reflect {
self
}
#[inline]
fn set(&mut self,
value:
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>)
->
::core::result::Result<(),
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>> {
*self = <dyn bevy_reflect::Reflect>::take(value)?;
::core::result::Result::Ok(())
}
}
#[allow(non_upper_case_globals)]
const _: () =
{
static __INVENTORY: ::inventory::Node =
::inventory::Node {
value: &{
bevy_reflect::__macro_exports::auto_register::AutomaticReflectRegistrations(<WindowMode
as
bevy_reflect::__macro_exports::auto_register::RegisterForReflection>::__register)
},
next: ::inventory::__private::UnsafeCell::new(::inventory::__private::Option::None),
};
#[link_section = ".text.startup"]
unsafe extern "C" fn __ctor() {
unsafe {
::inventory::ErasedNode::submit(__INVENTORY.value,
&__INVENTORY)
}
}
#[used]
#[link_section = ".init_array"]
static __CTOR: unsafe extern "C" fn() = __ctor;
};
impl bevy_reflect::enums::Enum for WindowMode where {
fn field(&self, __name_param: &str)
-> ::core::option::Option<&dyn bevy_reflect::PartialReflect> {
match self { _ => ::core::option::Option::None, }
}
fn field_at(&self, __index_param: usize)
-> ::core::option::Option<&dyn bevy_reflect::PartialReflect> {
match self {
WindowMode::BorderlessFullscreen { 0: __value, .. } if
__index_param == 0usize =>
::core::option::Option::Some(__value),
WindowMode::Fullscreen { 0: __value, .. } if
__index_param == 0usize =>
::core::option::Option::Some(__value),
WindowMode::Fullscreen { 1: __value, .. } if
__index_param == 1usize =>
::core::option::Option::Some(__value),
_ => ::core::option::Option::None,
}
}
fn field_mut(&mut self, __name_param: &str)
->
::core::option::Option<&mut dyn bevy_reflect::PartialReflect> {
match self { _ => ::core::option::Option::None, }
}
fn field_at_mut(&mut self, __index_param: usize)
->
::core::option::Option<&mut dyn bevy_reflect::PartialReflect> {
match self {
WindowMode::BorderlessFullscreen { 0: __value, .. } if
__index_param == 0usize =>
::core::option::Option::Some(__value),
WindowMode::Fullscreen { 0: __value, .. } if
__index_param == 0usize =>
::core::option::Option::Some(__value),
WindowMode::Fullscreen { 1: __value, .. } if
__index_param == 1usize =>
::core::option::Option::Some(__value),
_ => ::core::option::Option::None,
}
}
fn index_of(&self, __name_param: &str)
-> ::core::option::Option<usize> {
match self { _ => ::core::option::Option::None, }
}
fn name_at(&self, __index_param: usize)
-> ::core::option::Option<&str> {
match self { _ => ::core::option::Option::None, }
}
fn iter_fields(&self) -> bevy_reflect::enums::VariantFieldIter {
bevy_reflect::enums::VariantFieldIter::new(self)
}
#[inline]
fn field_len(&self) -> usize {
match self {
WindowMode::Windowed { .. } => 0usize,
WindowMode::BorderlessFullscreen { .. } => 1usize,
WindowMode::Fullscreen { .. } => 2usize,
_ => 0,
}
}
#[inline]
fn variant_name(&self) -> &str {
match self {
WindowMode::Windowed { .. } => "Windowed",
WindowMode::BorderlessFullscreen { .. } =>
"BorderlessFullscreen",
WindowMode::Fullscreen { .. } => "Fullscreen",
_ =>
::core::panicking::panic("internal error: entered unreachable code"),
}
}
#[inline]
fn variant_index(&self) -> usize {
match self {
WindowMode::Windowed { .. } => 0usize,
WindowMode::BorderlessFullscreen { .. } => 1usize,
WindowMode::Fullscreen { .. } => 2usize,
_ =>
::core::panicking::panic("internal error: entered unreachable code"),
}
}
#[inline]
fn variant_type(&self) -> bevy_reflect::enums::VariantType {
match self {
WindowMode::Windowed { .. } =>
bevy_reflect::enums::VariantType::Unit,
WindowMode::BorderlessFullscreen { .. } =>
bevy_reflect::enums::VariantType::Tuple,
WindowMode::Fullscreen { .. } =>
bevy_reflect::enums::VariantType::Tuple,
_ =>
::core::panicking::panic("internal error: entered unreachable code"),
}
}
fn to_dynamic_enum(&self) -> bevy_reflect::enums::DynamicEnum {
bevy_reflect::enums::DynamicEnum::from_ref::<Self>(self)
}
}
impl bevy_reflect::PartialReflect for WindowMode where {
#[inline]
fn get_represented_type_info(&self)
-> ::core::option::Option<&'static bevy_reflect::TypeInfo> {
::core::option::Option::Some(<Self as
bevy_reflect::Typed>::type_info())
}
#[inline]
fn try_apply(&mut self,
__value_param: &dyn bevy_reflect::PartialReflect)
-> ::core::result::Result<(), bevy_reflect::ApplyError> {
if let bevy_reflect::ReflectRef::Enum(__value_param) =
bevy_reflect::PartialReflect::reflect_ref(__value_param) {
if bevy_reflect::enums::Enum::variant_name(self) ==
bevy_reflect::enums::Enum::variant_name(__value_param) {
match bevy_reflect::enums::Enum::variant_type(__value_param)
{
bevy_reflect::enums::VariantType::Struct => {
for field in
bevy_reflect::enums::Enum::iter_fields(__value_param) {
let name = field.name().unwrap();
if let ::core::option::Option::Some(v) =
bevy_reflect::enums::Enum::field_mut(self, name) {
bevy_reflect::PartialReflect::try_apply(v, field.value())?;
}
}
}
bevy_reflect::enums::VariantType::Tuple => {
for (index, field) in
::core::iter::Iterator::enumerate(bevy_reflect::enums::Enum::iter_fields(__value_param))
{
if let ::core::option::Option::Some(v) =
bevy_reflect::enums::Enum::field_at_mut(self, index) {
bevy_reflect::PartialReflect::try_apply(v, field.value())?;
}
}
}
_ => {}
}
} else {
match bevy_reflect::enums::Enum::variant_name(__value_param)
{
"Windowed" => { *self = WindowMode::Windowed {} }
"BorderlessFullscreen" => {
*self =
WindowMode::BorderlessFullscreen {
0: {
let __0 = __value_param.field_at(0usize);
let __0 =
__0.ok_or(bevy_reflect::ApplyError::MissingEnumField {
variant_name: ::core::convert::Into::into("BorderlessFullscreen"),
field_name: ::core::convert::Into::into(".0"),
})?;
<MonitorSelection as
bevy_reflect::FromReflect>::from_reflect(__0).ok_or(bevy_reflect::ApplyError::MismatchedTypes {
from_type: ::core::convert::Into::into(bevy_reflect::DynamicTypePath::reflect_type_path(__0)),
to_type: ::core::convert::Into::into(<MonitorSelection as
bevy_reflect::TypePath>::type_path()),
})?
},
}
}
"Fullscreen" => {
*self =
WindowMode::Fullscreen {
0: {
let __0 = __value_param.field_at(0usize);
let __0 =
__0.ok_or(bevy_reflect::ApplyError::MissingEnumField {
variant_name: ::core::convert::Into::into("Fullscreen"),
field_name: ::core::convert::Into::into(".0"),
})?;
<MonitorSelection as
bevy_reflect::FromReflect>::from_reflect(__0).ok_or(bevy_reflect::ApplyError::MismatchedTypes {
from_type: ::core::convert::Into::into(bevy_reflect::DynamicTypePath::reflect_type_path(__0)),
to_type: ::core::convert::Into::into(<MonitorSelection as
bevy_reflect::TypePath>::type_path()),
})?
},
1: {
let __1 = __value_param.field_at(1usize);
let __1 =
__1.ok_or(bevy_reflect::ApplyError::MissingEnumField {
variant_name: ::core::convert::Into::into("Fullscreen"),
field_name: ::core::convert::Into::into(".1"),
})?;
<VideoModeSelection as
bevy_reflect::FromReflect>::from_reflect(__1).ok_or(bevy_reflect::ApplyError::MismatchedTypes {
from_type: ::core::convert::Into::into(bevy_reflect::DynamicTypePath::reflect_type_path(__1)),
to_type: ::core::convert::Into::into(<VideoModeSelection as
bevy_reflect::TypePath>::type_path()),
})?
},
}
}
name => {
return ::core::result::Result::Err(bevy_reflect::ApplyError::UnknownVariant {
enum_name: ::core::convert::Into::into(bevy_reflect::DynamicTypePath::reflect_type_path(self)),
variant_name: ::core::convert::Into::into(name),
});
}
}
}
} else {
return ::core::result::Result::Err(bevy_reflect::ApplyError::MismatchedKinds {
from_kind: bevy_reflect::PartialReflect::reflect_kind(__value_param),
to_kind: bevy_reflect::ReflectKind::Enum,
});
}
::core::result::Result::Ok(())
}
fn reflect_kind(&self) -> bevy_reflect::ReflectKind {
bevy_reflect::ReflectKind::Enum
}
fn reflect_ref(&self) -> bevy_reflect::ReflectRef {
bevy_reflect::ReflectRef::Enum(self)
}
fn reflect_mut(&mut self) -> bevy_reflect::ReflectMut {
bevy_reflect::ReflectMut::Enum(self)
}
fn reflect_owned(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
-> bevy_reflect::ReflectOwned {
bevy_reflect::ReflectOwned::Enum(self)
}
#[inline]
fn try_into_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
::core::result::Result<bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>,
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::PartialReflect>> {
::core::result::Result::Ok(self)
}
#[inline]
fn try_as_reflect(&self)
-> ::core::option::Option<&dyn bevy_reflect::Reflect> {
::core::option::Option::Some(self)
}
#[inline]
fn try_as_reflect_mut(&mut self)
-> ::core::option::Option<&mut dyn bevy_reflect::Reflect> {
::core::option::Option::Some(self)
}
#[inline]
fn into_partial_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::PartialReflect> {
self
}
#[inline]
fn as_partial_reflect(&self)
-> &dyn bevy_reflect::PartialReflect {
self
}
#[inline]
fn as_partial_reflect_mut(&mut self)
-> &mut dyn bevy_reflect::PartialReflect {
self
}
fn reflect_hash(&self) -> ::core::option::Option<u64> {
(bevy_reflect::enums::enum_hash)(self)
}
fn reflect_partial_eq(&self,
value: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<bool> {
let value =
<dyn bevy_reflect::PartialReflect>::try_downcast_ref::<Self>(value);
if let ::core::option::Option::Some(value) = value {
::core::option::Option::Some(::core::cmp::PartialEq::eq(self,
value))
} else { ::core::option::Option::Some(false) }
}
fn reflect_partial_cmp(&self,
value: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<::core::cmp::Ordering> {
(bevy_reflect::enums::enum_partial_cmp)(self, value)
}
fn debug(&self, f: &mut ::core::fmt::Formatter<'_>)
-> ::core::fmt::Result {
::core::fmt::Debug::fmt(self, f)
}
#[inline]
fn reflect_clone(&self)
->
::core::result::Result<bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>,
bevy_reflect::ReflectCloneError> {
::core::result::Result::Ok(bevy_reflect::__macro_exports::alloc_utils::Box::new(::core::clone::Clone::clone(self)))
}
}
impl bevy_reflect::FromReflect for WindowMode where {
fn from_reflect(__param0: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<Self> {
if let bevy_reflect::ReflectRef::Enum(__param0) =
bevy_reflect::PartialReflect::reflect_ref(__param0) {
match bevy_reflect::enums::Enum::variant_name(__param0) {
"Windowed" =>
::core::option::Option::Some(WindowMode::Windowed {}),
"BorderlessFullscreen" =>
::core::option::Option::Some(WindowMode::BorderlessFullscreen {
0: {
let __0 = __param0.field_at(0usize);
let __0 = __0?;
<MonitorSelection as
bevy_reflect::FromReflect>::from_reflect(__0)?
},
}),
"Fullscreen" =>
::core::option::Option::Some(WindowMode::Fullscreen {
0: {
let __0 = __param0.field_at(0usize);
let __0 = __0?;
<MonitorSelection as
bevy_reflect::FromReflect>::from_reflect(__0)?
},
1: {
let __1 = __param0.field_at(1usize);
let __1 = __1?;
<VideoModeSelection as
bevy_reflect::FromReflect>::from_reflect(__1)?
},
}),
name => ::core::option::Option::None,
}
} else { ::core::option::Option::None }
}
}
};Reflect),
1335 reflect(Debug, PartialEq, Clone)
1336)]
1337#[cfg_attr(feature = "serialize", derive(#[doc(hidden)]
#[allow(non_upper_case_globals, unused_attributes, unused_qualifications,
clippy :: absolute_paths,)]
const _: () =
{
#[allow(unused_extern_crates, clippy :: useless_attribute)]
extern crate serde as _serde;
;
#[automatically_derived]
impl _serde::Serialize for WindowMode {
fn serialize<__S>(&self, __serializer: __S)
-> _serde::__private228::Result<__S::Ok, __S::Error> where
__S: _serde::Serializer {
match *self {
WindowMode::Windowed =>
_serde::Serializer::serialize_unit_variant(__serializer,
"WindowMode", 0u32, "Windowed"),
WindowMode::BorderlessFullscreen(ref __field0) =>
_serde::Serializer::serialize_newtype_variant(__serializer,
"WindowMode", 1u32, "BorderlessFullscreen", __field0),
WindowMode::Fullscreen(ref __field0, ref __field1) => {
let mut __serde_state =
_serde::Serializer::serialize_tuple_variant(__serializer,
"WindowMode", 2u32, "Fullscreen", 0 + 1 + 1)?;
_serde::ser::SerializeTupleVariant::serialize_field(&mut __serde_state,
__field0)?;
_serde::ser::SerializeTupleVariant::serialize_field(&mut __serde_state,
__field1)?;
_serde::ser::SerializeTupleVariant::end(__serde_state)
}
}
}
}
};serde::Serialize, #[doc(hidden)]
#[allow(non_upper_case_globals, unused_attributes, unused_qualifications,
clippy :: absolute_paths,)]
const _: () =
{
#[allow(unused_extern_crates, clippy :: useless_attribute)]
extern crate serde as _serde;
;
#[automatically_derived]
impl<'de> _serde::Deserialize<'de> for WindowMode {
fn deserialize<__D>(__deserializer: __D)
-> _serde::__private228::Result<Self, __D::Error> where
__D: _serde::Deserializer<'de> {
#[allow(non_camel_case_types)]
#[doc(hidden)]
enum __Field { __field0, __field1, __field2, }
#[doc(hidden)]
struct __FieldVisitor;
#[automatically_derived]
impl<'de> _serde::de::Visitor<'de> for __FieldVisitor {
type Value = __Field;
fn expecting(&self,
__formatter: &mut _serde::__private228::Formatter)
-> _serde::__private228::fmt::Result {
_serde::__private228::Formatter::write_str(__formatter,
"variant identifier")
}
fn visit_u64<__E>(self, __value: u64)
-> _serde::__private228::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
0u64 => _serde::__private228::Ok(__Field::__field0),
1u64 => _serde::__private228::Ok(__Field::__field1),
2u64 => _serde::__private228::Ok(__Field::__field2),
_ =>
_serde::__private228::Err(_serde::de::Error::invalid_value(_serde::de::Unexpected::Unsigned(__value),
&"variant index 0 <= i < 3")),
}
}
fn visit_str<__E>(self, __value: &str)
-> _serde::__private228::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
"Windowed" => _serde::__private228::Ok(__Field::__field0),
"BorderlessFullscreen" =>
_serde::__private228::Ok(__Field::__field1),
"Fullscreen" => _serde::__private228::Ok(__Field::__field2),
_ => {
_serde::__private228::Err(_serde::de::Error::unknown_variant(__value,
VARIANTS))
}
}
}
fn visit_bytes<__E>(self, __value: &[u8])
-> _serde::__private228::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
b"Windowed" => _serde::__private228::Ok(__Field::__field0),
b"BorderlessFullscreen" =>
_serde::__private228::Ok(__Field::__field1),
b"Fullscreen" =>
_serde::__private228::Ok(__Field::__field2),
_ => {
let __value =
&_serde::__private228::from_utf8_lossy(__value);
_serde::__private228::Err(_serde::de::Error::unknown_variant(__value,
VARIANTS))
}
}
}
}
#[automatically_derived]
impl<'de> _serde::Deserialize<'de> for __Field {
#[inline]
fn deserialize<__D>(__deserializer: __D)
-> _serde::__private228::Result<Self, __D::Error> where
__D: _serde::Deserializer<'de> {
_serde::Deserializer::deserialize_identifier(__deserializer,
__FieldVisitor)
}
}
#[doc(hidden)]
struct __Visitor<'de> {
marker: _serde::__private228::PhantomData<WindowMode>,
lifetime: _serde::__private228::PhantomData<&'de ()>,
}
#[automatically_derived]
impl<'de> _serde::de::Visitor<'de> for __Visitor<'de> {
type Value = WindowMode;
fn expecting(&self,
__formatter: &mut _serde::__private228::Formatter)
-> _serde::__private228::fmt::Result {
_serde::__private228::Formatter::write_str(__formatter,
"enum WindowMode")
}
fn visit_enum<__A>(self, __data: __A)
-> _serde::__private228::Result<Self::Value, __A::Error>
where __A: _serde::de::EnumAccess<'de> {
match _serde::de::EnumAccess::variant(__data)? {
(__Field::__field0, __variant) => {
_serde::de::VariantAccess::unit_variant(__variant)?;
_serde::__private228::Ok(WindowMode::Windowed)
}
(__Field::__field1, __variant) =>
_serde::__private228::Result::map(_serde::de::VariantAccess::newtype_variant::<MonitorSelection>(__variant),
WindowMode::BorderlessFullscreen),
(__Field::__field2, __variant) => {
#[doc(hidden)]
struct __Visitor<'de> {
marker: _serde::__private228::PhantomData<WindowMode>,
lifetime: _serde::__private228::PhantomData<&'de ()>,
}
#[automatically_derived]
impl<'de> _serde::de::Visitor<'de> for __Visitor<'de> {
type Value = WindowMode;
fn expecting(&self,
__formatter: &mut _serde::__private228::Formatter)
-> _serde::__private228::fmt::Result {
_serde::__private228::Formatter::write_str(__formatter,
"tuple variant WindowMode::Fullscreen")
}
#[inline]
fn visit_seq<__A>(self, mut __seq: __A)
-> _serde::__private228::Result<Self::Value, __A::Error>
where __A: _serde::de::SeqAccess<'de> {
let __field0 =
match _serde::de::SeqAccess::next_element::<MonitorSelection>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(0usize,
&"tuple variant WindowMode::Fullscreen with 2 elements")),
};
let __field1 =
match _serde::de::SeqAccess::next_element::<VideoModeSelection>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(1usize,
&"tuple variant WindowMode::Fullscreen with 2 elements")),
};
_serde::__private228::Ok(WindowMode::Fullscreen(__field0,
__field1))
}
}
_serde::de::VariantAccess::tuple_variant(__variant, 2usize,
__Visitor {
marker: _serde::__private228::PhantomData::<WindowMode>,
lifetime: _serde::__private228::PhantomData,
})
}
}
}
}
#[doc(hidden)]
const VARIANTS: &'static [&'static str] =
&["Windowed", "BorderlessFullscreen", "Fullscreen"];
_serde::Deserializer::deserialize_enum(__deserializer,
"WindowMode", VARIANTS,
__Visitor {
marker: _serde::__private228::PhantomData::<WindowMode>,
lifetime: _serde::__private228::PhantomData,
})
}
}
};serde::Deserialize))]
1338#[cfg_attr(
1339 all(feature = "serialize", feature = "bevy_reflect"),
1340 reflect(Serialize, Deserialize)
1341)]
1342pub enum WindowMode {
1343 #[default]
1345 Windowed,
1346 BorderlessFullscreen(MonitorSelection),
1358 Fullscreen(MonitorSelection, VideoModeSelection),
1367}
1368
1369#[derive(#[automatically_derived]
impl ::core::default::Default for WindowLevel {
#[inline]
fn default() -> WindowLevel { Self::Normal }
}Default, #[automatically_derived]
impl ::core::fmt::Debug for WindowLevel {
#[inline]
fn fmt(&self, f: &mut ::core::fmt::Formatter) -> ::core::fmt::Result {
::core::fmt::Formatter::write_str(f,
match self {
WindowLevel::AlwaysOnBottom => "AlwaysOnBottom",
WindowLevel::Normal => "Normal",
WindowLevel::AlwaysOnTop => "AlwaysOnTop",
})
}
}Debug, #[automatically_derived]
impl ::core::clone::Clone for WindowLevel {
#[inline]
fn clone(&self) -> WindowLevel { *self }
}Clone, #[automatically_derived]
impl ::core::marker::Copy for WindowLevel { }Copy, #[automatically_derived]
impl ::core::cmp::PartialEq for WindowLevel {
#[inline]
fn eq(&self, other: &WindowLevel) -> bool {
let __self_discr = ::core::intrinsics::discriminant_value(self);
let __arg1_discr = ::core::intrinsics::discriminant_value(other);
__self_discr == __arg1_discr
}
}PartialEq, #[automatically_derived]
impl ::core::cmp::Eq for WindowLevel {
#[inline]
#[doc(hidden)]
#[coverage(off)]
fn assert_fields_are_eq(&self) {}
}Eq)]
1380#[cfg_attr(
1381 feature = "bevy_reflect",
1382 derive(const _: () =
{
impl bevy_reflect::GetTypeRegistration for WindowLevel where {
fn get_type_registration() -> bevy_reflect::TypeRegistration {
let mut registration =
bevy_reflect::TypeRegistration::of::<Self>();
registration.insert::<bevy_reflect::ReflectFromPtr>(bevy_reflect::FromType::<Self>::from_type());
registration.insert::<bevy_reflect::ReflectFromReflect>(bevy_reflect::FromType::<Self>::from_type());
registration.register_type_data::<ReflectSerialize, Self>();
registration.register_type_data::<ReflectDeserialize, Self>();
registration
}
#[inline(never)]
fn register_type_dependencies(registry:
&mut bevy_reflect::TypeRegistry) {}
}
impl bevy_reflect::Typed for WindowLevel where {
#[inline]
fn type_info() -> &'static bevy_reflect::TypeInfo {
static CELL: bevy_reflect::utility::NonGenericTypeInfoCell =
bevy_reflect::utility::NonGenericTypeInfoCell::new();
CELL.get_or_set(||
{
bevy_reflect::TypeInfo::Enum(bevy_reflect::enums::EnumInfo::new::<Self>(&[bevy_reflect::enums::VariantInfo::Unit(bevy_reflect::enums::UnitVariantInfo::new("AlwaysOnBottom")),
bevy_reflect::enums::VariantInfo::Unit(bevy_reflect::enums::UnitVariantInfo::new("Normal")),
bevy_reflect::enums::VariantInfo::Unit(bevy_reflect::enums::UnitVariantInfo::new("AlwaysOnTop"))]))
})
}
}
#[allow(deprecated, reason =
"derives on a deprecated type shouldn't be considered a usage")]
impl bevy_reflect::TypePath for WindowLevel where {
fn type_path() -> &'static str {
"bevy_window::window::WindowLevel"
}
fn short_type_path() -> &'static str { "WindowLevel" }
fn type_ident() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("WindowLevel")
}
fn crate_name() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("bevy_window::window".split(':').next().unwrap())
}
fn module_path() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("bevy_window::window")
}
}
impl bevy_reflect::Reflect for WindowLevel where {
#[inline]
fn into_any(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn ::core::any::Any> {
self
}
#[inline]
fn as_any(&self) -> &dyn ::core::any::Any { self }
#[inline]
fn as_any_mut(&mut self) -> &mut dyn ::core::any::Any { self }
#[inline]
fn into_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect> {
self
}
#[inline]
fn as_reflect(&self) -> &dyn bevy_reflect::Reflect { self }
#[inline]
fn as_reflect_mut(&mut self) -> &mut dyn bevy_reflect::Reflect {
self
}
#[inline]
fn set(&mut self,
value:
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>)
->
::core::result::Result<(),
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>> {
*self = <dyn bevy_reflect::Reflect>::take(value)?;
::core::result::Result::Ok(())
}
}
#[allow(non_upper_case_globals)]
const _: () =
{
static __INVENTORY: ::inventory::Node =
::inventory::Node {
value: &{
bevy_reflect::__macro_exports::auto_register::AutomaticReflectRegistrations(<WindowLevel
as
bevy_reflect::__macro_exports::auto_register::RegisterForReflection>::__register)
},
next: ::inventory::__private::UnsafeCell::new(::inventory::__private::Option::None),
};
#[link_section = ".text.startup"]
unsafe extern "C" fn __ctor() {
unsafe {
::inventory::ErasedNode::submit(__INVENTORY.value,
&__INVENTORY)
}
}
#[used]
#[link_section = ".init_array"]
static __CTOR: unsafe extern "C" fn() = __ctor;
};
impl bevy_reflect::enums::Enum for WindowLevel where {
fn field(&self, __name_param: &str)
-> ::core::option::Option<&dyn bevy_reflect::PartialReflect> {
match self { _ => ::core::option::Option::None, }
}
fn field_at(&self, __index_param: usize)
-> ::core::option::Option<&dyn bevy_reflect::PartialReflect> {
match self { _ => ::core::option::Option::None, }
}
fn field_mut(&mut self, __name_param: &str)
->
::core::option::Option<&mut dyn bevy_reflect::PartialReflect> {
match self { _ => ::core::option::Option::None, }
}
fn field_at_mut(&mut self, __index_param: usize)
->
::core::option::Option<&mut dyn bevy_reflect::PartialReflect> {
match self { _ => ::core::option::Option::None, }
}
fn index_of(&self, __name_param: &str)
-> ::core::option::Option<usize> {
match self { _ => ::core::option::Option::None, }
}
fn name_at(&self, __index_param: usize)
-> ::core::option::Option<&str> {
match self { _ => ::core::option::Option::None, }
}
fn iter_fields(&self) -> bevy_reflect::enums::VariantFieldIter {
bevy_reflect::enums::VariantFieldIter::new(self)
}
#[inline]
fn field_len(&self) -> usize {
match self {
WindowLevel::AlwaysOnBottom { .. } => 0usize,
WindowLevel::Normal { .. } => 0usize,
WindowLevel::AlwaysOnTop { .. } => 0usize,
_ => 0,
}
}
#[inline]
fn variant_name(&self) -> &str {
match self {
WindowLevel::AlwaysOnBottom { .. } => "AlwaysOnBottom",
WindowLevel::Normal { .. } => "Normal",
WindowLevel::AlwaysOnTop { .. } => "AlwaysOnTop",
_ =>
::core::panicking::panic("internal error: entered unreachable code"),
}
}
#[inline]
fn variant_index(&self) -> usize {
match self {
WindowLevel::AlwaysOnBottom { .. } => 0usize,
WindowLevel::Normal { .. } => 1usize,
WindowLevel::AlwaysOnTop { .. } => 2usize,
_ =>
::core::panicking::panic("internal error: entered unreachable code"),
}
}
#[inline]
fn variant_type(&self) -> bevy_reflect::enums::VariantType {
match self {
WindowLevel::AlwaysOnBottom { .. } =>
bevy_reflect::enums::VariantType::Unit,
WindowLevel::Normal { .. } =>
bevy_reflect::enums::VariantType::Unit,
WindowLevel::AlwaysOnTop { .. } =>
bevy_reflect::enums::VariantType::Unit,
_ =>
::core::panicking::panic("internal error: entered unreachable code"),
}
}
fn to_dynamic_enum(&self) -> bevy_reflect::enums::DynamicEnum {
bevy_reflect::enums::DynamicEnum::from_ref::<Self>(self)
}
}
impl bevy_reflect::PartialReflect for WindowLevel where {
#[inline]
fn get_represented_type_info(&self)
-> ::core::option::Option<&'static bevy_reflect::TypeInfo> {
::core::option::Option::Some(<Self as
bevy_reflect::Typed>::type_info())
}
#[inline]
fn try_apply(&mut self,
__value_param: &dyn bevy_reflect::PartialReflect)
-> ::core::result::Result<(), bevy_reflect::ApplyError> {
if let bevy_reflect::ReflectRef::Enum(__value_param) =
bevy_reflect::PartialReflect::reflect_ref(__value_param) {
if bevy_reflect::enums::Enum::variant_name(self) ==
bevy_reflect::enums::Enum::variant_name(__value_param) {
match bevy_reflect::enums::Enum::variant_type(__value_param)
{
bevy_reflect::enums::VariantType::Struct => {
for field in
bevy_reflect::enums::Enum::iter_fields(__value_param) {
let name = field.name().unwrap();
if let ::core::option::Option::Some(v) =
bevy_reflect::enums::Enum::field_mut(self, name) {
bevy_reflect::PartialReflect::try_apply(v, field.value())?;
}
}
}
bevy_reflect::enums::VariantType::Tuple => {
for (index, field) in
::core::iter::Iterator::enumerate(bevy_reflect::enums::Enum::iter_fields(__value_param))
{
if let ::core::option::Option::Some(v) =
bevy_reflect::enums::Enum::field_at_mut(self, index) {
bevy_reflect::PartialReflect::try_apply(v, field.value())?;
}
}
}
_ => {}
}
} else {
match bevy_reflect::enums::Enum::variant_name(__value_param)
{
"AlwaysOnBottom" => {
*self = WindowLevel::AlwaysOnBottom {}
}
"Normal" => { *self = WindowLevel::Normal {} }
"AlwaysOnTop" => { *self = WindowLevel::AlwaysOnTop {} }
name => {
return ::core::result::Result::Err(bevy_reflect::ApplyError::UnknownVariant {
enum_name: ::core::convert::Into::into(bevy_reflect::DynamicTypePath::reflect_type_path(self)),
variant_name: ::core::convert::Into::into(name),
});
}
}
}
} else {
return ::core::result::Result::Err(bevy_reflect::ApplyError::MismatchedKinds {
from_kind: bevy_reflect::PartialReflect::reflect_kind(__value_param),
to_kind: bevy_reflect::ReflectKind::Enum,
});
}
::core::result::Result::Ok(())
}
fn reflect_kind(&self) -> bevy_reflect::ReflectKind {
bevy_reflect::ReflectKind::Enum
}
fn reflect_ref(&self) -> bevy_reflect::ReflectRef {
bevy_reflect::ReflectRef::Enum(self)
}
fn reflect_mut(&mut self) -> bevy_reflect::ReflectMut {
bevy_reflect::ReflectMut::Enum(self)
}
fn reflect_owned(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
-> bevy_reflect::ReflectOwned {
bevy_reflect::ReflectOwned::Enum(self)
}
#[inline]
fn try_into_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
::core::result::Result<bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>,
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::PartialReflect>> {
::core::result::Result::Ok(self)
}
#[inline]
fn try_as_reflect(&self)
-> ::core::option::Option<&dyn bevy_reflect::Reflect> {
::core::option::Option::Some(self)
}
#[inline]
fn try_as_reflect_mut(&mut self)
-> ::core::option::Option<&mut dyn bevy_reflect::Reflect> {
::core::option::Option::Some(self)
}
#[inline]
fn into_partial_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::PartialReflect> {
self
}
#[inline]
fn as_partial_reflect(&self)
-> &dyn bevy_reflect::PartialReflect {
self
}
#[inline]
fn as_partial_reflect_mut(&mut self)
-> &mut dyn bevy_reflect::PartialReflect {
self
}
fn reflect_hash(&self) -> ::core::option::Option<u64> {
(bevy_reflect::enums::enum_hash)(self)
}
fn reflect_partial_eq(&self,
value: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<bool> {
let value =
<dyn bevy_reflect::PartialReflect>::try_downcast_ref::<Self>(value);
if let ::core::option::Option::Some(value) = value {
::core::option::Option::Some(::core::cmp::PartialEq::eq(self,
value))
} else { ::core::option::Option::Some(false) }
}
fn reflect_partial_cmp(&self,
value: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<::core::cmp::Ordering> {
(bevy_reflect::enums::enum_partial_cmp)(self, value)
}
fn debug(&self, f: &mut ::core::fmt::Formatter<'_>)
-> ::core::fmt::Result {
::core::fmt::Debug::fmt(self, f)
}
#[inline]
fn reflect_clone(&self)
->
::core::result::Result<bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>,
bevy_reflect::ReflectCloneError> {
::core::result::Result::Ok(bevy_reflect::__macro_exports::alloc_utils::Box::new(::core::clone::Clone::clone(self)))
}
}
impl bevy_reflect::FromReflect for WindowLevel where {
fn from_reflect(__param0: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<Self> {
if let bevy_reflect::ReflectRef::Enum(__param0) =
bevy_reflect::PartialReflect::reflect_ref(__param0) {
match bevy_reflect::enums::Enum::variant_name(__param0) {
"AlwaysOnBottom" =>
::core::option::Option::Some(WindowLevel::AlwaysOnBottom {}),
"Normal" =>
::core::option::Option::Some(WindowLevel::Normal {}),
"AlwaysOnTop" =>
::core::option::Option::Some(WindowLevel::AlwaysOnTop {}),
name => ::core::option::Option::None,
}
} else { ::core::option::Option::None }
}
}
};Reflect),
1383 reflect(Debug, PartialEq, Clone)
1384)]
1385#[cfg_attr(feature = "serialize", derive(#[doc(hidden)]
#[allow(non_upper_case_globals, unused_attributes, unused_qualifications,
clippy :: absolute_paths,)]
const _: () =
{
#[allow(unused_extern_crates, clippy :: useless_attribute)]
extern crate serde as _serde;
;
#[automatically_derived]
impl _serde::Serialize for WindowLevel {
fn serialize<__S>(&self, __serializer: __S)
-> _serde::__private228::Result<__S::Ok, __S::Error> where
__S: _serde::Serializer {
match *self {
WindowLevel::AlwaysOnBottom =>
_serde::Serializer::serialize_unit_variant(__serializer,
"WindowLevel", 0u32, "AlwaysOnBottom"),
WindowLevel::Normal =>
_serde::Serializer::serialize_unit_variant(__serializer,
"WindowLevel", 1u32, "Normal"),
WindowLevel::AlwaysOnTop =>
_serde::Serializer::serialize_unit_variant(__serializer,
"WindowLevel", 2u32, "AlwaysOnTop"),
}
}
}
};serde::Serialize, #[doc(hidden)]
#[allow(non_upper_case_globals, unused_attributes, unused_qualifications,
clippy :: absolute_paths,)]
const _: () =
{
#[allow(unused_extern_crates, clippy :: useless_attribute)]
extern crate serde as _serde;
;
#[automatically_derived]
impl<'de> _serde::Deserialize<'de> for WindowLevel {
fn deserialize<__D>(__deserializer: __D)
-> _serde::__private228::Result<Self, __D::Error> where
__D: _serde::Deserializer<'de> {
#[allow(non_camel_case_types)]
#[doc(hidden)]
enum __Field { __field0, __field1, __field2, }
#[doc(hidden)]
struct __FieldVisitor;
#[automatically_derived]
impl<'de> _serde::de::Visitor<'de> for __FieldVisitor {
type Value = __Field;
fn expecting(&self,
__formatter: &mut _serde::__private228::Formatter)
-> _serde::__private228::fmt::Result {
_serde::__private228::Formatter::write_str(__formatter,
"variant identifier")
}
fn visit_u64<__E>(self, __value: u64)
-> _serde::__private228::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
0u64 => _serde::__private228::Ok(__Field::__field0),
1u64 => _serde::__private228::Ok(__Field::__field1),
2u64 => _serde::__private228::Ok(__Field::__field2),
_ =>
_serde::__private228::Err(_serde::de::Error::invalid_value(_serde::de::Unexpected::Unsigned(__value),
&"variant index 0 <= i < 3")),
}
}
fn visit_str<__E>(self, __value: &str)
-> _serde::__private228::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
"AlwaysOnBottom" =>
_serde::__private228::Ok(__Field::__field0),
"Normal" => _serde::__private228::Ok(__Field::__field1),
"AlwaysOnTop" =>
_serde::__private228::Ok(__Field::__field2),
_ => {
_serde::__private228::Err(_serde::de::Error::unknown_variant(__value,
VARIANTS))
}
}
}
fn visit_bytes<__E>(self, __value: &[u8])
-> _serde::__private228::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
b"AlwaysOnBottom" =>
_serde::__private228::Ok(__Field::__field0),
b"Normal" => _serde::__private228::Ok(__Field::__field1),
b"AlwaysOnTop" =>
_serde::__private228::Ok(__Field::__field2),
_ => {
let __value =
&_serde::__private228::from_utf8_lossy(__value);
_serde::__private228::Err(_serde::de::Error::unknown_variant(__value,
VARIANTS))
}
}
}
}
#[automatically_derived]
impl<'de> _serde::Deserialize<'de> for __Field {
#[inline]
fn deserialize<__D>(__deserializer: __D)
-> _serde::__private228::Result<Self, __D::Error> where
__D: _serde::Deserializer<'de> {
_serde::Deserializer::deserialize_identifier(__deserializer,
__FieldVisitor)
}
}
#[doc(hidden)]
struct __Visitor<'de> {
marker: _serde::__private228::PhantomData<WindowLevel>,
lifetime: _serde::__private228::PhantomData<&'de ()>,
}
#[automatically_derived]
impl<'de> _serde::de::Visitor<'de> for __Visitor<'de> {
type Value = WindowLevel;
fn expecting(&self,
__formatter: &mut _serde::__private228::Formatter)
-> _serde::__private228::fmt::Result {
_serde::__private228::Formatter::write_str(__formatter,
"enum WindowLevel")
}
fn visit_enum<__A>(self, __data: __A)
-> _serde::__private228::Result<Self::Value, __A::Error>
where __A: _serde::de::EnumAccess<'de> {
match _serde::de::EnumAccess::variant(__data)? {
(__Field::__field0, __variant) => {
_serde::de::VariantAccess::unit_variant(__variant)?;
_serde::__private228::Ok(WindowLevel::AlwaysOnBottom)
}
(__Field::__field1, __variant) => {
_serde::de::VariantAccess::unit_variant(__variant)?;
_serde::__private228::Ok(WindowLevel::Normal)
}
(__Field::__field2, __variant) => {
_serde::de::VariantAccess::unit_variant(__variant)?;
_serde::__private228::Ok(WindowLevel::AlwaysOnTop)
}
}
}
}
#[doc(hidden)]
const VARIANTS: &'static [&'static str] =
&["AlwaysOnBottom", "Normal", "AlwaysOnTop"];
_serde::Deserializer::deserialize_enum(__deserializer,
"WindowLevel", VARIANTS,
__Visitor {
marker: _serde::__private228::PhantomData::<WindowLevel>,
lifetime: _serde::__private228::PhantomData,
})
}
}
};serde::Deserialize))]
1386#[cfg_attr(
1387 all(feature = "serialize", feature = "bevy_reflect"),
1388 reflect(Serialize, Deserialize)
1389)]
1390pub enum WindowLevel {
1391 AlwaysOnBottom,
1395 #[default]
1397 Normal,
1398 AlwaysOnTop,
1400}
1401
1402#[derive(#[automatically_derived]
impl ::core::fmt::Debug for WindowTheme {
#[inline]
fn fmt(&self, f: &mut ::core::fmt::Formatter) -> ::core::fmt::Result {
::core::fmt::Formatter::write_str(f,
match self {
WindowTheme::Light => "Light",
WindowTheme::Dark => "Dark",
})
}
}Debug, #[automatically_derived]
impl ::core::clone::Clone for WindowTheme {
#[inline]
fn clone(&self) -> WindowTheme { *self }
}Clone, #[automatically_derived]
impl ::core::marker::Copy for WindowTheme { }Copy, #[automatically_derived]
impl ::core::cmp::PartialEq for WindowTheme {
#[inline]
fn eq(&self, other: &WindowTheme) -> bool {
let __self_discr = ::core::intrinsics::discriminant_value(self);
let __arg1_discr = ::core::intrinsics::discriminant_value(other);
__self_discr == __arg1_discr
}
}PartialEq, #[automatically_derived]
impl ::core::cmp::Eq for WindowTheme {
#[inline]
#[doc(hidden)]
#[coverage(off)]
fn assert_fields_are_eq(&self) {}
}Eq)]
1404#[cfg_attr(
1405 feature = "bevy_reflect",
1406 derive(const _: () =
{
impl bevy_reflect::GetTypeRegistration for WindowTheme where {
fn get_type_registration() -> bevy_reflect::TypeRegistration {
let mut registration =
bevy_reflect::TypeRegistration::of::<Self>();
registration.insert::<bevy_reflect::ReflectFromPtr>(bevy_reflect::FromType::<Self>::from_type());
registration.insert::<bevy_reflect::ReflectFromReflect>(bevy_reflect::FromType::<Self>::from_type());
registration.register_type_data::<ReflectSerialize, Self>();
registration.register_type_data::<ReflectDeserialize, Self>();
registration
}
#[inline(never)]
fn register_type_dependencies(registry:
&mut bevy_reflect::TypeRegistry) {}
}
impl bevy_reflect::Typed for WindowTheme where {
#[inline]
fn type_info() -> &'static bevy_reflect::TypeInfo {
static CELL: bevy_reflect::utility::NonGenericTypeInfoCell =
bevy_reflect::utility::NonGenericTypeInfoCell::new();
CELL.get_or_set(||
{
bevy_reflect::TypeInfo::Enum(bevy_reflect::enums::EnumInfo::new::<Self>(&[bevy_reflect::enums::VariantInfo::Unit(bevy_reflect::enums::UnitVariantInfo::new("Light")),
bevy_reflect::enums::VariantInfo::Unit(bevy_reflect::enums::UnitVariantInfo::new("Dark"))]))
})
}
}
#[allow(deprecated, reason =
"derives on a deprecated type shouldn't be considered a usage")]
impl bevy_reflect::TypePath for WindowTheme where {
fn type_path() -> &'static str {
"bevy_window::window::WindowTheme"
}
fn short_type_path() -> &'static str { "WindowTheme" }
fn type_ident() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("WindowTheme")
}
fn crate_name() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("bevy_window::window".split(':').next().unwrap())
}
fn module_path() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("bevy_window::window")
}
}
impl bevy_reflect::Reflect for WindowTheme where {
#[inline]
fn into_any(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn ::core::any::Any> {
self
}
#[inline]
fn as_any(&self) -> &dyn ::core::any::Any { self }
#[inline]
fn as_any_mut(&mut self) -> &mut dyn ::core::any::Any { self }
#[inline]
fn into_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect> {
self
}
#[inline]
fn as_reflect(&self) -> &dyn bevy_reflect::Reflect { self }
#[inline]
fn as_reflect_mut(&mut self) -> &mut dyn bevy_reflect::Reflect {
self
}
#[inline]
fn set(&mut self,
value:
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>)
->
::core::result::Result<(),
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>> {
*self = <dyn bevy_reflect::Reflect>::take(value)?;
::core::result::Result::Ok(())
}
}
#[allow(non_upper_case_globals)]
const _: () =
{
static __INVENTORY: ::inventory::Node =
::inventory::Node {
value: &{
bevy_reflect::__macro_exports::auto_register::AutomaticReflectRegistrations(<WindowTheme
as
bevy_reflect::__macro_exports::auto_register::RegisterForReflection>::__register)
},
next: ::inventory::__private::UnsafeCell::new(::inventory::__private::Option::None),
};
#[link_section = ".text.startup"]
unsafe extern "C" fn __ctor() {
unsafe {
::inventory::ErasedNode::submit(__INVENTORY.value,
&__INVENTORY)
}
}
#[used]
#[link_section = ".init_array"]
static __CTOR: unsafe extern "C" fn() = __ctor;
};
impl bevy_reflect::enums::Enum for WindowTheme where {
fn field(&self, __name_param: &str)
-> ::core::option::Option<&dyn bevy_reflect::PartialReflect> {
match self { _ => ::core::option::Option::None, }
}
fn field_at(&self, __index_param: usize)
-> ::core::option::Option<&dyn bevy_reflect::PartialReflect> {
match self { _ => ::core::option::Option::None, }
}
fn field_mut(&mut self, __name_param: &str)
->
::core::option::Option<&mut dyn bevy_reflect::PartialReflect> {
match self { _ => ::core::option::Option::None, }
}
fn field_at_mut(&mut self, __index_param: usize)
->
::core::option::Option<&mut dyn bevy_reflect::PartialReflect> {
match self { _ => ::core::option::Option::None, }
}
fn index_of(&self, __name_param: &str)
-> ::core::option::Option<usize> {
match self { _ => ::core::option::Option::None, }
}
fn name_at(&self, __index_param: usize)
-> ::core::option::Option<&str> {
match self { _ => ::core::option::Option::None, }
}
fn iter_fields(&self) -> bevy_reflect::enums::VariantFieldIter {
bevy_reflect::enums::VariantFieldIter::new(self)
}
#[inline]
fn field_len(&self) -> usize {
match self {
WindowTheme::Light { .. } => 0usize,
WindowTheme::Dark { .. } => 0usize,
_ => 0,
}
}
#[inline]
fn variant_name(&self) -> &str {
match self {
WindowTheme::Light { .. } => "Light",
WindowTheme::Dark { .. } => "Dark",
_ =>
::core::panicking::panic("internal error: entered unreachable code"),
}
}
#[inline]
fn variant_index(&self) -> usize {
match self {
WindowTheme::Light { .. } => 0usize,
WindowTheme::Dark { .. } => 1usize,
_ =>
::core::panicking::panic("internal error: entered unreachable code"),
}
}
#[inline]
fn variant_type(&self) -> bevy_reflect::enums::VariantType {
match self {
WindowTheme::Light { .. } =>
bevy_reflect::enums::VariantType::Unit,
WindowTheme::Dark { .. } =>
bevy_reflect::enums::VariantType::Unit,
_ =>
::core::panicking::panic("internal error: entered unreachable code"),
}
}
fn to_dynamic_enum(&self) -> bevy_reflect::enums::DynamicEnum {
bevy_reflect::enums::DynamicEnum::from_ref::<Self>(self)
}
}
impl bevy_reflect::PartialReflect for WindowTheme where {
#[inline]
fn get_represented_type_info(&self)
-> ::core::option::Option<&'static bevy_reflect::TypeInfo> {
::core::option::Option::Some(<Self as
bevy_reflect::Typed>::type_info())
}
#[inline]
fn try_apply(&mut self,
__value_param: &dyn bevy_reflect::PartialReflect)
-> ::core::result::Result<(), bevy_reflect::ApplyError> {
if let bevy_reflect::ReflectRef::Enum(__value_param) =
bevy_reflect::PartialReflect::reflect_ref(__value_param) {
if bevy_reflect::enums::Enum::variant_name(self) ==
bevy_reflect::enums::Enum::variant_name(__value_param) {
match bevy_reflect::enums::Enum::variant_type(__value_param)
{
bevy_reflect::enums::VariantType::Struct => {
for field in
bevy_reflect::enums::Enum::iter_fields(__value_param) {
let name = field.name().unwrap();
if let ::core::option::Option::Some(v) =
bevy_reflect::enums::Enum::field_mut(self, name) {
bevy_reflect::PartialReflect::try_apply(v, field.value())?;
}
}
}
bevy_reflect::enums::VariantType::Tuple => {
for (index, field) in
::core::iter::Iterator::enumerate(bevy_reflect::enums::Enum::iter_fields(__value_param))
{
if let ::core::option::Option::Some(v) =
bevy_reflect::enums::Enum::field_at_mut(self, index) {
bevy_reflect::PartialReflect::try_apply(v, field.value())?;
}
}
}
_ => {}
}
} else {
match bevy_reflect::enums::Enum::variant_name(__value_param)
{
"Light" => { *self = WindowTheme::Light {} }
"Dark" => { *self = WindowTheme::Dark {} }
name => {
return ::core::result::Result::Err(bevy_reflect::ApplyError::UnknownVariant {
enum_name: ::core::convert::Into::into(bevy_reflect::DynamicTypePath::reflect_type_path(self)),
variant_name: ::core::convert::Into::into(name),
});
}
}
}
} else {
return ::core::result::Result::Err(bevy_reflect::ApplyError::MismatchedKinds {
from_kind: bevy_reflect::PartialReflect::reflect_kind(__value_param),
to_kind: bevy_reflect::ReflectKind::Enum,
});
}
::core::result::Result::Ok(())
}
fn reflect_kind(&self) -> bevy_reflect::ReflectKind {
bevy_reflect::ReflectKind::Enum
}
fn reflect_ref(&self) -> bevy_reflect::ReflectRef {
bevy_reflect::ReflectRef::Enum(self)
}
fn reflect_mut(&mut self) -> bevy_reflect::ReflectMut {
bevy_reflect::ReflectMut::Enum(self)
}
fn reflect_owned(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
-> bevy_reflect::ReflectOwned {
bevy_reflect::ReflectOwned::Enum(self)
}
#[inline]
fn try_into_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
::core::result::Result<bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>,
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::PartialReflect>> {
::core::result::Result::Ok(self)
}
#[inline]
fn try_as_reflect(&self)
-> ::core::option::Option<&dyn bevy_reflect::Reflect> {
::core::option::Option::Some(self)
}
#[inline]
fn try_as_reflect_mut(&mut self)
-> ::core::option::Option<&mut dyn bevy_reflect::Reflect> {
::core::option::Option::Some(self)
}
#[inline]
fn into_partial_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::PartialReflect> {
self
}
#[inline]
fn as_partial_reflect(&self)
-> &dyn bevy_reflect::PartialReflect {
self
}
#[inline]
fn as_partial_reflect_mut(&mut self)
-> &mut dyn bevy_reflect::PartialReflect {
self
}
fn reflect_hash(&self) -> ::core::option::Option<u64> {
(bevy_reflect::enums::enum_hash)(self)
}
fn reflect_partial_eq(&self,
value: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<bool> {
let value =
<dyn bevy_reflect::PartialReflect>::try_downcast_ref::<Self>(value);
if let ::core::option::Option::Some(value) = value {
::core::option::Option::Some(::core::cmp::PartialEq::eq(self,
value))
} else { ::core::option::Option::Some(false) }
}
fn reflect_partial_cmp(&self,
value: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<::core::cmp::Ordering> {
(bevy_reflect::enums::enum_partial_cmp)(self, value)
}
fn debug(&self, f: &mut ::core::fmt::Formatter<'_>)
-> ::core::fmt::Result {
::core::fmt::Debug::fmt(self, f)
}
#[inline]
fn reflect_clone(&self)
->
::core::result::Result<bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>,
bevy_reflect::ReflectCloneError> {
::core::result::Result::Ok(bevy_reflect::__macro_exports::alloc_utils::Box::new(::core::clone::Clone::clone(self)))
}
}
impl bevy_reflect::FromReflect for WindowTheme where {
fn from_reflect(__param0: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<Self> {
if let bevy_reflect::ReflectRef::Enum(__param0) =
bevy_reflect::PartialReflect::reflect_ref(__param0) {
match bevy_reflect::enums::Enum::variant_name(__param0) {
"Light" =>
::core::option::Option::Some(WindowTheme::Light {}),
"Dark" =>
::core::option::Option::Some(WindowTheme::Dark {}),
name => ::core::option::Option::None,
}
} else { ::core::option::Option::None }
}
}
};Reflect),
1407 reflect(Debug, PartialEq, Clone)
1408)]
1409#[cfg_attr(feature = "serialize", derive(#[doc(hidden)]
#[allow(non_upper_case_globals, unused_attributes, unused_qualifications,
clippy :: absolute_paths,)]
const _: () =
{
#[allow(unused_extern_crates, clippy :: useless_attribute)]
extern crate serde as _serde;
;
#[automatically_derived]
impl _serde::Serialize for WindowTheme {
fn serialize<__S>(&self, __serializer: __S)
-> _serde::__private228::Result<__S::Ok, __S::Error> where
__S: _serde::Serializer {
match *self {
WindowTheme::Light =>
_serde::Serializer::serialize_unit_variant(__serializer,
"WindowTheme", 0u32, "Light"),
WindowTheme::Dark =>
_serde::Serializer::serialize_unit_variant(__serializer,
"WindowTheme", 1u32, "Dark"),
}
}
}
};serde::Serialize, #[doc(hidden)]
#[allow(non_upper_case_globals, unused_attributes, unused_qualifications,
clippy :: absolute_paths,)]
const _: () =
{
#[allow(unused_extern_crates, clippy :: useless_attribute)]
extern crate serde as _serde;
;
#[automatically_derived]
impl<'de> _serde::Deserialize<'de> for WindowTheme {
fn deserialize<__D>(__deserializer: __D)
-> _serde::__private228::Result<Self, __D::Error> where
__D: _serde::Deserializer<'de> {
#[allow(non_camel_case_types)]
#[doc(hidden)]
enum __Field { __field0, __field1, }
#[doc(hidden)]
struct __FieldVisitor;
#[automatically_derived]
impl<'de> _serde::de::Visitor<'de> for __FieldVisitor {
type Value = __Field;
fn expecting(&self,
__formatter: &mut _serde::__private228::Formatter)
-> _serde::__private228::fmt::Result {
_serde::__private228::Formatter::write_str(__formatter,
"variant identifier")
}
fn visit_u64<__E>(self, __value: u64)
-> _serde::__private228::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
0u64 => _serde::__private228::Ok(__Field::__field0),
1u64 => _serde::__private228::Ok(__Field::__field1),
_ =>
_serde::__private228::Err(_serde::de::Error::invalid_value(_serde::de::Unexpected::Unsigned(__value),
&"variant index 0 <= i < 2")),
}
}
fn visit_str<__E>(self, __value: &str)
-> _serde::__private228::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
"Light" => _serde::__private228::Ok(__Field::__field0),
"Dark" => _serde::__private228::Ok(__Field::__field1),
_ => {
_serde::__private228::Err(_serde::de::Error::unknown_variant(__value,
VARIANTS))
}
}
}
fn visit_bytes<__E>(self, __value: &[u8])
-> _serde::__private228::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
b"Light" => _serde::__private228::Ok(__Field::__field0),
b"Dark" => _serde::__private228::Ok(__Field::__field1),
_ => {
let __value =
&_serde::__private228::from_utf8_lossy(__value);
_serde::__private228::Err(_serde::de::Error::unknown_variant(__value,
VARIANTS))
}
}
}
}
#[automatically_derived]
impl<'de> _serde::Deserialize<'de> for __Field {
#[inline]
fn deserialize<__D>(__deserializer: __D)
-> _serde::__private228::Result<Self, __D::Error> where
__D: _serde::Deserializer<'de> {
_serde::Deserializer::deserialize_identifier(__deserializer,
__FieldVisitor)
}
}
#[doc(hidden)]
struct __Visitor<'de> {
marker: _serde::__private228::PhantomData<WindowTheme>,
lifetime: _serde::__private228::PhantomData<&'de ()>,
}
#[automatically_derived]
impl<'de> _serde::de::Visitor<'de> for __Visitor<'de> {
type Value = WindowTheme;
fn expecting(&self,
__formatter: &mut _serde::__private228::Formatter)
-> _serde::__private228::fmt::Result {
_serde::__private228::Formatter::write_str(__formatter,
"enum WindowTheme")
}
fn visit_enum<__A>(self, __data: __A)
-> _serde::__private228::Result<Self::Value, __A::Error>
where __A: _serde::de::EnumAccess<'de> {
match _serde::de::EnumAccess::variant(__data)? {
(__Field::__field0, __variant) => {
_serde::de::VariantAccess::unit_variant(__variant)?;
_serde::__private228::Ok(WindowTheme::Light)
}
(__Field::__field1, __variant) => {
_serde::de::VariantAccess::unit_variant(__variant)?;
_serde::__private228::Ok(WindowTheme::Dark)
}
}
}
}
#[doc(hidden)]
const VARIANTS: &'static [&'static str] = &["Light", "Dark"];
_serde::Deserializer::deserialize_enum(__deserializer,
"WindowTheme", VARIANTS,
__Visitor {
marker: _serde::__private228::PhantomData::<WindowTheme>,
lifetime: _serde::__private228::PhantomData,
})
}
}
};serde::Deserialize))]
1410#[cfg_attr(
1411 all(feature = "serialize", feature = "bevy_reflect"),
1412 reflect(Serialize, Deserialize)
1413)]
1414pub enum WindowTheme {
1415 Light,
1417
1418 Dark,
1420}
1421
1422#[derive(#[automatically_derived]
impl ::core::fmt::Debug for EnabledButtons {
#[inline]
fn fmt(&self, f: &mut ::core::fmt::Formatter) -> ::core::fmt::Result {
::core::fmt::Formatter::debug_struct_field3_finish(f,
"EnabledButtons", "minimize", &self.minimize, "maximize",
&self.maximize, "close", &&self.close)
}
}Debug, #[automatically_derived]
impl ::core::marker::Copy for EnabledButtons { }Copy, #[automatically_derived]
impl ::core::clone::Clone for EnabledButtons {
#[inline]
fn clone(&self) -> EnabledButtons {
let _: ::core::clone::AssertParamIsClone<bool>;
*self
}
}Clone, #[automatically_derived]
impl ::core::cmp::PartialEq for EnabledButtons {
#[inline]
fn eq(&self, other: &EnabledButtons) -> bool {
self.minimize == other.minimize && self.maximize == other.maximize &&
self.close == other.close
}
}PartialEq)]
1430#[cfg_attr(
1431 feature = "bevy_reflect",
1432 derive(const _: () =
{
impl bevy_reflect::GetTypeRegistration for EnabledButtons where {
fn get_type_registration() -> bevy_reflect::TypeRegistration {
let mut registration =
bevy_reflect::TypeRegistration::of::<Self>();
registration.insert::<bevy_reflect::ReflectFromPtr>(bevy_reflect::FromType::<Self>::from_type());
registration.insert::<bevy_reflect::ReflectFromReflect>(bevy_reflect::FromType::<Self>::from_type());
registration.register_type_data::<ReflectDefault, Self>();
registration.register_type_data::<ReflectSerialize, Self>();
registration.register_type_data::<ReflectDeserialize, Self>();
registration
}
#[inline(never)]
fn register_type_dependencies(registry:
&mut bevy_reflect::TypeRegistry) {
<bool as
bevy_reflect::__macro_exports::RegisterForReflection>::__register(registry);
}
}
impl bevy_reflect::Typed for EnabledButtons where {
#[inline]
fn type_info() -> &'static bevy_reflect::TypeInfo {
static CELL: bevy_reflect::utility::NonGenericTypeInfoCell =
bevy_reflect::utility::NonGenericTypeInfoCell::new();
CELL.get_or_set(||
{
bevy_reflect::TypeInfo::Struct(bevy_reflect::structs::StructInfo::new::<Self>(&[bevy_reflect::NamedField::new::<bool>("minimize"),
bevy_reflect::NamedField::new::<bool>("maximize"),
bevy_reflect::NamedField::new::<bool>("close")]))
})
}
}
#[allow(deprecated, reason =
"derives on a deprecated type shouldn't be considered a usage")]
impl bevy_reflect::TypePath for EnabledButtons where {
fn type_path() -> &'static str {
"bevy_window::window::EnabledButtons"
}
fn short_type_path() -> &'static str { "EnabledButtons" }
fn type_ident() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("EnabledButtons")
}
fn crate_name() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("bevy_window::window".split(':').next().unwrap())
}
fn module_path() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("bevy_window::window")
}
}
impl bevy_reflect::Reflect for EnabledButtons where {
#[inline]
fn into_any(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn ::core::any::Any> {
self
}
#[inline]
fn as_any(&self) -> &dyn ::core::any::Any { self }
#[inline]
fn as_any_mut(&mut self) -> &mut dyn ::core::any::Any { self }
#[inline]
fn into_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect> {
self
}
#[inline]
fn as_reflect(&self) -> &dyn bevy_reflect::Reflect { self }
#[inline]
fn as_reflect_mut(&mut self) -> &mut dyn bevy_reflect::Reflect {
self
}
#[inline]
fn set(&mut self,
value:
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>)
->
::core::result::Result<(),
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>> {
*self = <dyn bevy_reflect::Reflect>::take(value)?;
::core::result::Result::Ok(())
}
}
#[allow(non_upper_case_globals)]
const _: () =
{
static __INVENTORY: ::inventory::Node =
::inventory::Node {
value: &{
bevy_reflect::__macro_exports::auto_register::AutomaticReflectRegistrations(<EnabledButtons
as
bevy_reflect::__macro_exports::auto_register::RegisterForReflection>::__register)
},
next: ::inventory::__private::UnsafeCell::new(::inventory::__private::Option::None),
};
#[link_section = ".text.startup"]
unsafe extern "C" fn __ctor() {
unsafe {
::inventory::ErasedNode::submit(__INVENTORY.value,
&__INVENTORY)
}
}
#[used]
#[link_section = ".init_array"]
static __CTOR: unsafe extern "C" fn() = __ctor;
};
impl bevy_reflect::structs::Struct for EnabledButtons where {
fn field(&self, name: &str)
-> ::core::option::Option<&dyn bevy_reflect::PartialReflect> {
match name {
"minimize" => ::core::option::Option::Some(&self.minimize),
"maximize" => ::core::option::Option::Some(&self.maximize),
"close" => ::core::option::Option::Some(&self.close),
_ => ::core::option::Option::None,
}
}
fn field_mut(&mut self, name: &str)
->
::core::option::Option<&mut dyn bevy_reflect::PartialReflect> {
match name {
"minimize" =>
::core::option::Option::Some(&mut self.minimize),
"maximize" =>
::core::option::Option::Some(&mut self.maximize),
"close" => ::core::option::Option::Some(&mut self.close),
_ => ::core::option::Option::None,
}
}
fn field_at(&self, index: usize)
-> ::core::option::Option<&dyn bevy_reflect::PartialReflect> {
match index {
0usize => ::core::option::Option::Some(&self.minimize),
1usize => ::core::option::Option::Some(&self.maximize),
2usize => ::core::option::Option::Some(&self.close),
_ => ::core::option::Option::None,
}
}
fn field_at_mut(&mut self, index: usize)
->
::core::option::Option<&mut dyn bevy_reflect::PartialReflect> {
match index {
0usize => ::core::option::Option::Some(&mut self.minimize),
1usize => ::core::option::Option::Some(&mut self.maximize),
2usize => ::core::option::Option::Some(&mut self.close),
_ => ::core::option::Option::None,
}
}
fn name_at(&self, index: usize) -> ::core::option::Option<&str> {
match index {
0usize => ::core::option::Option::Some("minimize"),
1usize => ::core::option::Option::Some("maximize"),
2usize => ::core::option::Option::Some("close"),
_ => ::core::option::Option::None,
}
}
fn index_of_name(&self, name: &str)
-> ::core::option::Option<usize> {
match name {
"minimize" => ::core::option::Option::Some(0usize),
"maximize" => ::core::option::Option::Some(1usize),
"close" => ::core::option::Option::Some(2usize),
_ => ::core::option::Option::None,
}
}
fn field_len(&self) -> usize { 3usize }
fn iter_fields(&self) -> bevy_reflect::structs::FieldIter {
bevy_reflect::structs::FieldIter::new(self)
}
fn to_dynamic_struct(&self)
-> bevy_reflect::structs::DynamicStruct {
let mut dynamic: bevy_reflect::structs::DynamicStruct =
::core::default::Default::default();
dynamic.set_represented_type(bevy_reflect::PartialReflect::get_represented_type_info(self));
dynamic.insert_boxed("minimize",
bevy_reflect::PartialReflect::to_dynamic(&self.minimize));
dynamic.insert_boxed("maximize",
bevy_reflect::PartialReflect::to_dynamic(&self.maximize));
dynamic.insert_boxed("close",
bevy_reflect::PartialReflect::to_dynamic(&self.close));
dynamic
}
}
impl bevy_reflect::PartialReflect for EnabledButtons where {
#[inline]
fn get_represented_type_info(&self)
-> ::core::option::Option<&'static bevy_reflect::TypeInfo> {
::core::option::Option::Some(<Self as
bevy_reflect::Typed>::type_info())
}
#[inline]
fn try_apply(&mut self, value: &dyn bevy_reflect::PartialReflect)
-> ::core::result::Result<(), bevy_reflect::ApplyError> {
if let bevy_reflect::ReflectRef::Struct(struct_value) =
bevy_reflect::PartialReflect::reflect_ref(value) {
for (name, value) in
bevy_reflect::structs::Struct::iter_fields(struct_value) {
if let ::core::option::Option::Some(v) =
bevy_reflect::structs::Struct::field_mut(self, name) {
bevy_reflect::PartialReflect::try_apply(v, value)?;
}
}
} else {
return ::core::result::Result::Err(bevy_reflect::ApplyError::MismatchedKinds {
from_kind: bevy_reflect::PartialReflect::reflect_kind(value),
to_kind: bevy_reflect::ReflectKind::Struct,
});
}
::core::result::Result::Ok(())
}
#[inline]
fn reflect_kind(&self) -> bevy_reflect::ReflectKind {
bevy_reflect::ReflectKind::Struct
}
#[inline]
fn reflect_ref(&self) -> bevy_reflect::ReflectRef {
bevy_reflect::ReflectRef::Struct(self)
}
#[inline]
fn reflect_mut(&mut self) -> bevy_reflect::ReflectMut {
bevy_reflect::ReflectMut::Struct(self)
}
#[inline]
fn reflect_owned(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
-> bevy_reflect::ReflectOwned {
bevy_reflect::ReflectOwned::Struct(self)
}
#[inline]
fn try_into_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
::core::result::Result<bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>,
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::PartialReflect>> {
::core::result::Result::Ok(self)
}
#[inline]
fn try_as_reflect(&self)
-> ::core::option::Option<&dyn bevy_reflect::Reflect> {
::core::option::Option::Some(self)
}
#[inline]
fn try_as_reflect_mut(&mut self)
-> ::core::option::Option<&mut dyn bevy_reflect::Reflect> {
::core::option::Option::Some(self)
}
#[inline]
fn into_partial_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::PartialReflect> {
self
}
#[inline]
fn as_partial_reflect(&self)
-> &dyn bevy_reflect::PartialReflect {
self
}
#[inline]
fn as_partial_reflect_mut(&mut self)
-> &mut dyn bevy_reflect::PartialReflect {
self
}
fn reflect_partial_eq(&self,
value: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<bool> {
let value =
<dyn bevy_reflect::PartialReflect>::try_downcast_ref::<Self>(value);
if let ::core::option::Option::Some(value) = value {
::core::option::Option::Some(::core::cmp::PartialEq::eq(self,
value))
} else { ::core::option::Option::Some(false) }
}
fn reflect_partial_cmp(&self,
value: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<::core::cmp::Ordering> {
(bevy_reflect::structs::struct_partial_cmp)(self, value)
}
fn debug(&self, f: &mut ::core::fmt::Formatter<'_>)
-> ::core::fmt::Result {
::core::fmt::Debug::fmt(self, f)
}
#[inline]
fn reflect_clone(&self)
->
::core::result::Result<bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>,
bevy_reflect::ReflectCloneError> {
::core::result::Result::Ok(bevy_reflect::__macro_exports::alloc_utils::Box::new(::core::clone::Clone::clone(self)))
}
}
impl bevy_reflect::FromReflect for EnabledButtons where {
fn from_reflect(reflect: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<Self> {
if let bevy_reflect::ReflectRef::Struct(__ref_struct) =
bevy_reflect::PartialReflect::reflect_ref(reflect) {
let mut __this =
<Self as ::core::default::Default>::default();
if let ::core::option::Option::Some(__field) =
(||
<bool as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"minimize")?))() {
__this.minimize = __field;
}
if let ::core::option::Option::Some(__field) =
(||
<bool as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"maximize")?))() {
__this.maximize = __field;
}
if let ::core::option::Option::Some(__field) =
(||
<bool as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"close")?))() {
__this.close = __field;
}
::core::option::Option::Some(__this)
} else { ::core::option::Option::None }
}
}
};Reflect),
1433 reflect(Debug, PartialEq, Default, Clone)
1434)]
1435#[cfg_attr(feature = "serialize", derive(#[doc(hidden)]
#[allow(non_upper_case_globals, unused_attributes, unused_qualifications,
clippy :: absolute_paths,)]
const _: () =
{
#[allow(unused_extern_crates, clippy :: useless_attribute)]
extern crate serde as _serde;
;
#[automatically_derived]
impl _serde::Serialize for EnabledButtons {
fn serialize<__S>(&self, __serializer: __S)
-> _serde::__private228::Result<__S::Ok, __S::Error> where
__S: _serde::Serializer {
let mut __serde_state =
_serde::Serializer::serialize_struct(__serializer,
"EnabledButtons", false as usize + 1 + 1 + 1)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"minimize", &self.minimize)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"maximize", &self.maximize)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"close", &self.close)?;
_serde::ser::SerializeStruct::end(__serde_state)
}
}
};serde::Serialize, #[doc(hidden)]
#[allow(non_upper_case_globals, unused_attributes, unused_qualifications,
clippy :: absolute_paths,)]
const _: () =
{
#[allow(unused_extern_crates, clippy :: useless_attribute)]
extern crate serde as _serde;
;
#[automatically_derived]
impl<'de> _serde::Deserialize<'de> for EnabledButtons {
fn deserialize<__D>(__deserializer: __D)
-> _serde::__private228::Result<Self, __D::Error> where
__D: _serde::Deserializer<'de> {
#[allow(non_camel_case_types)]
#[doc(hidden)]
enum __Field { __field0, __field1, __field2, __ignore, }
#[doc(hidden)]
struct __FieldVisitor;
#[automatically_derived]
impl<'de> _serde::de::Visitor<'de> for __FieldVisitor {
type Value = __Field;
fn expecting(&self,
__formatter: &mut _serde::__private228::Formatter)
-> _serde::__private228::fmt::Result {
_serde::__private228::Formatter::write_str(__formatter,
"field identifier")
}
fn visit_u64<__E>(self, __value: u64)
-> _serde::__private228::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
0u64 => _serde::__private228::Ok(__Field::__field0),
1u64 => _serde::__private228::Ok(__Field::__field1),
2u64 => _serde::__private228::Ok(__Field::__field2),
_ => _serde::__private228::Ok(__Field::__ignore),
}
}
fn visit_str<__E>(self, __value: &str)
-> _serde::__private228::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
"minimize" => _serde::__private228::Ok(__Field::__field0),
"maximize" => _serde::__private228::Ok(__Field::__field1),
"close" => _serde::__private228::Ok(__Field::__field2),
_ => { _serde::__private228::Ok(__Field::__ignore) }
}
}
fn visit_bytes<__E>(self, __value: &[u8])
-> _serde::__private228::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
b"minimize" => _serde::__private228::Ok(__Field::__field0),
b"maximize" => _serde::__private228::Ok(__Field::__field1),
b"close" => _serde::__private228::Ok(__Field::__field2),
_ => { _serde::__private228::Ok(__Field::__ignore) }
}
}
}
#[automatically_derived]
impl<'de> _serde::Deserialize<'de> for __Field {
#[inline]
fn deserialize<__D>(__deserializer: __D)
-> _serde::__private228::Result<Self, __D::Error> where
__D: _serde::Deserializer<'de> {
_serde::Deserializer::deserialize_identifier(__deserializer,
__FieldVisitor)
}
}
#[doc(hidden)]
struct __Visitor<'de> {
marker: _serde::__private228::PhantomData<EnabledButtons>,
lifetime: _serde::__private228::PhantomData<&'de ()>,
}
#[automatically_derived]
impl<'de> _serde::de::Visitor<'de> for __Visitor<'de> {
type Value = EnabledButtons;
fn expecting(&self,
__formatter: &mut _serde::__private228::Formatter)
-> _serde::__private228::fmt::Result {
_serde::__private228::Formatter::write_str(__formatter,
"struct EnabledButtons")
}
#[inline]
fn visit_seq<__A>(self, mut __seq: __A)
-> _serde::__private228::Result<Self::Value, __A::Error>
where __A: _serde::de::SeqAccess<'de> {
let __field0 =
match _serde::de::SeqAccess::next_element::<bool>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(0usize,
&"struct EnabledButtons with 3 elements")),
};
let __field1 =
match _serde::de::SeqAccess::next_element::<bool>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(1usize,
&"struct EnabledButtons with 3 elements")),
};
let __field2 =
match _serde::de::SeqAccess::next_element::<bool>(&mut __seq)?
{
_serde::__private228::Some(__value) => __value,
_serde::__private228::None =>
return _serde::__private228::Err(_serde::de::Error::invalid_length(2usize,
&"struct EnabledButtons with 3 elements")),
};
_serde::__private228::Ok(EnabledButtons {
minimize: __field0,
maximize: __field1,
close: __field2,
})
}
#[inline]
fn visit_map<__A>(self, mut __map: __A)
-> _serde::__private228::Result<Self::Value, __A::Error>
where __A: _serde::de::MapAccess<'de> {
let mut __field0: _serde::__private228::Option<bool> =
_serde::__private228::None;
let mut __field1: _serde::__private228::Option<bool> =
_serde::__private228::None;
let mut __field2: _serde::__private228::Option<bool> =
_serde::__private228::None;
while let _serde::__private228::Some(__key) =
_serde::de::MapAccess::next_key::<__Field>(&mut __map)? {
match __key {
__Field::__field0 => {
if _serde::__private228::Option::is_some(&__field0) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("minimize"));
}
__field0 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<bool>(&mut __map)?);
}
__Field::__field1 => {
if _serde::__private228::Option::is_some(&__field1) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("maximize"));
}
__field1 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<bool>(&mut __map)?);
}
__Field::__field2 => {
if _serde::__private228::Option::is_some(&__field2) {
return _serde::__private228::Err(<__A::Error as
_serde::de::Error>::duplicate_field("close"));
}
__field2 =
_serde::__private228::Some(_serde::de::MapAccess::next_value::<bool>(&mut __map)?);
}
_ => {
let _ =
_serde::de::MapAccess::next_value::<_serde::de::IgnoredAny>(&mut __map)?;
}
}
}
let __field0 =
match __field0 {
_serde::__private228::Some(__field0) => __field0,
_serde::__private228::None =>
_serde::__private228::de::missing_field("minimize")?,
};
let __field1 =
match __field1 {
_serde::__private228::Some(__field1) => __field1,
_serde::__private228::None =>
_serde::__private228::de::missing_field("maximize")?,
};
let __field2 =
match __field2 {
_serde::__private228::Some(__field2) => __field2,
_serde::__private228::None =>
_serde::__private228::de::missing_field("close")?,
};
_serde::__private228::Ok(EnabledButtons {
minimize: __field0,
maximize: __field1,
close: __field2,
})
}
}
#[doc(hidden)]
const FIELDS: &'static [&'static str] =
&["minimize", "maximize", "close"];
_serde::Deserializer::deserialize_struct(__deserializer,
"EnabledButtons", FIELDS,
__Visitor {
marker: _serde::__private228::PhantomData::<EnabledButtons>,
lifetime: _serde::__private228::PhantomData,
})
}
}
};serde::Deserialize))]
1436#[cfg_attr(
1437 all(feature = "serialize", feature = "bevy_reflect"),
1438 reflect(Serialize, Deserialize)
1439)]
1440pub struct EnabledButtons {
1441 pub minimize: bool,
1443 pub maximize: bool,
1451 pub close: bool,
1453}
1454
1455impl Default for EnabledButtons {
1456 fn default() -> Self {
1457 Self {
1458 minimize: true,
1459 maximize: true,
1460 close: true,
1461 }
1462 }
1463}
1464
1465#[derive(impl bevy_ecs::component::Component for ClosingWindow where
Self: ::core::marker::Send + ::core::marker::Sync + 'static {
const STORAGE_TYPE: bevy_ecs::component::StorageType =
bevy_ecs::component::StorageType::Table;
type Mutability = bevy_ecs::component::Mutable;
fn register_required_components(_requiree:
bevy_ecs::component::ComponentId,
required_components:
&mut bevy_ecs::component::RequiredComponentsRegistrator) {}
fn clone_behavior() -> bevy_ecs::component::ComponentCloneBehavior {
use bevy_ecs::component::{
DefaultCloneBehaviorBase, DefaultCloneBehaviorViaClone,
};
(&&&bevy_ecs::component::DefaultCloneBehaviorSpecialization::<Self>::default()).default_clone_behavior()
}
fn relationship_accessor()
->
::core::option::Option<bevy_ecs::relationship::ComponentRelationshipAccessor<Self>> {
::core::option::Option::None
}
}Component, #[automatically_derived]
impl ::core::default::Default for ClosingWindow {
#[inline]
fn default() -> ClosingWindow { ClosingWindow {} }
}Default)]
1468pub struct ClosingWindow;
1469
1470#[derive(#[automatically_derived]
impl ::core::default::Default for ScreenEdge {
#[inline]
fn default() -> ScreenEdge { Self::None }
}Default, #[automatically_derived]
impl ::core::fmt::Debug for ScreenEdge {
#[inline]
fn fmt(&self, f: &mut ::core::fmt::Formatter) -> ::core::fmt::Result {
::core::fmt::Formatter::write_str(f,
match self {
ScreenEdge::None => "None",
ScreenEdge::Top => "Top",
ScreenEdge::Left => "Left",
ScreenEdge::Bottom => "Bottom",
ScreenEdge::Right => "Right",
ScreenEdge::All => "All",
})
}
}Debug, #[automatically_derived]
impl ::core::clone::Clone for ScreenEdge {
#[inline]
fn clone(&self) -> ScreenEdge { *self }
}Clone, #[automatically_derived]
impl ::core::marker::Copy for ScreenEdge { }Copy, #[automatically_derived]
impl ::core::cmp::PartialEq for ScreenEdge {
#[inline]
fn eq(&self, other: &ScreenEdge) -> bool {
let __self_discr = ::core::intrinsics::discriminant_value(self);
let __arg1_discr = ::core::intrinsics::discriminant_value(other);
__self_discr == __arg1_discr
}
}PartialEq, #[automatically_derived]
impl ::core::cmp::Eq for ScreenEdge {
#[inline]
#[doc(hidden)]
#[coverage(off)]
fn assert_fields_are_eq(&self) {}
}Eq, #[automatically_derived]
impl ::core::hash::Hash for ScreenEdge {
#[inline]
fn hash<__H: ::core::hash::Hasher>(&self, state: &mut __H) {
let __self_discr = ::core::intrinsics::discriminant_value(self);
::core::hash::Hash::hash(&__self_discr, state)
}
}Hash)]
1478#[cfg_attr(feature = "bevy_reflect", derive(const _: () =
{
impl bevy_reflect::GetTypeRegistration for ScreenEdge where {
fn get_type_registration() -> bevy_reflect::TypeRegistration {
let mut registration =
bevy_reflect::TypeRegistration::of::<Self>();
registration.insert::<bevy_reflect::ReflectFromPtr>(bevy_reflect::FromType::<Self>::from_type());
registration.insert::<bevy_reflect::ReflectFromReflect>(bevy_reflect::FromType::<Self>::from_type());
registration
}
#[inline(never)]
fn register_type_dependencies(registry:
&mut bevy_reflect::TypeRegistry) {}
}
impl bevy_reflect::Typed for ScreenEdge where {
#[inline]
fn type_info() -> &'static bevy_reflect::TypeInfo {
static CELL: bevy_reflect::utility::NonGenericTypeInfoCell =
bevy_reflect::utility::NonGenericTypeInfoCell::new();
CELL.get_or_set(||
{
bevy_reflect::TypeInfo::Enum(bevy_reflect::enums::EnumInfo::new::<Self>(&[bevy_reflect::enums::VariantInfo::Unit(bevy_reflect::enums::UnitVariantInfo::new("None")),
bevy_reflect::enums::VariantInfo::Unit(bevy_reflect::enums::UnitVariantInfo::new("Top")),
bevy_reflect::enums::VariantInfo::Unit(bevy_reflect::enums::UnitVariantInfo::new("Left")),
bevy_reflect::enums::VariantInfo::Unit(bevy_reflect::enums::UnitVariantInfo::new("Bottom")),
bevy_reflect::enums::VariantInfo::Unit(bevy_reflect::enums::UnitVariantInfo::new("Right")),
bevy_reflect::enums::VariantInfo::Unit(bevy_reflect::enums::UnitVariantInfo::new("All"))]))
})
}
}
#[allow(deprecated, reason =
"derives on a deprecated type shouldn't be considered a usage")]
impl bevy_reflect::TypePath for ScreenEdge where {
fn type_path() -> &'static str {
"bevy_window::window::ScreenEdge"
}
fn short_type_path() -> &'static str { "ScreenEdge" }
fn type_ident() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("ScreenEdge")
}
fn crate_name() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("bevy_window::window".split(':').next().unwrap())
}
fn module_path() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("bevy_window::window")
}
}
impl bevy_reflect::Reflect for ScreenEdge where {
#[inline]
fn into_any(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn ::core::any::Any> {
self
}
#[inline]
fn as_any(&self) -> &dyn ::core::any::Any { self }
#[inline]
fn as_any_mut(&mut self) -> &mut dyn ::core::any::Any { self }
#[inline]
fn into_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect> {
self
}
#[inline]
fn as_reflect(&self) -> &dyn bevy_reflect::Reflect { self }
#[inline]
fn as_reflect_mut(&mut self) -> &mut dyn bevy_reflect::Reflect {
self
}
#[inline]
fn set(&mut self,
value:
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>)
->
::core::result::Result<(),
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>> {
*self = <dyn bevy_reflect::Reflect>::take(value)?;
::core::result::Result::Ok(())
}
}
#[allow(non_upper_case_globals)]
const _: () =
{
static __INVENTORY: ::inventory::Node =
::inventory::Node {
value: &{
bevy_reflect::__macro_exports::auto_register::AutomaticReflectRegistrations(<ScreenEdge
as
bevy_reflect::__macro_exports::auto_register::RegisterForReflection>::__register)
},
next: ::inventory::__private::UnsafeCell::new(::inventory::__private::Option::None),
};
#[link_section = ".text.startup"]
unsafe extern "C" fn __ctor() {
unsafe {
::inventory::ErasedNode::submit(__INVENTORY.value,
&__INVENTORY)
}
}
#[used]
#[link_section = ".init_array"]
static __CTOR: unsafe extern "C" fn() = __ctor;
};
impl bevy_reflect::enums::Enum for ScreenEdge where {
fn field(&self, __name_param: &str)
-> ::core::option::Option<&dyn bevy_reflect::PartialReflect> {
match self { _ => ::core::option::Option::None, }
}
fn field_at(&self, __index_param: usize)
-> ::core::option::Option<&dyn bevy_reflect::PartialReflect> {
match self { _ => ::core::option::Option::None, }
}
fn field_mut(&mut self, __name_param: &str)
->
::core::option::Option<&mut dyn bevy_reflect::PartialReflect> {
match self { _ => ::core::option::Option::None, }
}
fn field_at_mut(&mut self, __index_param: usize)
->
::core::option::Option<&mut dyn bevy_reflect::PartialReflect> {
match self { _ => ::core::option::Option::None, }
}
fn index_of(&self, __name_param: &str)
-> ::core::option::Option<usize> {
match self { _ => ::core::option::Option::None, }
}
fn name_at(&self, __index_param: usize)
-> ::core::option::Option<&str> {
match self { _ => ::core::option::Option::None, }
}
fn iter_fields(&self) -> bevy_reflect::enums::VariantFieldIter {
bevy_reflect::enums::VariantFieldIter::new(self)
}
#[inline]
fn field_len(&self) -> usize {
match self {
ScreenEdge::None { .. } => 0usize,
ScreenEdge::Top { .. } => 0usize,
ScreenEdge::Left { .. } => 0usize,
ScreenEdge::Bottom { .. } => 0usize,
ScreenEdge::Right { .. } => 0usize,
ScreenEdge::All { .. } => 0usize,
_ => 0,
}
}
#[inline]
fn variant_name(&self) -> &str {
match self {
ScreenEdge::None { .. } => "None",
ScreenEdge::Top { .. } => "Top",
ScreenEdge::Left { .. } => "Left",
ScreenEdge::Bottom { .. } => "Bottom",
ScreenEdge::Right { .. } => "Right",
ScreenEdge::All { .. } => "All",
_ =>
::core::panicking::panic("internal error: entered unreachable code"),
}
}
#[inline]
fn variant_index(&self) -> usize {
match self {
ScreenEdge::None { .. } => 0usize,
ScreenEdge::Top { .. } => 1usize,
ScreenEdge::Left { .. } => 2usize,
ScreenEdge::Bottom { .. } => 3usize,
ScreenEdge::Right { .. } => 4usize,
ScreenEdge::All { .. } => 5usize,
_ =>
::core::panicking::panic("internal error: entered unreachable code"),
}
}
#[inline]
fn variant_type(&self) -> bevy_reflect::enums::VariantType {
match self {
ScreenEdge::None { .. } =>
bevy_reflect::enums::VariantType::Unit,
ScreenEdge::Top { .. } =>
bevy_reflect::enums::VariantType::Unit,
ScreenEdge::Left { .. } =>
bevy_reflect::enums::VariantType::Unit,
ScreenEdge::Bottom { .. } =>
bevy_reflect::enums::VariantType::Unit,
ScreenEdge::Right { .. } =>
bevy_reflect::enums::VariantType::Unit,
ScreenEdge::All { .. } =>
bevy_reflect::enums::VariantType::Unit,
_ =>
::core::panicking::panic("internal error: entered unreachable code"),
}
}
fn to_dynamic_enum(&self) -> bevy_reflect::enums::DynamicEnum {
bevy_reflect::enums::DynamicEnum::from_ref::<Self>(self)
}
}
impl bevy_reflect::PartialReflect for ScreenEdge where {
#[inline]
fn get_represented_type_info(&self)
-> ::core::option::Option<&'static bevy_reflect::TypeInfo> {
::core::option::Option::Some(<Self as
bevy_reflect::Typed>::type_info())
}
#[inline]
fn try_apply(&mut self,
__value_param: &dyn bevy_reflect::PartialReflect)
-> ::core::result::Result<(), bevy_reflect::ApplyError> {
if let bevy_reflect::ReflectRef::Enum(__value_param) =
bevy_reflect::PartialReflect::reflect_ref(__value_param) {
if bevy_reflect::enums::Enum::variant_name(self) ==
bevy_reflect::enums::Enum::variant_name(__value_param) {
match bevy_reflect::enums::Enum::variant_type(__value_param)
{
bevy_reflect::enums::VariantType::Struct => {
for field in
bevy_reflect::enums::Enum::iter_fields(__value_param) {
let name = field.name().unwrap();
if let ::core::option::Option::Some(v) =
bevy_reflect::enums::Enum::field_mut(self, name) {
bevy_reflect::PartialReflect::try_apply(v, field.value())?;
}
}
}
bevy_reflect::enums::VariantType::Tuple => {
for (index, field) in
::core::iter::Iterator::enumerate(bevy_reflect::enums::Enum::iter_fields(__value_param))
{
if let ::core::option::Option::Some(v) =
bevy_reflect::enums::Enum::field_at_mut(self, index) {
bevy_reflect::PartialReflect::try_apply(v, field.value())?;
}
}
}
_ => {}
}
} else {
match bevy_reflect::enums::Enum::variant_name(__value_param)
{
"None" => { *self = ScreenEdge::None {} }
"Top" => { *self = ScreenEdge::Top {} }
"Left" => { *self = ScreenEdge::Left {} }
"Bottom" => { *self = ScreenEdge::Bottom {} }
"Right" => { *self = ScreenEdge::Right {} }
"All" => { *self = ScreenEdge::All {} }
name => {
return ::core::result::Result::Err(bevy_reflect::ApplyError::UnknownVariant {
enum_name: ::core::convert::Into::into(bevy_reflect::DynamicTypePath::reflect_type_path(self)),
variant_name: ::core::convert::Into::into(name),
});
}
}
}
} else {
return ::core::result::Result::Err(bevy_reflect::ApplyError::MismatchedKinds {
from_kind: bevy_reflect::PartialReflect::reflect_kind(__value_param),
to_kind: bevy_reflect::ReflectKind::Enum,
});
}
::core::result::Result::Ok(())
}
fn reflect_kind(&self) -> bevy_reflect::ReflectKind {
bevy_reflect::ReflectKind::Enum
}
fn reflect_ref(&self) -> bevy_reflect::ReflectRef {
bevy_reflect::ReflectRef::Enum(self)
}
fn reflect_mut(&mut self) -> bevy_reflect::ReflectMut {
bevy_reflect::ReflectMut::Enum(self)
}
fn reflect_owned(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
-> bevy_reflect::ReflectOwned {
bevy_reflect::ReflectOwned::Enum(self)
}
#[inline]
fn try_into_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
::core::result::Result<bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>,
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::PartialReflect>> {
::core::result::Result::Ok(self)
}
#[inline]
fn try_as_reflect(&self)
-> ::core::option::Option<&dyn bevy_reflect::Reflect> {
::core::option::Option::Some(self)
}
#[inline]
fn try_as_reflect_mut(&mut self)
-> ::core::option::Option<&mut dyn bevy_reflect::Reflect> {
::core::option::Option::Some(self)
}
#[inline]
fn into_partial_reflect(self:
bevy_reflect::__macro_exports::alloc_utils::Box<Self>)
->
bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::PartialReflect> {
self
}
#[inline]
fn as_partial_reflect(&self)
-> &dyn bevy_reflect::PartialReflect {
self
}
#[inline]
fn as_partial_reflect_mut(&mut self)
-> &mut dyn bevy_reflect::PartialReflect {
self
}
fn reflect_hash(&self) -> ::core::option::Option<u64> {
(bevy_reflect::enums::enum_hash)(self)
}
fn reflect_partial_eq(&self,
value: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<bool> {
(bevy_reflect::enums::enum_partial_eq)(self, value)
}
fn reflect_partial_cmp(&self,
value: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<::core::cmp::Ordering> {
(bevy_reflect::enums::enum_partial_cmp)(self, value)
}
#[inline]
#[allow(unreachable_code, reason =
"Ignored fields without a `clone` attribute will early-return with an error")]
fn reflect_clone(&self)
->
::core::result::Result<bevy_reflect::__macro_exports::alloc_utils::Box<dyn bevy_reflect::Reflect>,
bevy_reflect::ReflectCloneError> {
let this = self;
::core::result::Result::Ok(bevy_reflect::__macro_exports::alloc_utils::Box::new(match this
{
ScreenEdge::None {} => ScreenEdge::None {},
ScreenEdge::Top {} => ScreenEdge::Top {},
ScreenEdge::Left {} => ScreenEdge::Left {},
ScreenEdge::Bottom {} => ScreenEdge::Bottom {},
ScreenEdge::Right {} => ScreenEdge::Right {},
ScreenEdge::All {} => ScreenEdge::All {},
}))
}
}
impl bevy_reflect::FromReflect for ScreenEdge where {
fn from_reflect(__param0: &dyn bevy_reflect::PartialReflect)
-> ::core::option::Option<Self> {
if let bevy_reflect::ReflectRef::Enum(__param0) =
bevy_reflect::PartialReflect::reflect_ref(__param0) {
match bevy_reflect::enums::Enum::variant_name(__param0) {
"None" => ::core::option::Option::Some(ScreenEdge::None {}),
"Top" => ::core::option::Option::Some(ScreenEdge::Top {}),
"Left" => ::core::option::Option::Some(ScreenEdge::Left {}),
"Bottom" =>
::core::option::Option::Some(ScreenEdge::Bottom {}),
"Right" =>
::core::option::Option::Some(ScreenEdge::Right {}),
"All" => ::core::option::Option::Some(ScreenEdge::All {}),
name => ::core::option::Option::None,
}
} else { ::core::option::Option::None }
}
}
};Reflect))]
1479#[cfg_attr(feature = "serialize", derive(#[doc(hidden)]
#[allow(non_upper_case_globals, unused_attributes, unused_qualifications,
clippy :: absolute_paths,)]
const _: () =
{
#[allow(unused_extern_crates, clippy :: useless_attribute)]
extern crate serde as _serde;
;
#[automatically_derived]
impl _serde::Serialize for ScreenEdge {
fn serialize<__S>(&self, __serializer: __S)
-> _serde::__private228::Result<__S::Ok, __S::Error> where
__S: _serde::Serializer {
match *self {
ScreenEdge::None =>
_serde::Serializer::serialize_unit_variant(__serializer,
"ScreenEdge", 0u32, "None"),
ScreenEdge::Top =>
_serde::Serializer::serialize_unit_variant(__serializer,
"ScreenEdge", 1u32, "Top"),
ScreenEdge::Left =>
_serde::Serializer::serialize_unit_variant(__serializer,
"ScreenEdge", 2u32, "Left"),
ScreenEdge::Bottom =>
_serde::Serializer::serialize_unit_variant(__serializer,
"ScreenEdge", 3u32, "Bottom"),
ScreenEdge::Right =>
_serde::Serializer::serialize_unit_variant(__serializer,
"ScreenEdge", 4u32, "Right"),
ScreenEdge::All =>
_serde::Serializer::serialize_unit_variant(__serializer,
"ScreenEdge", 5u32, "All"),
}
}
}
};serde::Serialize, #[doc(hidden)]
#[allow(non_upper_case_globals, unused_attributes, unused_qualifications,
clippy :: absolute_paths,)]
const _: () =
{
#[allow(unused_extern_crates, clippy :: useless_attribute)]
extern crate serde as _serde;
;
#[automatically_derived]
impl<'de> _serde::Deserialize<'de> for ScreenEdge {
fn deserialize<__D>(__deserializer: __D)
-> _serde::__private228::Result<Self, __D::Error> where
__D: _serde::Deserializer<'de> {
#[allow(non_camel_case_types)]
#[doc(hidden)]
enum __Field {
__field0,
__field1,
__field2,
__field3,
__field4,
__field5,
}
#[doc(hidden)]
struct __FieldVisitor;
#[automatically_derived]
impl<'de> _serde::de::Visitor<'de> for __FieldVisitor {
type Value = __Field;
fn expecting(&self,
__formatter: &mut _serde::__private228::Formatter)
-> _serde::__private228::fmt::Result {
_serde::__private228::Formatter::write_str(__formatter,
"variant identifier")
}
fn visit_u64<__E>(self, __value: u64)
-> _serde::__private228::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
0u64 => _serde::__private228::Ok(__Field::__field0),
1u64 => _serde::__private228::Ok(__Field::__field1),
2u64 => _serde::__private228::Ok(__Field::__field2),
3u64 => _serde::__private228::Ok(__Field::__field3),
4u64 => _serde::__private228::Ok(__Field::__field4),
5u64 => _serde::__private228::Ok(__Field::__field5),
_ =>
_serde::__private228::Err(_serde::de::Error::invalid_value(_serde::de::Unexpected::Unsigned(__value),
&"variant index 0 <= i < 6")),
}
}
fn visit_str<__E>(self, __value: &str)
-> _serde::__private228::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
"None" => _serde::__private228::Ok(__Field::__field0),
"Top" => _serde::__private228::Ok(__Field::__field1),
"Left" => _serde::__private228::Ok(__Field::__field2),
"Bottom" => _serde::__private228::Ok(__Field::__field3),
"Right" => _serde::__private228::Ok(__Field::__field4),
"All" => _serde::__private228::Ok(__Field::__field5),
_ => {
_serde::__private228::Err(_serde::de::Error::unknown_variant(__value,
VARIANTS))
}
}
}
fn visit_bytes<__E>(self, __value: &[u8])
-> _serde::__private228::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
b"None" => _serde::__private228::Ok(__Field::__field0),
b"Top" => _serde::__private228::Ok(__Field::__field1),
b"Left" => _serde::__private228::Ok(__Field::__field2),
b"Bottom" => _serde::__private228::Ok(__Field::__field3),
b"Right" => _serde::__private228::Ok(__Field::__field4),
b"All" => _serde::__private228::Ok(__Field::__field5),
_ => {
let __value =
&_serde::__private228::from_utf8_lossy(__value);
_serde::__private228::Err(_serde::de::Error::unknown_variant(__value,
VARIANTS))
}
}
}
}
#[automatically_derived]
impl<'de> _serde::Deserialize<'de> for __Field {
#[inline]
fn deserialize<__D>(__deserializer: __D)
-> _serde::__private228::Result<Self, __D::Error> where
__D: _serde::Deserializer<'de> {
_serde::Deserializer::deserialize_identifier(__deserializer,
__FieldVisitor)
}
}
#[doc(hidden)]
struct __Visitor<'de> {
marker: _serde::__private228::PhantomData<ScreenEdge>,
lifetime: _serde::__private228::PhantomData<&'de ()>,
}
#[automatically_derived]
impl<'de> _serde::de::Visitor<'de> for __Visitor<'de> {
type Value = ScreenEdge;
fn expecting(&self,
__formatter: &mut _serde::__private228::Formatter)
-> _serde::__private228::fmt::Result {
_serde::__private228::Formatter::write_str(__formatter,
"enum ScreenEdge")
}
fn visit_enum<__A>(self, __data: __A)
-> _serde::__private228::Result<Self::Value, __A::Error>
where __A: _serde::de::EnumAccess<'de> {
match _serde::de::EnumAccess::variant(__data)? {
(__Field::__field0, __variant) => {
_serde::de::VariantAccess::unit_variant(__variant)?;
_serde::__private228::Ok(ScreenEdge::None)
}
(__Field::__field1, __variant) => {
_serde::de::VariantAccess::unit_variant(__variant)?;
_serde::__private228::Ok(ScreenEdge::Top)
}
(__Field::__field2, __variant) => {
_serde::de::VariantAccess::unit_variant(__variant)?;
_serde::__private228::Ok(ScreenEdge::Left)
}
(__Field::__field3, __variant) => {
_serde::de::VariantAccess::unit_variant(__variant)?;
_serde::__private228::Ok(ScreenEdge::Bottom)
}
(__Field::__field4, __variant) => {
_serde::de::VariantAccess::unit_variant(__variant)?;
_serde::__private228::Ok(ScreenEdge::Right)
}
(__Field::__field5, __variant) => {
_serde::de::VariantAccess::unit_variant(__variant)?;
_serde::__private228::Ok(ScreenEdge::All)
}
}
}
}
#[doc(hidden)]
const VARIANTS: &'static [&'static str] =
&["None", "Top", "Left", "Bottom", "Right", "All"];
_serde::Deserializer::deserialize_enum(__deserializer,
"ScreenEdge", VARIANTS,
__Visitor {
marker: _serde::__private228::PhantomData::<ScreenEdge>,
lifetime: _serde::__private228::PhantomData,
})
}
}
};serde::Deserialize))]
1480pub enum ScreenEdge {
1481 #[default]
1482 None,
1484 Top,
1486 Left,
1488 Bottom,
1490 Right,
1492 All,
1494}
1495
1496#[cfg(test)]
1497mod tests {
1498 use super::*;
1499
1500 #[test]
1503 fn cursor_position_within_window_bounds() {
1504 let mut window = Window {
1505 resolution: WindowResolution::new(800, 600),
1506 ..Default::default()
1507 };
1508
1509 window.set_physical_cursor_position(Some(DVec2::new(0., 300.)));
1510 assert_eq!(window.physical_cursor_position(), Some(Vec2::new(0., 300.)));
1511
1512 window.set_physical_cursor_position(Some(DVec2::new(400., 0.)));
1513 assert_eq!(window.physical_cursor_position(), Some(Vec2::new(400., 0.)));
1514
1515 window.set_physical_cursor_position(Some(DVec2::new(799.999, 300.)));
1516 assert_eq!(
1517 window.physical_cursor_position(),
1518 Some(Vec2::new(799.999, 300.)),
1519 );
1520
1521 window.set_physical_cursor_position(Some(DVec2::new(400., 599.999)));
1522 assert_eq!(
1523 window.physical_cursor_position(),
1524 Some(Vec2::new(400., 599.999))
1525 );
1526 }
1527
1528 #[test]
1531 fn cursor_position_not_within_window_bounds() {
1532 let mut window = Window {
1533 resolution: WindowResolution::new(800, 600),
1534 ..Default::default()
1535 };
1536
1537 window.set_physical_cursor_position(Some(DVec2::new(-0.001, 300.)));
1538 assert!(window.physical_cursor_position().is_none());
1539
1540 window.set_physical_cursor_position(Some(DVec2::new(400., -0.001)));
1541 assert!(window.physical_cursor_position().is_none());
1542
1543 window.set_physical_cursor_position(Some(DVec2::new(800., 300.)));
1544 assert!(window.physical_cursor_position().is_none());
1545
1546 window.set_physical_cursor_position(Some(DVec2::new(400., 600.)));
1547 assert!(window.physical_cursor_position().is_none());
1548 }
1549}
1550
1551#[derive(impl bevy_ecs::relationship::Relationship for OnMonitor {
type RelationshipTarget = crate::monitor::HasWindows;
const ALLOW_SELF_REFERENTIAL: bool = false;
#[inline(always)]
fn get(&self) -> bevy_ecs::entity::Entity { self.0 }
#[inline]
fn from(entity: bevy_ecs::entity::Entity) -> Self { Self { 0: entity } }
#[inline]
fn set_risky(&mut self, entity: bevy_ecs::entity::Entity) {
self.0 = entity;
}
}Component, #[automatically_derived]
impl ::core::fmt::Debug for OnMonitor {
#[inline]
fn fmt(&self, f: &mut ::core::fmt::Formatter) -> ::core::fmt::Result {
::core::fmt::Formatter::debug_tuple_field1_finish(f, "OnMonitor",
&&self.0)
}
}Debug)]
1557#[relationship(relationship_target=crate::monitor::HasWindows)]
1558pub struct OnMonitor(pub Entity);