if let TyKind::Path(ref qself, ref path) = ty.kind {
if let Some(partial_res) = self.resolver.get_partial_res(ty.id) {
let res = partial_res.base_res();
- if res.ns().map(|ns| ns != Namespace::TypeNS).unwrap_or(false) {
+ if !res.matches_ns(Namespace::TypeNS) {
debug!(
"lower_generic_arg: Lowering type argument as const argument: {:?}",
ty,
Res::Err => None,
}
}
+
+ /// Always returns `true` if `self` is `Res::Err`
+ pub fn matches_ns(&self, ns: Namespace) -> bool {
+ self.ns().map(|actual_ns| actual_ns == ns).unwrap_or(true)
+ }
}