pub struct PlanGraphBuilder { /* private fields */ }Expand description
Builder for PlanGraph that enforces DAG invariants while allowing
incremental construction.
Implementations§
Source§impl PlanGraphBuilder
impl PlanGraphBuilder
pub fn new() -> PlanGraphBuilder
pub fn with_version(version: PlanGraphVersion) -> PlanGraphBuilder
pub fn add_node(&mut self, node: PlanNode) -> Result<(), PlanGraphError>
pub fn add_edge(&mut self, edge: PlanEdge) -> Result<(), PlanGraphError>
pub fn add_root(&mut self, node_id: PlanNodeId) -> Result<(), PlanGraphError>
pub fn annotations_mut(&mut self) -> &mut PlanAnnotations
pub fn finish(self) -> Result<PlanGraph, PlanGraphError>
Trait Implementations§
Source§impl Default for PlanGraphBuilder
impl Default for PlanGraphBuilder
Source§fn default() -> PlanGraphBuilder
fn default() -> PlanGraphBuilder
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for PlanGraphBuilder
impl RefUnwindSafe for PlanGraphBuilder
impl Send for PlanGraphBuilder
impl Sync for PlanGraphBuilder
impl Unpin for PlanGraphBuilder
impl UnwindSafe for PlanGraphBuilder
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more