Skip to main content

ChildrenExt

Trait ChildrenExt 

pub trait ChildrenExt: Sized {
    // Required method
    fn get_children(&mut self) -> &mut Vec<Element>;

    // Provided methods
    fn children(self, children: impl IntoIterator<Item = Element>) -> Self { ... }
    fn maybe_child<C>(self, child: Option<C>) -> Self
       where C: IntoElement { ... }
    fn child<C>(self, child: C) -> Self
       where C: IntoElement { ... }
}
Expand description

Trait for composing child elements.

Required Methods§

fn get_children(&mut self) -> &mut Vec<Element>

Returns a mutable reference to the internal children vector.

§Example
impl ChildrenExt for MyElement {
    fn get_children(&mut self) -> &mut Vec<Element> {
        &mut self.elements
    }
}

Provided Methods§

fn children(self, children: impl IntoIterator<Item = Element>) -> Self

Extends the children with an iterable of Elements.

§Example
rect().children(["Hello", "World"].map(|t| label().text(t).into_element()))

fn maybe_child<C>(self, child: Option<C>) -> Self
where C: IntoElement,

Appends a child only when the Option is Some.

§Example
rect().maybe_child(show_badge.then(|| label().text("New")))

fn child<C>(self, child: C) -> Self
where C: IntoElement,

Appends a single child element.

§Example
rect().child(label().text("Hello"))

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

§

impl ChildrenExt for Accordion

§

impl ChildrenExt for Attached

§

impl ChildrenExt for Button

§

impl ChildrenExt for ButtonSegment

§

impl ChildrenExt for Canvas

§

impl ChildrenExt for Card

§

impl ChildrenExt for Chip

§

impl ChildrenExt for CursorArea

§

impl ChildrenExt for Draggable

§

impl ChildrenExt for DraggableCanvas

§

impl ChildrenExt for FloatingTab

§

impl ChildrenExt for ImageViewer

§

impl ChildrenExt for Menu

§

impl ChildrenExt for MenuButton

§

impl ChildrenExt for MenuContainer

§

impl ChildrenExt for MenuItem

§

impl ChildrenExt for NativeRouter

§

impl ChildrenExt for OverflowedContent

§

impl ChildrenExt for Popup

§

impl ChildrenExt for PopupButtons

§

impl ChildrenExt for PopupContent

§

impl ChildrenExt for ResizableDraggable

§

impl ChildrenExt for ResizablePanel

§

impl ChildrenExt for ScrollView

§

impl ChildrenExt for SegmentedButton

§

impl ChildrenExt for Select

§

impl ChildrenExt for SideBarItem

§

impl ChildrenExt for Skeleton

§

impl ChildrenExt for SubMenu

§

impl ChildrenExt for Table

§

impl ChildrenExt for TableBody

§

impl ChildrenExt for TableCell

§

impl ChildrenExt for TableHead

§

impl ChildrenExt for TableRow

§

impl ChildrenExt for Tile

§

impl ChildrenExt for TooltipContainer

§

impl ChildrenExt for Image

§

impl ChildrenExt for Ripple

§

impl ChildrenExt for RippleButton

§

impl ChildrenExt for RippleFloatingTab

§

impl ChildrenExt for RippleMenuItem

§

impl ChildrenExt for RippleSideBarItem

§

impl ChildrenExt for RippleTile

§

impl ChildrenExt for Rect

§

impl<T> ChildrenExt for Portal<T>