use mz_compute_types::dataflows::DataflowDescription;
use mz_compute_types::plan::Plan;
use mz_repr::explain::{Explain, ExplainError};
use crate::explain::Explainable;
impl<'a> Explain<'a> for Explainable<'a, DataflowDescription<Plan>> {
type Context = <DataflowDescription<Plan> as Explain<'a>>::Context;
type Text = <DataflowDescription<Plan> as Explain<'a>>::Text;
type Json = <DataflowDescription<Plan> as Explain<'a>>::Json;
type Dot = <DataflowDescription<Plan> as Explain<'a>>::Dot;
fn explain_text(&'a mut self, context: &'a Self::Context) -> Result<Self::Text, ExplainError> {
self.0.explain_text(context)
}
fn explain_json(&'a mut self, context: &'a Self::Context) -> Result<Self::Json, ExplainError> {
self.0.explain_json(context)
}
fn explain_dot(&'a mut self, context: &'a Self::Context) -> Result<Self::Dot, ExplainError> {
self.0.explain_dot(context)
}
}