Module mz_adapter::explain
source ยท 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 anExplainContext
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.