pub struct CoarseGrainedNode {
pub path: String,
pub marker_offset: Option<usize>,
pub relations: Vec<String>,
pub cost: PlanCost,
pub children: Vec<ChildEntry>,
}Expand description
One node of the coarse-grained tree — the REPL text formatter and the
Query Editor’s visual view both render this same shape directly (see the
crate’s analyze design notes).
Fields§
§path: String§marker_offset: Option<usize>Source byte offset to plant this path’s analyze marker at in the
echoed query text (see ShapePathAlias::marker_offset) — the REPL
text formatter’s only use for it; the Query Editor’s visual view has
no echoed query text to mark up, so it just ignores this field.
relations: Vec<String>Relation names touched by this path’s own plan nodes (not those of a nested child path) — deduplicated, in first-encountered order.
cost: PlanCost§children: Vec<ChildEntry>Trait Implementations§
Source§impl Clone for CoarseGrainedNode
impl Clone for CoarseGrainedNode
Source§impl Debug for CoarseGrainedNode
impl Debug for CoarseGrainedNode
Source§impl PartialEq for CoarseGrainedNode
impl PartialEq for CoarseGrainedNode
Source§impl Serialize for CoarseGrainedNode
impl Serialize for CoarseGrainedNode
impl StructuralPartialEq for CoarseGrainedNode
Auto Trait Implementations§
impl Freeze for CoarseGrainedNode
impl RefUnwindSafe for CoarseGrainedNode
impl Send for CoarseGrainedNode
impl Sync for CoarseGrainedNode
impl Unpin for CoarseGrainedNode
impl UnsafeUnpin for CoarseGrainedNode
impl UnwindSafe for CoarseGrainedNode
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Returns the layout of the type.
Source§impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
Source§unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
Returns whether the given value has been niched. Read more
Source§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
Writes data to
out indicating that a T is niched.