Skip to content

Commit cef33d4

Browse files
taiki-enikomatsakis
authored andcommitted
Use Set1<Region> instead of Option<Region>
1 parent 3d0d96b commit cef33d4

File tree

1 file changed

+6
-5
lines changed

1 file changed

+6
-5
lines changed

src/librustc/middle/resolve_lifetime.rs

+6-5
Original file line numberDiff line numberDiff line change
@@ -2129,7 +2129,7 @@ impl<'a, 'tcx> LifetimeContext<'a, 'tcx> {
21292129
struct SelfVisitor<'a> {
21302130
map: &'a NamedRegionMap,
21312131
impl_self: Option<&'a hir::TyKind>,
2132-
lifetime: Option<Region>,
2132+
lifetime: Set1<Region>,
21332133
}
21342134

21352135
impl SelfVisitor<'_> {
@@ -2173,8 +2173,9 @@ impl<'a, 'tcx> LifetimeContext<'a, 'tcx> {
21732173
if let hir::TyKind::Path(hir::QPath::Resolved(None, ref path)) = mt.ty.node
21742174
{
21752175
if self.is_self_ty(path.res) {
2176-
self.lifetime = self.map.defs.get(&lifetime_ref.hir_id).copied();
2177-
return;
2176+
if let Some(lifetime) = self.map.defs.get(&lifetime_ref.hir_id) {
2177+
self.lifetime.insert(*lifetime);
2178+
}
21782179
}
21792180
}
21802181
}
@@ -2185,10 +2186,10 @@ impl<'a, 'tcx> LifetimeContext<'a, 'tcx> {
21852186
let mut visitor = SelfVisitor {
21862187
map: self.map,
21872188
impl_self: impl_self.map(|ty| &ty.node),
2188-
lifetime: None,
2189+
lifetime: Set1::Empty,
21892190
};
21902191
visitor.visit_ty(&inputs[0]);
2191-
if let Some(lifetime) = visitor.lifetime {
2192+
if let Set1::One(lifetime) = visitor.lifetime {
21922193
let scope = Scope::Elision {
21932194
elide: Elide::Exact(lifetime),
21942195
s: self.scope,

0 commit comments

Comments
 (0)