data_constructor

Function data_constructor 

Source
pub(super) fn data_constructor<'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

§Data constructor tactic

Attempts different data constructors for enums and structs in scope

Updates lookup by new types reached and returns iterator that yields elements that unify with goal.

§Arguments

  • ctx - Context for the term search
  • defs - Set of items in scope at term search target location
  • lookup - Lookup table for types
  • should_continue - Function that indicates when to stop iterating