1use alloc::{string::String, vec::Vec};
2use bevy_ecs::{component::Component, entity::Entity};
3use bevy_math::{IVec2, UVec2};
4
5#[cfg(all(feature = "serialize", feature = "bevy_reflect"))]
6use bevy_reflect::{ReflectDeserialize, ReflectSerialize};
7#[cfg(feature = "bevy_reflect")]
8use {bevy_ecs::prelude::ReflectComponent, bevy_reflect::Reflect};
9
10#[derive(#[doc =
"**Required Components**: [`HasWindows`]. \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 Monitor 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::<HasWindows>(<HasWindows 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 Monitor {
#[inline]
fn fmt(&self, f: &mut ::core::fmt::Formatter) -> ::core::fmt::Result {
let names: &'static _ =
&["name", "physical_height", "physical_width",
"physical_position", "refresh_rate_millihertz",
"scale_factor", "video_modes"];
let values: &[&dyn ::core::fmt::Debug] =
&[&self.name, &self.physical_height, &self.physical_width,
&self.physical_position, &self.refresh_rate_millihertz,
&self.scale_factor, &&self.video_modes];
::core::fmt::Formatter::debug_struct_fields_finish(f, "Monitor",
names, values)
}
}Debug, #[automatically_derived]impl ::core::clone::Clone for Monitor {
#[inline]
fn clone(&self) -> Self {
Monitor {
name: ::core::clone::Clone::clone(&self.name),
physical_height: ::core::clone::Clone::clone(&self.physical_height),
physical_width: ::core::clone::Clone::clone(&self.physical_width),
physical_position: ::core::clone::Clone::clone(&self.physical_position),
refresh_rate_millihertz: ::core::clone::Clone::clone(&self.refresh_rate_millihertz),
scale_factor: ::core::clone::Clone::clone(&self.scale_factor),
video_modes: ::core::clone::Clone::clone(&self.video_modes),
}
}
}Clone)]
21#[require(HasWindows)]
22#[cfg_attr(
23 feature = "bevy_reflect",
24 derive(const _: () =
{
impl bevy_reflect::GetTypeRegistration for Monitor where {
fn get_type_registration() -> bevy_reflect::TypeRegistration {
let mut registration =
bevy_reflect::TypeRegistration::of::<Self>();
registration.insert(<bevy_reflect::ReflectFromPtr as
bevy_reflect::CreateTypeData<Self>>::create_type_data(()));
registration.insert(<bevy_reflect::ReflectFromReflect as
bevy_reflect::CreateTypeData<Self>>::create_type_data(()));
registration.register_type_data_with::<ReflectComponent, Self,
_>(());
registration.register_type_data_with::<ReflectSerialize, Self,
_>(());
registration.register_type_data_with::<ReflectDeserialize,
Self, _>(());
registration
}
#[inline(never)]
fn register_type_dependencies(registry:
&mut bevy_reflect::TypeRegistry) {
<Option<String> as
bevy_reflect::__macro_exports::RegisterForReflection>::__register(registry);
<u32 as
bevy_reflect::__macro_exports::RegisterForReflection>::__register(registry);
<IVec2 as
bevy_reflect::__macro_exports::RegisterForReflection>::__register(registry);
<Option<u32> as
bevy_reflect::__macro_exports::RegisterForReflection>::__register(registry);
<f64 as
bevy_reflect::__macro_exports::RegisterForReflection>::__register(registry);
<Vec<VideoMode> as
bevy_reflect::__macro_exports::RegisterForReflection>::__register(registry);
}
}
impl bevy_reflect::Typed for Monitor where {
#[inline(never)]
fn type_info() -> &'static bevy_reflect::TypeInfo {
static CELL: bevy_reflect::utility::NonGenericTypeInfoCell =
bevy_reflect::utility::NonGenericTypeInfoCell::new();
CELL.get_or_set(#[inline(never)] ||
{
bevy_reflect::TypeInfo::Struct(bevy_reflect::structs::StructInfo::new::<Self>(&[bevy_reflect::NamedField::new::<Option<String>>("name"),
bevy_reflect::NamedField::new::<u32>("physical_height"),
bevy_reflect::NamedField::new::<u32>("physical_width"),
bevy_reflect::NamedField::new::<IVec2>("physical_position"),
bevy_reflect::NamedField::new::<Option<u32>>("refresh_rate_millihertz"),
bevy_reflect::NamedField::new::<f64>("scale_factor"),
bevy_reflect::NamedField::new::<Vec<VideoMode>>("video_modes")]))
})
}
}
#[allow(deprecated, reason =
"derives on a deprecated type shouldn't be considered a usage")]
impl bevy_reflect::TypePath for Monitor where {
fn type_path() -> &'static str { "bevy_window::monitor::Monitor" }
fn short_type_path() -> &'static str { "Monitor" }
fn type_ident() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("Monitor")
}
fn crate_name() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("bevy_window::monitor".split(':').next().unwrap())
}
fn module_path() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("bevy_window::monitor")
}
}
impl bevy_reflect::Reflect for Monitor 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(<Monitor
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 Monitor where {
fn field(&self, name: &str)
-> ::core::option::Option<&dyn bevy_reflect::PartialReflect> {
match name {
"name" => ::core::option::Option::Some(&self.name),
"physical_height" =>
::core::option::Option::Some(&self.physical_height),
"physical_width" =>
::core::option::Option::Some(&self.physical_width),
"physical_position" =>
::core::option::Option::Some(&self.physical_position),
"refresh_rate_millihertz" =>
::core::option::Option::Some(&self.refresh_rate_millihertz),
"scale_factor" =>
::core::option::Option::Some(&self.scale_factor),
"video_modes" =>
::core::option::Option::Some(&self.video_modes),
_ => ::core::option::Option::None,
}
}
fn field_mut(&mut self, name: &str)
->
::core::option::Option<&mut dyn bevy_reflect::PartialReflect> {
match name {
"name" => ::core::option::Option::Some(&mut self.name),
"physical_height" =>
::core::option::Option::Some(&mut self.physical_height),
"physical_width" =>
::core::option::Option::Some(&mut self.physical_width),
"physical_position" =>
::core::option::Option::Some(&mut self.physical_position),
"refresh_rate_millihertz" =>
::core::option::Option::Some(&mut self.refresh_rate_millihertz),
"scale_factor" =>
::core::option::Option::Some(&mut self.scale_factor),
"video_modes" =>
::core::option::Option::Some(&mut self.video_modes),
_ => ::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.name),
1usize =>
::core::option::Option::Some(&self.physical_height),
2usize =>
::core::option::Option::Some(&self.physical_width),
3usize =>
::core::option::Option::Some(&self.physical_position),
4usize =>
::core::option::Option::Some(&self.refresh_rate_millihertz),
5usize => ::core::option::Option::Some(&self.scale_factor),
6usize => ::core::option::Option::Some(&self.video_modes),
_ => ::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.name),
1usize =>
::core::option::Option::Some(&mut self.physical_height),
2usize =>
::core::option::Option::Some(&mut self.physical_width),
3usize =>
::core::option::Option::Some(&mut self.physical_position),
4usize =>
::core::option::Option::Some(&mut self.refresh_rate_millihertz),
5usize =>
::core::option::Option::Some(&mut self.scale_factor),
6usize =>
::core::option::Option::Some(&mut self.video_modes),
_ => ::core::option::Option::None,
}
}
fn name_at(&self, index: usize) -> ::core::option::Option<&str> {
match index {
0usize => ::core::option::Option::Some("name"),
1usize => ::core::option::Option::Some("physical_height"),
2usize => ::core::option::Option::Some("physical_width"),
3usize => ::core::option::Option::Some("physical_position"),
4usize =>
::core::option::Option::Some("refresh_rate_millihertz"),
5usize => ::core::option::Option::Some("scale_factor"),
6usize => ::core::option::Option::Some("video_modes"),
_ => ::core::option::Option::None,
}
}
fn index_of_name(&self, name: &str)
-> ::core::option::Option<usize> {
match name {
"name" => ::core::option::Option::Some(0usize),
"physical_height" => ::core::option::Option::Some(1usize),
"physical_width" => ::core::option::Option::Some(2usize),
"physical_position" => ::core::option::Option::Some(3usize),
"refresh_rate_millihertz" =>
::core::option::Option::Some(4usize),
"scale_factor" => ::core::option::Option::Some(5usize),
"video_modes" => ::core::option::Option::Some(6usize),
_ => ::core::option::Option::None,
}
}
fn field_len(&self) -> usize { 7usize }
fn iter_fields(&self) -> bevy_reflect::structs::FieldIter {
bevy_reflect::structs::FieldIter::new(self)
}
fn to_dynamic_struct(&self)
->
::core::result::Result<bevy_reflect::structs::DynamicStruct,
bevy_reflect::ReflectCloneError> {
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("name",
bevy_reflect::PartialReflect::to_dynamic(&self.name)?);
dynamic.insert_boxed("physical_height",
bevy_reflect::PartialReflect::to_dynamic(&self.physical_height)?);
dynamic.insert_boxed("physical_width",
bevy_reflect::PartialReflect::to_dynamic(&self.physical_width)?);
dynamic.insert_boxed("physical_position",
bevy_reflect::PartialReflect::to_dynamic(&self.physical_position)?);
dynamic.insert_boxed("refresh_rate_millihertz",
bevy_reflect::PartialReflect::to_dynamic(&self.refresh_rate_millihertz)?);
dynamic.insert_boxed("scale_factor",
bevy_reflect::PartialReflect::to_dynamic(&self.scale_factor)?);
dynamic.insert_boxed("video_modes",
bevy_reflect::PartialReflect::to_dynamic(&self.video_modes)?);
::core::result::Result::Ok(dynamic)
}
}
impl bevy_reflect::PartialReflect for Monitor 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 Monitor 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 __this =
Self {
name: <Option<String> as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"name")?)?,
physical_height: <u32 as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"physical_height")?)?,
physical_width: <u32 as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"physical_width")?)?,
physical_position: <IVec2 as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"physical_position")?)?,
refresh_rate_millihertz: <Option<u32> as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"refresh_rate_millihertz")?)?,
scale_factor: <f64 as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"scale_factor")?)?,
video_modes: <Vec<VideoMode> as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"video_modes")?)?,
};
::core::option::Option::Some(__this)
} else { ::core::option::Option::None }
}
}
};Reflect),
25 reflect(Component, Debug, Clone)
26)]
27#[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 Monitor {
fn serialize<__S>(&self, __serializer: __S)
-> _serde::__private229::Result<__S::Ok, __S::Error> where
__S: _serde::Serializer {
let mut __serde_state =
_serde::Serializer::serialize_struct(__serializer,
"Monitor", false as usize + 1 + 1 + 1 + 1 + 1 + 1 + 1)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"name", &self.name)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"physical_height", &self.physical_height)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"physical_width", &self.physical_width)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"physical_position", &self.physical_position)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"refresh_rate_millihertz", &self.refresh_rate_millihertz)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"scale_factor", &self.scale_factor)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"video_modes", &self.video_modes)?;
_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 Monitor {
fn deserialize<__D>(__deserializer: __D)
-> _serde::__private229::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,
__ignore,
}
#[doc(hidden)]
struct __FieldVisitor;
#[automatically_derived]
impl<'de> _serde::de::Visitor<'de> for __FieldVisitor {
type Value = __Field;
fn expecting(&self,
__formatter: &mut _serde::__private229::Formatter)
-> _serde::__private229::fmt::Result {
_serde::__private229::Formatter::write_str(__formatter,
"field identifier")
}
fn visit_u64<__E>(self, __value: u64)
-> _serde::__private229::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
0u64 => _serde::__private229::Ok(__Field::__field0),
1u64 => _serde::__private229::Ok(__Field::__field1),
2u64 => _serde::__private229::Ok(__Field::__field2),
3u64 => _serde::__private229::Ok(__Field::__field3),
4u64 => _serde::__private229::Ok(__Field::__field4),
5u64 => _serde::__private229::Ok(__Field::__field5),
6u64 => _serde::__private229::Ok(__Field::__field6),
_ => _serde::__private229::Ok(__Field::__ignore),
}
}
fn visit_str<__E>(self, __value: &str)
-> _serde::__private229::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
"name" => _serde::__private229::Ok(__Field::__field0),
"physical_height" =>
_serde::__private229::Ok(__Field::__field1),
"physical_width" =>
_serde::__private229::Ok(__Field::__field2),
"physical_position" =>
_serde::__private229::Ok(__Field::__field3),
"refresh_rate_millihertz" =>
_serde::__private229::Ok(__Field::__field4),
"scale_factor" =>
_serde::__private229::Ok(__Field::__field5),
"video_modes" =>
_serde::__private229::Ok(__Field::__field6),
_ => { _serde::__private229::Ok(__Field::__ignore) }
}
}
fn visit_bytes<__E>(self, __value: &[u8])
-> _serde::__private229::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
b"name" => _serde::__private229::Ok(__Field::__field0),
b"physical_height" =>
_serde::__private229::Ok(__Field::__field1),
b"physical_width" =>
_serde::__private229::Ok(__Field::__field2),
b"physical_position" =>
_serde::__private229::Ok(__Field::__field3),
b"refresh_rate_millihertz" =>
_serde::__private229::Ok(__Field::__field4),
b"scale_factor" =>
_serde::__private229::Ok(__Field::__field5),
b"video_modes" =>
_serde::__private229::Ok(__Field::__field6),
_ => { _serde::__private229::Ok(__Field::__ignore) }
}
}
}
#[automatically_derived]
impl<'de> _serde::Deserialize<'de> for __Field {
#[inline]
fn deserialize<__D>(__deserializer: __D)
-> _serde::__private229::Result<Self, __D::Error> where
__D: _serde::Deserializer<'de> {
_serde::Deserializer::deserialize_identifier(__deserializer,
__FieldVisitor)
}
}
#[doc(hidden)]
struct __Visitor<'de> {
marker: _serde::__private229::PhantomData<Monitor>,
lifetime: _serde::__private229::PhantomData<&'de ()>,
}
#[automatically_derived]
impl<'de> _serde::de::Visitor<'de> for __Visitor<'de> {
type Value = Monitor;
fn expecting(&self,
__formatter: &mut _serde::__private229::Formatter)
-> _serde::__private229::fmt::Result {
_serde::__private229::Formatter::write_str(__formatter,
"struct Monitor")
}
#[inline]
fn visit_seq<__A>(self, mut __seq: __A)
-> _serde::__private229::Result<Self::Value, __A::Error>
where __A: _serde::de::SeqAccess<'de> {
let __field0 =
match _serde::de::SeqAccess::next_element::<Option<String>>(&mut __seq)?
{
_serde::__private229::Some(__value) => __value,
_serde::__private229::None =>
return _serde::__private229::Err(_serde::de::Error::invalid_length(0usize,
&"struct Monitor with 7 elements")),
};
let __field1 =
match _serde::de::SeqAccess::next_element::<u32>(&mut __seq)?
{
_serde::__private229::Some(__value) => __value,
_serde::__private229::None =>
return _serde::__private229::Err(_serde::de::Error::invalid_length(1usize,
&"struct Monitor with 7 elements")),
};
let __field2 =
match _serde::de::SeqAccess::next_element::<u32>(&mut __seq)?
{
_serde::__private229::Some(__value) => __value,
_serde::__private229::None =>
return _serde::__private229::Err(_serde::de::Error::invalid_length(2usize,
&"struct Monitor with 7 elements")),
};
let __field3 =
match _serde::de::SeqAccess::next_element::<IVec2>(&mut __seq)?
{
_serde::__private229::Some(__value) => __value,
_serde::__private229::None =>
return _serde::__private229::Err(_serde::de::Error::invalid_length(3usize,
&"struct Monitor with 7 elements")),
};
let __field4 =
match _serde::de::SeqAccess::next_element::<Option<u32>>(&mut __seq)?
{
_serde::__private229::Some(__value) => __value,
_serde::__private229::None =>
return _serde::__private229::Err(_serde::de::Error::invalid_length(4usize,
&"struct Monitor with 7 elements")),
};
let __field5 =
match _serde::de::SeqAccess::next_element::<f64>(&mut __seq)?
{
_serde::__private229::Some(__value) => __value,
_serde::__private229::None =>
return _serde::__private229::Err(_serde::de::Error::invalid_length(5usize,
&"struct Monitor with 7 elements")),
};
let __field6 =
match _serde::de::SeqAccess::next_element::<Vec<VideoMode>>(&mut __seq)?
{
_serde::__private229::Some(__value) => __value,
_serde::__private229::None =>
return _serde::__private229::Err(_serde::de::Error::invalid_length(6usize,
&"struct Monitor with 7 elements")),
};
_serde::__private229::Ok(Monitor {
name: __field0,
physical_height: __field1,
physical_width: __field2,
physical_position: __field3,
refresh_rate_millihertz: __field4,
scale_factor: __field5,
video_modes: __field6,
})
}
#[inline]
fn visit_map<__A>(self, mut __map: __A)
-> _serde::__private229::Result<Self::Value, __A::Error>
where __A: _serde::de::MapAccess<'de> {
let mut __field0:
_serde::__private229::Option<Option<String>> =
_serde::__private229::None;
let mut __field1: _serde::__private229::Option<u32> =
_serde::__private229::None;
let mut __field2: _serde::__private229::Option<u32> =
_serde::__private229::None;
let mut __field3: _serde::__private229::Option<IVec2> =
_serde::__private229::None;
let mut __field4:
_serde::__private229::Option<Option<u32>> =
_serde::__private229::None;
let mut __field5: _serde::__private229::Option<f64> =
_serde::__private229::None;
let mut __field6:
_serde::__private229::Option<Vec<VideoMode>> =
_serde::__private229::None;
while let _serde::__private229::Some(__key) =
_serde::de::MapAccess::next_key::<__Field>(&mut __map)? {
match __key {
__Field::__field0 => {
if _serde::__private229::Option::is_some(&__field0) {
return _serde::__private229::Err(<__A::Error as
_serde::de::Error>::duplicate_field("name"));
}
__field0 =
_serde::__private229::Some(_serde::de::MapAccess::next_value::<Option<String>>(&mut __map)?);
}
__Field::__field1 => {
if _serde::__private229::Option::is_some(&__field1) {
return _serde::__private229::Err(<__A::Error as
_serde::de::Error>::duplicate_field("physical_height"));
}
__field1 =
_serde::__private229::Some(_serde::de::MapAccess::next_value::<u32>(&mut __map)?);
}
__Field::__field2 => {
if _serde::__private229::Option::is_some(&__field2) {
return _serde::__private229::Err(<__A::Error as
_serde::de::Error>::duplicate_field("physical_width"));
}
__field2 =
_serde::__private229::Some(_serde::de::MapAccess::next_value::<u32>(&mut __map)?);
}
__Field::__field3 => {
if _serde::__private229::Option::is_some(&__field3) {
return _serde::__private229::Err(<__A::Error as
_serde::de::Error>::duplicate_field("physical_position"));
}
__field3 =
_serde::__private229::Some(_serde::de::MapAccess::next_value::<IVec2>(&mut __map)?);
}
__Field::__field4 => {
if _serde::__private229::Option::is_some(&__field4) {
return _serde::__private229::Err(<__A::Error as
_serde::de::Error>::duplicate_field("refresh_rate_millihertz"));
}
__field4 =
_serde::__private229::Some(_serde::de::MapAccess::next_value::<Option<u32>>(&mut __map)?);
}
__Field::__field5 => {
if _serde::__private229::Option::is_some(&__field5) {
return _serde::__private229::Err(<__A::Error as
_serde::de::Error>::duplicate_field("scale_factor"));
}
__field5 =
_serde::__private229::Some(_serde::de::MapAccess::next_value::<f64>(&mut __map)?);
}
__Field::__field6 => {
if _serde::__private229::Option::is_some(&__field6) {
return _serde::__private229::Err(<__A::Error as
_serde::de::Error>::duplicate_field("video_modes"));
}
__field6 =
_serde::__private229::Some(_serde::de::MapAccess::next_value::<Vec<VideoMode>>(&mut __map)?);
}
_ => {
let _ =
_serde::de::MapAccess::next_value::<_serde::de::IgnoredAny>(&mut __map)?;
}
}
}
let __field0 =
match __field0 {
_serde::__private229::Some(__field0) => __field0,
_serde::__private229::None =>
_serde::__private229::de::missing_field("name")?,
};
let __field1 =
match __field1 {
_serde::__private229::Some(__field1) => __field1,
_serde::__private229::None =>
_serde::__private229::de::missing_field("physical_height")?,
};
let __field2 =
match __field2 {
_serde::__private229::Some(__field2) => __field2,
_serde::__private229::None =>
_serde::__private229::de::missing_field("physical_width")?,
};
let __field3 =
match __field3 {
_serde::__private229::Some(__field3) => __field3,
_serde::__private229::None =>
_serde::__private229::de::missing_field("physical_position")?,
};
let __field4 =
match __field4 {
_serde::__private229::Some(__field4) => __field4,
_serde::__private229::None =>
_serde::__private229::de::missing_field("refresh_rate_millihertz")?,
};
let __field5 =
match __field5 {
_serde::__private229::Some(__field5) => __field5,
_serde::__private229::None =>
_serde::__private229::de::missing_field("scale_factor")?,
};
let __field6 =
match __field6 {
_serde::__private229::Some(__field6) => __field6,
_serde::__private229::None =>
_serde::__private229::de::missing_field("video_modes")?,
};
_serde::__private229::Ok(Monitor {
name: __field0,
physical_height: __field1,
physical_width: __field2,
physical_position: __field3,
refresh_rate_millihertz: __field4,
scale_factor: __field5,
video_modes: __field6,
})
}
}
#[doc(hidden)]
const FIELDS: &'static [&'static str] =
&["name", "physical_height", "physical_width",
"physical_position", "refresh_rate_millihertz",
"scale_factor", "video_modes"];
_serde::Deserializer::deserialize_struct(__deserializer,
"Monitor", FIELDS,
__Visitor {
marker: _serde::__private229::PhantomData::<Monitor>,
lifetime: _serde::__private229::PhantomData,
})
}
}
};serde::Deserialize))]
28#[cfg_attr(
29 all(feature = "serialize", feature = "bevy_reflect"),
30 reflect(Serialize, Deserialize)
31)]
32pub struct Monitor {
33 pub name: Option<String>,
35 pub physical_height: u32,
37 pub physical_width: u32,
39 pub physical_position: IVec2,
41 pub refresh_rate_millihertz: Option<u32>,
43 pub scale_factor: f64,
45 pub video_modes: Vec<VideoMode>,
47}
48
49#[derive(impl bevy_ecs::component::Component for PrimaryMonitor 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 PrimaryMonitor {
#[inline]
fn fmt(&self, f: &mut ::core::fmt::Formatter) -> ::core::fmt::Result {
::core::fmt::Formatter::write_str(f, "PrimaryMonitor")
}
}Debug, #[automatically_derived]impl ::core::clone::Clone for PrimaryMonitor {
#[inline]
fn clone(&self) -> Self { PrimaryMonitor }
}Clone)]
51#[cfg_attr(
52 feature = "bevy_reflect",
53 derive(const _: () =
{
impl bevy_reflect::GetTypeRegistration for PrimaryMonitor where {
fn get_type_registration() -> bevy_reflect::TypeRegistration {
let mut registration =
bevy_reflect::TypeRegistration::of::<Self>();
registration.insert(<bevy_reflect::ReflectFromPtr as
bevy_reflect::CreateTypeData<Self>>::create_type_data(()));
registration.insert(<bevy_reflect::ReflectFromReflect as
bevy_reflect::CreateTypeData<Self>>::create_type_data(()));
registration.register_type_data_with::<ReflectComponent, Self,
_>(());
registration
}
#[inline(never)]
fn register_type_dependencies(registry:
&mut bevy_reflect::TypeRegistry) {}
}
impl bevy_reflect::Typed for PrimaryMonitor where {
#[inline(never)]
fn type_info() -> &'static bevy_reflect::TypeInfo {
static CELL: bevy_reflect::utility::NonGenericTypeInfoCell =
bevy_reflect::utility::NonGenericTypeInfoCell::new();
CELL.get_or_set(#[inline(never)] ||
{
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 PrimaryMonitor where {
fn type_path() -> &'static str {
"bevy_window::monitor::PrimaryMonitor"
}
fn short_type_path() -> &'static str { "PrimaryMonitor" }
fn type_ident() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("PrimaryMonitor")
}
fn crate_name() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("bevy_window::monitor".split(':').next().unwrap())
}
fn module_path() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("bevy_window::monitor")
}
}
impl bevy_reflect::Reflect for PrimaryMonitor 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(<PrimaryMonitor
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 PrimaryMonitor 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)
->
::core::result::Result<bevy_reflect::structs::DynamicStruct,
bevy_reflect::ReflectCloneError> {
let mut dynamic: bevy_reflect::structs::DynamicStruct =
::core::default::Default::default();
dynamic.set_represented_type(bevy_reflect::PartialReflect::get_represented_type_info(self));
::core::result::Result::Ok(dynamic)
}
}
impl bevy_reflect::PartialReflect for PrimaryMonitor 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 PrimaryMonitor 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 __this = Self {};
::core::option::Option::Some(__this)
} else { ::core::option::Option::None }
}
}
};Reflect),
54 reflect(Component, Debug, Clone)
55)]
56pub struct PrimaryMonitor;
57
58#[derive(impl bevy_ecs::component::Component for HasWindows 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 on_discard()
-> ::core::option::Option<bevy_ecs::lifecycle::ComponentHook> {
::core::option::Option::Some(<Self as
bevy_ecs::relationship::RelationshipTarget>::on_discard)
}
fn on_despawn()
-> ::core::option::Option<bevy_ecs::lifecycle::ComponentHook> {
::core::option::Option::Some(<Self as
bevy_ecs::relationship::RelationshipTarget>::on_despawn)
}
fn clone_behavior() -> bevy_ecs::component::ComponentCloneBehavior {
use bevy_ecs::relationship::{
RelationshipCloneBehaviorBase, RelationshipCloneBehaviorViaClone,
RelationshipCloneBehaviorViaReflect,
RelationshipTargetCloneBehaviorViaClone,
RelationshipTargetCloneBehaviorViaReflect,
RelationshipTargetCloneBehaviorHierarchy,
};
(&&&&&&&bevy_ecs::relationship::RelationshipCloneBehaviorSpecialization::<Self>::default()).default_clone_behavior()
}
fn map_entities<M: bevy_ecs::entity::EntityMapper>(this: &mut Self,
mapper: &mut M) {
use bevy_ecs::entity::MapEntities;
this.0.map_entities(mapper);
}
fn relationship_accessor()
->
::core::option::Option<bevy_ecs::relationship::ComponentRelationshipAccessor<Self>> {
::core::option::Option::Some(bevy_ecs::relationship::ComponentRelationshipAccessor::<Self>::relationship_target())
}
}
impl bevy_ecs::relationship::RelationshipTarget for HasWindows {
const LINKED_SPAWN: bool = true;
type Relationship = crate::window::OnMonitor;
type Collection = Vec<Entity>;
#[inline]
fn collection(&self) -> &Self::Collection { &self.0 }
#[inline]
fn collection_mut_risky(&mut self) -> &mut Self::Collection {
&mut self.0
}
#[inline]
fn from_collection_risky(collection: Self::Collection) -> Self {
Self { 0: collection }
}
}Component, #[automatically_derived]impl ::core::fmt::Debug for HasWindows {
#[inline]
fn fmt(&self, f: &mut ::core::fmt::Formatter) -> ::core::fmt::Result {
::core::fmt::Formatter::debug_tuple_field1_finish(f, "HasWindows",
&&self.0)
}
}Debug, #[automatically_derived]impl ::core::default::Default for HasWindows {
#[inline]
fn default() -> Self { HasWindows(::core::default::Default::default()) }
}Default)]
60#[relationship_target(relationship = crate::window::OnMonitor, linked_spawn)]
61pub struct HasWindows(Vec<Entity>);
62
63impl Monitor {
64 pub fn physical_size(&self) -> UVec2 {
66 UVec2::new(self.physical_width, self.physical_height)
67 }
68}
69
70#[derive(#[automatically_derived]impl ::core::fmt::Debug for VideoMode {
#[inline]
fn fmt(&self, f: &mut ::core::fmt::Formatter) -> ::core::fmt::Result {
::core::fmt::Formatter::debug_struct_field3_finish(f, "VideoMode",
"physical_size", &self.physical_size, "bit_depth",
&self.bit_depth, "refresh_rate_millihertz",
&&self.refresh_rate_millihertz)
}
}Debug, #[automatically_derived]#[doc(hidden)]unsafe impl ::core::clone::TrivialClone
for VideoMode {
}
#[automatically_derived]impl ::core::clone::Clone for VideoMode {
#[inline]
fn clone(&self) -> Self {
let _: ::core::clone::AssertParamIsClone<UVec2>;
let _: ::core::clone::AssertParamIsClone<u16>;
let _: ::core::clone::AssertParamIsClone<u32>;
*self
}
}Clone, #[automatically_derived]impl ::core::marker::Copy for VideoMode { }Copy, #[automatically_derived]impl ::core::marker::StructuralPartialEq for VideoMode
{
}
#[automatically_derived]impl ::core::cmp::PartialEq for VideoMode {
#[inline]
fn eq(&self, other: &Self) -> bool {
self.bit_depth == other.bit_depth &&
self.refresh_rate_millihertz == other.refresh_rate_millihertz
&& self.physical_size == other.physical_size
}
}PartialEq, #[automatically_derived]impl ::core::cmp::Eq for VideoMode {
#[inline]
#[doc(hidden)]
#[coverage(off)]
fn assert_fields_are_eq(&self) {
let _: ::core::cmp::AssertParamIsEq<UVec2>;
let _: ::core::cmp::AssertParamIsEq<u16>;
let _: ::core::cmp::AssertParamIsEq<u32>;
}
}Eq)]
72#[cfg_attr(feature = "bevy_reflect", derive(const _: () =
{
impl bevy_reflect::GetTypeRegistration for VideoMode where {
fn get_type_registration() -> bevy_reflect::TypeRegistration {
let mut registration =
bevy_reflect::TypeRegistration::of::<Self>();
registration.insert(<bevy_reflect::ReflectFromPtr as
bevy_reflect::CreateTypeData<Self>>::create_type_data(()));
registration.insert(<bevy_reflect::ReflectFromReflect as
bevy_reflect::CreateTypeData<Self>>::create_type_data(()));
registration.register_type_data_with::<ReflectSerialize, Self,
_>(());
registration.register_type_data_with::<ReflectDeserialize,
Self, _>(());
registration
}
#[inline(never)]
fn register_type_dependencies(registry:
&mut bevy_reflect::TypeRegistry) {
<UVec2 as
bevy_reflect::__macro_exports::RegisterForReflection>::__register(registry);
<u16 as
bevy_reflect::__macro_exports::RegisterForReflection>::__register(registry);
<u32 as
bevy_reflect::__macro_exports::RegisterForReflection>::__register(registry);
}
}
impl bevy_reflect::Typed for VideoMode where {
#[inline(never)]
fn type_info() -> &'static bevy_reflect::TypeInfo {
static CELL: bevy_reflect::utility::NonGenericTypeInfoCell =
bevy_reflect::utility::NonGenericTypeInfoCell::new();
CELL.get_or_set(#[inline(never)] ||
{
bevy_reflect::TypeInfo::Struct(bevy_reflect::structs::StructInfo::new::<Self>(&[bevy_reflect::NamedField::new::<UVec2>("physical_size"),
bevy_reflect::NamedField::new::<u16>("bit_depth"),
bevy_reflect::NamedField::new::<u32>("refresh_rate_millihertz")]))
})
}
}
#[allow(deprecated, reason =
"derives on a deprecated type shouldn't be considered a usage")]
impl bevy_reflect::TypePath for VideoMode where {
fn type_path() -> &'static str {
"bevy_window::monitor::VideoMode"
}
fn short_type_path() -> &'static str { "VideoMode" }
fn type_ident() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("VideoMode")
}
fn crate_name() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("bevy_window::monitor".split(':').next().unwrap())
}
fn module_path() -> ::core::option::Option<&'static str> {
::core::option::Option::Some("bevy_window::monitor")
}
}
impl bevy_reflect::Reflect for VideoMode 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(<VideoMode
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 VideoMode where {
fn field(&self, name: &str)
-> ::core::option::Option<&dyn bevy_reflect::PartialReflect> {
match name {
"physical_size" =>
::core::option::Option::Some(&self.physical_size),
"bit_depth" =>
::core::option::Option::Some(&self.bit_depth),
"refresh_rate_millihertz" =>
::core::option::Option::Some(&self.refresh_rate_millihertz),
_ => ::core::option::Option::None,
}
}
fn field_mut(&mut self, name: &str)
->
::core::option::Option<&mut dyn bevy_reflect::PartialReflect> {
match name {
"physical_size" =>
::core::option::Option::Some(&mut self.physical_size),
"bit_depth" =>
::core::option::Option::Some(&mut self.bit_depth),
"refresh_rate_millihertz" =>
::core::option::Option::Some(&mut self.refresh_rate_millihertz),
_ => ::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_size),
1usize => ::core::option::Option::Some(&self.bit_depth),
2usize =>
::core::option::Option::Some(&self.refresh_rate_millihertz),
_ => ::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_size),
1usize => ::core::option::Option::Some(&mut self.bit_depth),
2usize =>
::core::option::Option::Some(&mut self.refresh_rate_millihertz),
_ => ::core::option::Option::None,
}
}
fn name_at(&self, index: usize) -> ::core::option::Option<&str> {
match index {
0usize => ::core::option::Option::Some("physical_size"),
1usize => ::core::option::Option::Some("bit_depth"),
2usize =>
::core::option::Option::Some("refresh_rate_millihertz"),
_ => ::core::option::Option::None,
}
}
fn index_of_name(&self, name: &str)
-> ::core::option::Option<usize> {
match name {
"physical_size" => ::core::option::Option::Some(0usize),
"bit_depth" => ::core::option::Option::Some(1usize),
"refresh_rate_millihertz" =>
::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)
->
::core::result::Result<bevy_reflect::structs::DynamicStruct,
bevy_reflect::ReflectCloneError> {
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_size",
bevy_reflect::PartialReflect::to_dynamic(&self.physical_size)?);
dynamic.insert_boxed("bit_depth",
bevy_reflect::PartialReflect::to_dynamic(&self.bit_depth)?);
dynamic.insert_boxed("refresh_rate_millihertz",
bevy_reflect::PartialReflect::to_dynamic(&self.refresh_rate_millihertz)?);
::core::result::Result::Ok(dynamic)
}
}
impl bevy_reflect::PartialReflect for VideoMode 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 VideoMode 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 __this =
Self {
physical_size: <UVec2 as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"physical_size")?)?,
bit_depth: <u16 as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"bit_depth")?)?,
refresh_rate_millihertz: <u32 as
bevy_reflect::FromReflect>::from_reflect(bevy_reflect::structs::Struct::field(__ref_struct,
"refresh_rate_millihertz")?)?,
};
::core::option::Option::Some(__this)
} else { ::core::option::Option::None }
}
}
};Reflect), reflect(Debug, Clone))]
73#[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 VideoMode {
fn serialize<__S>(&self, __serializer: __S)
-> _serde::__private229::Result<__S::Ok, __S::Error> where
__S: _serde::Serializer {
let mut __serde_state =
_serde::Serializer::serialize_struct(__serializer,
"VideoMode", false as usize + 1 + 1 + 1)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"physical_size", &self.physical_size)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"bit_depth", &self.bit_depth)?;
_serde::ser::SerializeStruct::serialize_field(&mut __serde_state,
"refresh_rate_millihertz", &self.refresh_rate_millihertz)?;
_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 VideoMode {
fn deserialize<__D>(__deserializer: __D)
-> _serde::__private229::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::__private229::Formatter)
-> _serde::__private229::fmt::Result {
_serde::__private229::Formatter::write_str(__formatter,
"field identifier")
}
fn visit_u64<__E>(self, __value: u64)
-> _serde::__private229::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
0u64 => _serde::__private229::Ok(__Field::__field0),
1u64 => _serde::__private229::Ok(__Field::__field1),
2u64 => _serde::__private229::Ok(__Field::__field2),
_ => _serde::__private229::Ok(__Field::__ignore),
}
}
fn visit_str<__E>(self, __value: &str)
-> _serde::__private229::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
"physical_size" =>
_serde::__private229::Ok(__Field::__field0),
"bit_depth" => _serde::__private229::Ok(__Field::__field1),
"refresh_rate_millihertz" =>
_serde::__private229::Ok(__Field::__field2),
_ => { _serde::__private229::Ok(__Field::__ignore) }
}
}
fn visit_bytes<__E>(self, __value: &[u8])
-> _serde::__private229::Result<Self::Value, __E> where
__E: _serde::de::Error {
match __value {
b"physical_size" =>
_serde::__private229::Ok(__Field::__field0),
b"bit_depth" => _serde::__private229::Ok(__Field::__field1),
b"refresh_rate_millihertz" =>
_serde::__private229::Ok(__Field::__field2),
_ => { _serde::__private229::Ok(__Field::__ignore) }
}
}
}
#[automatically_derived]
impl<'de> _serde::Deserialize<'de> for __Field {
#[inline]
fn deserialize<__D>(__deserializer: __D)
-> _serde::__private229::Result<Self, __D::Error> where
__D: _serde::Deserializer<'de> {
_serde::Deserializer::deserialize_identifier(__deserializer,
__FieldVisitor)
}
}
#[doc(hidden)]
struct __Visitor<'de> {
marker: _serde::__private229::PhantomData<VideoMode>,
lifetime: _serde::__private229::PhantomData<&'de ()>,
}
#[automatically_derived]
impl<'de> _serde::de::Visitor<'de> for __Visitor<'de> {
type Value = VideoMode;
fn expecting(&self,
__formatter: &mut _serde::__private229::Formatter)
-> _serde::__private229::fmt::Result {
_serde::__private229::Formatter::write_str(__formatter,
"struct VideoMode")
}
#[inline]
fn visit_seq<__A>(self, mut __seq: __A)
-> _serde::__private229::Result<Self::Value, __A::Error>
where __A: _serde::de::SeqAccess<'de> {
let __field0 =
match _serde::de::SeqAccess::next_element::<UVec2>(&mut __seq)?
{
_serde::__private229::Some(__value) => __value,
_serde::__private229::None =>
return _serde::__private229::Err(_serde::de::Error::invalid_length(0usize,
&"struct VideoMode with 3 elements")),
};
let __field1 =
match _serde::de::SeqAccess::next_element::<u16>(&mut __seq)?
{
_serde::__private229::Some(__value) => __value,
_serde::__private229::None =>
return _serde::__private229::Err(_serde::de::Error::invalid_length(1usize,
&"struct VideoMode with 3 elements")),
};
let __field2 =
match _serde::de::SeqAccess::next_element::<u32>(&mut __seq)?
{
_serde::__private229::Some(__value) => __value,
_serde::__private229::None =>
return _serde::__private229::Err(_serde::de::Error::invalid_length(2usize,
&"struct VideoMode with 3 elements")),
};
_serde::__private229::Ok(VideoMode {
physical_size: __field0,
bit_depth: __field1,
refresh_rate_millihertz: __field2,
})
}
#[inline]
fn visit_map<__A>(self, mut __map: __A)
-> _serde::__private229::Result<Self::Value, __A::Error>
where __A: _serde::de::MapAccess<'de> {
let mut __field0: _serde::__private229::Option<UVec2> =
_serde::__private229::None;
let mut __field1: _serde::__private229::Option<u16> =
_serde::__private229::None;
let mut __field2: _serde::__private229::Option<u32> =
_serde::__private229::None;
while let _serde::__private229::Some(__key) =
_serde::de::MapAccess::next_key::<__Field>(&mut __map)? {
match __key {
__Field::__field0 => {
if _serde::__private229::Option::is_some(&__field0) {
return _serde::__private229::Err(<__A::Error as
_serde::de::Error>::duplicate_field("physical_size"));
}
__field0 =
_serde::__private229::Some(_serde::de::MapAccess::next_value::<UVec2>(&mut __map)?);
}
__Field::__field1 => {
if _serde::__private229::Option::is_some(&__field1) {
return _serde::__private229::Err(<__A::Error as
_serde::de::Error>::duplicate_field("bit_depth"));
}
__field1 =
_serde::__private229::Some(_serde::de::MapAccess::next_value::<u16>(&mut __map)?);
}
__Field::__field2 => {
if _serde::__private229::Option::is_some(&__field2) {
return _serde::__private229::Err(<__A::Error as
_serde::de::Error>::duplicate_field("refresh_rate_millihertz"));
}
__field2 =
_serde::__private229::Some(_serde::de::MapAccess::next_value::<u32>(&mut __map)?);
}
_ => {
let _ =
_serde::de::MapAccess::next_value::<_serde::de::IgnoredAny>(&mut __map)?;
}
}
}
let __field0 =
match __field0 {
_serde::__private229::Some(__field0) => __field0,
_serde::__private229::None =>
_serde::__private229::de::missing_field("physical_size")?,
};
let __field1 =
match __field1 {
_serde::__private229::Some(__field1) => __field1,
_serde::__private229::None =>
_serde::__private229::de::missing_field("bit_depth")?,
};
let __field2 =
match __field2 {
_serde::__private229::Some(__field2) => __field2,
_serde::__private229::None =>
_serde::__private229::de::missing_field("refresh_rate_millihertz")?,
};
_serde::__private229::Ok(VideoMode {
physical_size: __field0,
bit_depth: __field1,
refresh_rate_millihertz: __field2,
})
}
}
#[doc(hidden)]
const FIELDS: &'static [&'static str] =
&["physical_size", "bit_depth", "refresh_rate_millihertz"];
_serde::Deserializer::deserialize_struct(__deserializer,
"VideoMode", FIELDS,
__Visitor {
marker: _serde::__private229::PhantomData::<VideoMode>,
lifetime: _serde::__private229::PhantomData,
})
}
}
};serde::Deserialize))]
74#[cfg_attr(
75 all(feature = "serialize", feature = "bevy_reflect"),
76 reflect(Serialize, Deserialize)
77)]
78pub struct VideoMode {
79 pub physical_size: UVec2,
81 pub bit_depth: u16,
83 pub refresh_rate_millihertz: u32,
85}