mirror of
https://github.com/rust-lang/rust-analyzer.git
synced 2025-09-28 04:44:57 +00:00
Fix clippy::or_fun_call
This commit is contained in:
parent
40424d4222
commit
b28ca32db2
12 changed files with 29 additions and 26 deletions
|
@ -95,7 +95,7 @@ impl LangItems {
|
|||
.nth(0);
|
||||
if let Some(lang_item_name) = lang_item_name {
|
||||
let imp = ImplBlock::from_id(*module, impl_id);
|
||||
self.items.entry(lang_item_name).or_insert(LangItemTarget::ImplBlock(imp));
|
||||
self.items.entry(lang_item_name).or_insert_with(|| LangItemTarget::ImplBlock(imp));
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -332,7 +332,8 @@ impl CrateDefMap {
|
|||
let name = path.expand_macro_expr()?;
|
||||
// search local first
|
||||
// FIXME: Remove public_macros check when we have a correct local_macors implementation
|
||||
let local = self.public_macros.get(&name).or(self.local_macros.get(&name)).map(|it| *it);
|
||||
let local =
|
||||
self.public_macros.get(&name).or_else(|| self.local_macros.get(&name)).map(|it| *it);
|
||||
if local.is_some() {
|
||||
return local;
|
||||
}
|
||||
|
@ -479,8 +480,10 @@ impl CrateDefMap {
|
|||
}
|
||||
|
||||
fn resolve_name_in_crate_root_or_extern_prelude(&self, name: &Name) -> ItemOrMacro {
|
||||
let from_crate_root =
|
||||
self[self.root].scope.get_item_or_macro(name).unwrap_or(Either::Left(PerNs::none()));
|
||||
let from_crate_root = self[self.root]
|
||||
.scope
|
||||
.get_item_or_macro(name)
|
||||
.unwrap_or_else(|| Either::Left(PerNs::none()));
|
||||
let from_extern_prelude = self.resolve_name_in_extern_prelude(name);
|
||||
|
||||
or(from_crate_root, Either::Left(from_extern_prelude))
|
||||
|
@ -505,8 +508,10 @@ impl CrateDefMap {
|
|||
// - current module / scope
|
||||
// - extern prelude
|
||||
// - std prelude
|
||||
let from_scope =
|
||||
self[module].scope.get_item_or_macro(name).unwrap_or(Either::Left(PerNs::none()));;
|
||||
let from_scope = self[module]
|
||||
.scope
|
||||
.get_item_or_macro(name)
|
||||
.unwrap_or_else(|| Either::Left(PerNs::none()));;
|
||||
let from_extern_prelude =
|
||||
self.extern_prelude.get(name).map_or(PerNs::none(), |&it| PerNs::types(it));
|
||||
let from_prelude = self.resolve_in_prelude(db, name);
|
||||
|
@ -525,7 +530,7 @@ impl CrateDefMap {
|
|||
} else {
|
||||
db.crate_def_map(prelude.krate)[prelude.module_id].scope.get_item_or_macro(name)
|
||||
};
|
||||
resolution.unwrap_or(Either::Left(PerNs::none()))
|
||||
resolution.unwrap_or_else(|| Either::Left(PerNs::none()))
|
||||
} else {
|
||||
Either::Left(PerNs::none())
|
||||
}
|
||||
|
|
|
@ -451,7 +451,7 @@ impl Ty {
|
|||
/// Substitutes `Ty::Bound` vars (as opposed to type parameters).
|
||||
pub fn subst_bound_vars(self, substs: &Substs) -> Ty {
|
||||
self.fold(&mut |ty| match ty {
|
||||
Ty::Bound(idx) => substs.get(idx as usize).cloned().unwrap_or(Ty::Bound(idx)),
|
||||
Ty::Bound(idx) => substs.get(idx as usize).cloned().unwrap_or_else(|| Ty::Bound(idx)),
|
||||
ty => ty,
|
||||
})
|
||||
}
|
||||
|
|
|
@ -462,7 +462,7 @@ impl<'a, D: HirDatabase> InferenceContext<'a, D> {
|
|||
let mut resolved =
|
||||
if remaining_index.is_none() { def.take_values()? } else { def.take_types()? };
|
||||
|
||||
let remaining_index = remaining_index.unwrap_or(path.segments.len());
|
||||
let remaining_index = remaining_index.unwrap_or_else(|| path.segments.len());
|
||||
let mut actual_def_ty: Option<Ty> = None;
|
||||
|
||||
let krate = resolver.krate()?;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue