Trait ptree::item::TreeItem [−][src]
pub trait TreeItem: Clone { type Child: TreeItem; fn write_self<W: Write>(&self, f: &mut W, style: &Style) -> Result<()>; fn children(&self) -> Cow<[Self::Child]>; }
Main trait for exposing a tree structure to ptree
Associated Types
type Child: TreeItem
The type of this item's child items
This is usually Self, but may be any type that itself implements TreeItem.
Required Methods
fn write_self<W: Write>(&self, f: &mut W, style: &Style) -> Result<()>
Write the item's own contents (without children) to f
The function returns an io::Result<()>
, so calls to f.write
and
write!
can be chained with ?
.
The provided style
may be used for formatting hints.
Usually, everything printed should be run through style.paint
.
However, this is not enforced, and custom implementations may choose to format
only parts of the output, apply its own formatting in combination with the provided
config, or ignore formatting altogether.
fn children(&self) -> Cow<[Self::Child]>
Retrieve a list of this item's children
If the items contains no children (it is a leaf item), this method returns an empty list.
Implementations on Foreign Types
impl<'a, N, E, Ty, Ix> TreeItem for (&'a Graph<N, E, Ty, Ix>, NodeIndex<Ix>) where
Ty: EdgeType,
Ix: IndexType,
N: Clone + Display,
E: Clone,
[src]
impl<'a, N, E, Ty, Ix> TreeItem for (&'a Graph<N, E, Ty, Ix>, NodeIndex<Ix>) where
Ty: EdgeType,
Ix: IndexType,
N: Clone + Display,
E: Clone,
impl TreeItem for Value
[src]
impl TreeItem for Value
impl TreeItem for (String, Value)
[src]
impl TreeItem for (String, Value)
Implementors
impl TreeItem for StringItem type Child = Self;