Use new let-else syntax where possible (#6463)
# Objective Let-else syntax is now stable! ## Solution Use it where possible!
This commit is contained in:
parent
1bd3d85769
commit
e5905379de
@ -970,9 +970,7 @@ pub(crate) fn assign_lights_to_clusters(
|
||||
continue;
|
||||
}
|
||||
|
||||
let screen_size = if let Some(screen_size) = camera.physical_viewport_size() {
|
||||
screen_size
|
||||
} else {
|
||||
let Some(screen_size) = camera.physical_viewport_size() else {
|
||||
clusters.clear();
|
||||
continue;
|
||||
};
|
||||
|
||||
@ -137,11 +137,10 @@ impl ReflectTraits {
|
||||
// Handles `#[reflect( Hash, Default, ... )]`
|
||||
NestedMeta::Meta(Meta::Path(path)) => {
|
||||
// Get the first ident in the path (hopefully the path only contains one and not `std::hash::Hash`)
|
||||
let ident = if let Some(segment) = path.segments.iter().next() {
|
||||
&segment.ident
|
||||
} else {
|
||||
let Some(segment) = path.segments.iter().next() else {
|
||||
continue;
|
||||
};
|
||||
let ident = &segment.ident;
|
||||
let ident_name = ident.to_string();
|
||||
|
||||
// Track the span where the trait is implemented for future errors
|
||||
@ -172,12 +171,12 @@ impl ReflectTraits {
|
||||
// Handles `#[reflect( Hash(custom_hash_fn) )]`
|
||||
NestedMeta::Meta(Meta::List(list)) => {
|
||||
// Get the first ident in the path (hopefully the path only contains one and not `std::hash::Hash`)
|
||||
let ident = if let Some(segment) = list.path.segments.iter().next() {
|
||||
segment.ident.to_string()
|
||||
} else {
|
||||
let Some(segment) = list.path.segments.iter().next() else {
|
||||
continue;
|
||||
};
|
||||
|
||||
let ident = segment.ident.to_string();
|
||||
|
||||
// Track the span where the trait is implemented for future errors
|
||||
let span = ident.span();
|
||||
|
||||
|
||||
@ -24,9 +24,7 @@ pub(crate) fn type_uuid_derive(input: proc_macro::TokenStream) -> proc_macro::To
|
||||
|
||||
let mut uuid = None;
|
||||
for attribute in ast.attrs.iter().filter_map(|attr| attr.parse_meta().ok()) {
|
||||
let name_value = if let Meta::NameValue(name_value) = attribute {
|
||||
name_value
|
||||
} else {
|
||||
let Meta::NameValue(name_value) = attribute else {
|
||||
continue;
|
||||
};
|
||||
|
||||
|
||||
@ -26,9 +26,7 @@ pub fn enum_hash<TEnum: Enum>(value: &TEnum) -> Option<u64> {
|
||||
#[inline]
|
||||
pub fn enum_partial_eq<TEnum: Enum>(a: &TEnum, b: &dyn Reflect) -> Option<bool> {
|
||||
// Both enums?
|
||||
let b = if let ReflectRef::Enum(e) = b.reflect_ref() {
|
||||
e
|
||||
} else {
|
||||
let ReflectRef::Enum(b) = b.reflect_ref() else {
|
||||
return Some(false);
|
||||
};
|
||||
|
||||
|
||||
@ -324,9 +324,7 @@ pub fn list_apply<L: List>(a: &mut L, b: &dyn Reflect) {
|
||||
/// Returns [`None`] if the comparison couldn't even be performed.
|
||||
#[inline]
|
||||
pub fn list_partial_eq<L: List>(a: &L, b: &dyn Reflect) -> Option<bool> {
|
||||
let list = if let ReflectRef::List(list) = b.reflect_ref() {
|
||||
list
|
||||
} else {
|
||||
let ReflectRef::List(list) = b.reflect_ref() else {
|
||||
return Some(false);
|
||||
};
|
||||
|
||||
|
||||
@ -371,9 +371,7 @@ impl<'a> ExactSizeIterator for MapIter<'a> {}
|
||||
/// Returns [`None`] if the comparison couldn't even be performed.
|
||||
#[inline]
|
||||
pub fn map_partial_eq<M: Map>(a: &M, b: &dyn Reflect) -> Option<bool> {
|
||||
let map = if let ReflectRef::Map(map) = b.reflect_ref() {
|
||||
map
|
||||
} else {
|
||||
let ReflectRef::Map(map) = b.reflect_ref() else {
|
||||
return Some(false);
|
||||
};
|
||||
|
||||
|
||||
@ -480,9 +480,7 @@ impl Typed for DynamicStruct {
|
||||
/// Returns [`None`] if the comparison couldn't even be performed.
|
||||
#[inline]
|
||||
pub fn struct_partial_eq<S: Struct>(a: &S, b: &dyn Reflect) -> Option<bool> {
|
||||
let struct_value = if let ReflectRef::Struct(struct_value) = b.reflect_ref() {
|
||||
struct_value
|
||||
} else {
|
||||
let ReflectRef::Struct(struct_value) = b.reflect_ref() else {
|
||||
return Some(false);
|
||||
};
|
||||
|
||||
|
||||
@ -396,9 +396,7 @@ pub fn tuple_apply<T: Tuple>(a: &mut T, b: &dyn Reflect) {
|
||||
/// Returns [`None`] if the comparison couldn't even be performed.
|
||||
#[inline]
|
||||
pub fn tuple_partial_eq<T: Tuple>(a: &T, b: &dyn Reflect) -> Option<bool> {
|
||||
let b = if let ReflectRef::Tuple(tuple) = b.reflect_ref() {
|
||||
tuple
|
||||
} else {
|
||||
let ReflectRef::Tuple(b) = b.reflect_ref() else {
|
||||
return Some(false);
|
||||
};
|
||||
|
||||
|
||||
@ -381,9 +381,7 @@ impl Typed for DynamicTupleStruct {
|
||||
/// Returns [`None`] if the comparison couldn't even be performed.
|
||||
#[inline]
|
||||
pub fn tuple_struct_partial_eq<S: TupleStruct>(a: &S, b: &dyn Reflect) -> Option<bool> {
|
||||
let tuple_struct = if let ReflectRef::TupleStruct(tuple_struct) = b.reflect_ref() {
|
||||
tuple_struct
|
||||
} else {
|
||||
let ReflectRef::TupleStruct(tuple_struct) = b.reflect_ref() else {
|
||||
return Some(false);
|
||||
};
|
||||
|
||||
|
||||
@ -116,9 +116,7 @@ pub fn derive_as_bind_group(ast: syn::DeriveInput) -> Result<TokenStream> {
|
||||
// Read field-level attributes
|
||||
for field in fields.iter() {
|
||||
for attr in &field.attrs {
|
||||
let attr_ident = if let Some(ident) = attr.path.get_ident() {
|
||||
ident
|
||||
} else {
|
||||
let Some(attr_ident) = attr.path.get_ident() else {
|
||||
continue;
|
||||
};
|
||||
|
||||
|
||||
@ -78,9 +78,7 @@ impl Node for CameraDriverNode {
|
||||
continue;
|
||||
}
|
||||
|
||||
let swap_chain_texture = if let Some(swap_chain_texture) = &window.swap_chain_texture {
|
||||
swap_chain_texture
|
||||
} else {
|
||||
let Some(swap_chain_texture) = &window.swap_chain_texture else {
|
||||
continue;
|
||||
};
|
||||
|
||||
|
||||
@ -20,9 +20,7 @@ pub fn basis_buffer_to_image(
|
||||
return Err(TextureError::InvalidData("Invalid header".to_string()));
|
||||
}
|
||||
|
||||
let image0_info = if let Some(image_info) = transcoder.image_info(buffer, 0) {
|
||||
image_info
|
||||
} else {
|
||||
let Some(image0_info) = transcoder.image_info(buffer, 0) else {
|
||||
return Err(TextureError::InvalidData(
|
||||
"Failed to get image info".to_string(),
|
||||
));
|
||||
|
||||
@ -54,10 +54,9 @@ impl Node for UiPassNode {
|
||||
) -> Result<(), NodeRunError> {
|
||||
let input_view_entity = graph.get_input_entity(Self::IN_VIEW)?;
|
||||
|
||||
let (transparent_phase, target, camera_ui) =
|
||||
if let Ok(result) = self.ui_view_query.get_manual(world, input_view_entity) {
|
||||
result
|
||||
} else {
|
||||
let Ok((transparent_phase, target, camera_ui)) =
|
||||
self.ui_view_query.get_manual(world, input_view_entity)
|
||||
else {
|
||||
return Ok(());
|
||||
};
|
||||
if transparent_phase.items.is_empty() {
|
||||
|
||||
@ -398,9 +398,7 @@ pub fn winit_runner_with(mut app: App) {
|
||||
return;
|
||||
};
|
||||
|
||||
let window = if let Some(window) = windows.get_mut(window_id) {
|
||||
window
|
||||
} else {
|
||||
let Some(window) = windows.get_mut(window_id) else {
|
||||
// If we're here, this window was previously opened
|
||||
info!("Skipped event for closed window: {:?}", window_id);
|
||||
return;
|
||||
|
||||
@ -248,9 +248,7 @@ fn collision_system(
|
||||
windows: Res<Windows>,
|
||||
mut query: Query<(&mut Velocity, &mut Transform), With<Contributor>>,
|
||||
) {
|
||||
let window = if let Some(window) = windows.get_primary() {
|
||||
window
|
||||
} else {
|
||||
let Some(window) = windows.get_primary() else {
|
||||
return;
|
||||
};
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user