Skip to main content

collect_callee_funcs

Function collect_callee_funcs 

Source
fn collect_callee_funcs<'hir>(
    hir: &'hir Hir<'hir>,
    callee: &'hir Expr<'hir>,
    bases: &[ContractId],
) -> Vec<&'hir Function<'hir>>
Expand description

Collect the set of internal function candidates that a call expression may invoke.

Handles three callee shapes:

  • f(...) bare Ident with function resolutions
  • Contract.f(...) Member whose base resolves to a ContractId
  • super.f(...) Member whose base is the super builtin; searches all linearized bases except the current contract (bases[0]), matching Solidity’s MRO dispatch semantics