Expand description
EXPLAIN
support for various intermediate representations.
Ideally, the EXPLAIN
support for each IR should be in the crate where this
IR is defined. However, we need to resort to an Explainable
newtype
struct in order to provide alternate mz_repr::explain::Explain
implementations for some structs (see the mir
) module for details.
Modulesยง
- fast_
path ๐ EXPLAIN
support forFastPathPlan
.- hir ๐
EXPLAIN
support for HIR structures.- insights ๐
- Derive insights for plans.
- lir ๐
EXPLAIN
support for LIR structures.- mir ๐
EXPLAIN
support for MIR structures.- optimizer_
trace ๐ - Tracing utilities for explainable plans.
Structsยง
- Explainable ๐
- Newtype struct for wrapping types that should
implement the
mz_repr::explain::Explain
trait.
Functionsยง
- explain_
dataflow ๐ - Convenience method to derive an
ExplainContext
from theindex_imports
in the givenplan
and all other input parameters, wrap theplan
in anExplainable
, and finally compute and return theexplain(...)
result. - explain_
plan ๐ - Convenience method to explain a single plan.