pub(super) fn struct_projection<'a, 'lt, 'db, DB: HirDatabase>(
ctx: &'a TermSearchCtx<'db, DB>,
_defs: &'a FxHashSet<ScopeDef>,
lookup: &'lt mut LookupTable<'db>,
should_continue: &'a dyn Fn() -> bool,
) -> impl Iterator<Item = Expr<'db>> + use<'a, 'db, 'lt, DB>Expand description
§Struct projection tactic
Attempts different struct fields (foo.bar.baz)
Updates lookup by new types reached and returns iterator that yields
elements that unify with goal.
§Arguments
ctx- Context for the term searchdefs- Set of items in scope at term search target locationlookup- Lookup table for typesshould_continue- Function that indicates when to stop iterating