@@ -1356,8 +1356,8 @@ static bool isAcceptableLookupResult(const DeclContext *dc,
1356
1356
return true ;
1357
1357
}
1358
1358
1359
- bool namelookup::finishLookup (const DeclContext *dc, NLOptions options,
1360
- SmallVectorImpl<ValueDecl *> &decls) {
1359
+ void namelookup::pruneLookupResultSet (const DeclContext *dc, NLOptions options,
1360
+ SmallVectorImpl<ValueDecl *> &decls) {
1361
1361
// If we're supposed to remove overridden declarations, do so now.
1362
1362
if (options & NL_RemoveOverridden)
1363
1363
removeOverriddenDecls (decls);
@@ -1368,9 +1368,6 @@ bool namelookup::finishLookup(const DeclContext *dc, NLOptions options,
1368
1368
removeShadowedDecls (decls, M);
1369
1369
1370
1370
filterForDiscriminator (decls, M->getDebugClient ());
1371
-
1372
- // We're done. Report success/failure.
1373
- return !decls.empty ();
1374
1371
}
1375
1372
1376
1373
// / Inspect the given type to determine which nominal type declarations it
@@ -1574,7 +1571,13 @@ bool DeclContext::lookupQualified(ArrayRef<NominalTypeDecl *> typeDecls,
1574
1571
}
1575
1572
}
1576
1573
1577
- return finishLookup (this , options, decls);
1574
+ pruneLookupResultSet (this , options, decls);
1575
+ if (auto *debugClient = this ->getParentModule ()->getDebugClient ()) {
1576
+ debugClient->finishLookupInNominals (this , typeDecls, member, options,
1577
+ decls);
1578
+ }
1579
+ // We're done. Report success/failure.
1580
+ return !decls.empty ();
1578
1581
}
1579
1582
1580
1583
bool DeclContext::lookupQualified (ModuleDecl *module, DeclName member,
@@ -1626,7 +1629,13 @@ bool DeclContext::lookupQualified(ModuleDecl *module, DeclName member,
1626
1629
return !knownDecls.insert (vd).second ;
1627
1630
}), decls.end ());
1628
1631
1629
- return finishLookup (this , options, decls);
1632
+ pruneLookupResultSet (this , options, decls);
1633
+
1634
+ if (auto *debugClient = this ->getParentModule ()->getDebugClient ()) {
1635
+ debugClient->finishLookupInModule (this , module, member, options, decls);
1636
+ }
1637
+ // We're done. Report success/failure.
1638
+ return !decls.empty ();
1630
1639
}
1631
1640
1632
1641
bool DeclContext::lookupAnyObject (DeclName member, NLOptions options,
@@ -1681,7 +1690,12 @@ bool DeclContext::lookupAnyObject(DeclName member, NLOptions options,
1681
1690
decls.push_back (decl);
1682
1691
}
1683
1692
1684
- return finishLookup (this , options, decls);
1693
+ pruneLookupResultSet (this , options, decls);
1694
+ if (auto *debugClient = this ->getParentModule ()->getDebugClient ()) {
1695
+ debugClient->finishLookupInAnyObject (this , member, options, decls);
1696
+ }
1697
+ // We're done. Report success/failure.
1698
+ return !decls.empty ();
1685
1699
}
1686
1700
1687
1701
void DeclContext::lookupAllObjCMethods (
0 commit comments