mirror of
https://github.com/rust-lang/rust
synced 2024-10-16 05:23:45 +00:00
Avoid code duplication
This commit is contained in:
parent
49961947c8
commit
3ba50b36e7
|
@ -372,17 +372,14 @@ pub fn check_concrete_type_after_default(
|
||||||
) -> bool {
|
) -> bool {
|
||||||
let mut default_param_seen = false;
|
let mut default_param_seen = false;
|
||||||
for param in self.params.iter() {
|
for param in self.params.iter() {
|
||||||
if param
|
if let Some(inst) =
|
||||||
.default_value(tcx)
|
param.default_value(tcx).map(|default| default.instantiate(tcx, args))
|
||||||
.is_some_and(|default| default.instantiate(tcx, args) == args[param.index as usize])
|
|
||||||
{
|
{
|
||||||
default_param_seen = true;
|
if inst == args[param.index as usize] {
|
||||||
} else if default_param_seen
|
default_param_seen = true;
|
||||||
&& param.default_value(tcx).is_some_and(|default| {
|
} else if default_param_seen {
|
||||||
default.instantiate(tcx, args) != args[param.index as usize]
|
return true;
|
||||||
})
|
}
|
||||||
{
|
|
||||||
return true;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
false
|
false
|
||||||
|
|
Loading…
Reference in a new issue