Inline cost analysis done by CallAnalyzer counts various stats about function body
being analyzed. These stats can be useful for later analysis, say, to give additional
bonuses for specific constructs, to use them in prioritization of inlining decisions
when working on a tight budget (a pressing issue for JIT compilers).
These stats are exposed outside of getInlineCost via a callback passed through Params.
Is there a particular reason you chose to do this via callback rather than an optional passed result argument?