-
Type: Improvement
-
Resolution: Fixed
-
Priority: Major - P3
-
Affects Version/s: None
-
Component/s: None
-
Query Optimization
-
Fully Compatible
-
QO 2022-12-26
VariableCollector takes an ABT and builds a vector of all the Variable references (and definitions). Sometimes the consumer doesn't want a vector: they may want a set, or a per-variable count.
VariableEnvironment::walkVariables() calls a callback for each Variable, which lets the consumer decide what collection to build (if any). But currently it uses VariableCollector, which builds a vector. Instead we should have a different transport that takes a callback.