Struct DryRunLeafEvaluator

Struct Documentation

struct DryRunLeafEvaluator

Leaf yielder: turns each IR leaf (a tensor/constant/variable node) into a zero-data DryRun Result. This is the F in evaluate<Trace>(node, layout, F, cache).

A tensor leaf’s literal (canon-order) index list decides flat vs nested: make_dryrun_result builds a flat ResultDryRun if none of the leaf’s indices are proto-indexed, or a nested ResultDryRunNested (a CSV/PNO amplitude or coefficient) if any are &#8212; and threads that same literal list through as the nested result’s canon-order position map, so a later slice_mode()/ call (which the batched runtime only ever issues against a leaf’s result) resolves its positional mode argument correctly regardless of the leaf’s flat/nested-ness.

Public Functions

inline ResultPtr operator()(EvalNodeDryRun const &leaf) const

Public Members

std::shared_ptr<CostModel const> cm