RibirX / Ribir

Non-intrusive GUI framework for Rust

Home Page:https://ribir.org

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

ListItem template `SupportingText` is optional, but can't use Option<SupportingText>

sologeek opened this issue · comments

fn w() -> impl WidgetBuilder {
  fn_widget! {
    let support_text = desc.map(|desc| {
      @SupportingText(Label::new(desc.to_owned()))
    });
    @ListItem {
      @HeadingText(Label::new(""))
      @ { supporting_text }
    }
  }
}
the trait bound `ListItemTmlBuilder: ribir::prelude::ComposeWithChild<std::option::Option<ribir::prelude::SupportingText>, _>` is not satisfied
the following other types implement trait `ribir::prelude::ComposeWithChild<C, M>`:
  <ListItemTmlBuilder as ribir::prelude::ComposeWithChild<_C, [_M; 0]>>
  <ListItemTmlBuilder as ribir::prelude::ComposeWithChild<_C, [_M; 1]>>
  <ListItemTmlBuilder as ribir::prelude::ComposeWithChild<_C, [_M; 2]>>
  <ListItemTmlBuilder as ribir::prelude::ComposeWithChild<_C, [_M; 3]>>
required for `ribir::prelude::Pair<ribir::prelude::State<ribir::prelude::ListItem>, ListItemTmlBuilder>` to implement `ribir::prelude::ComposeWithChild<std::option::Option<ribir::prelude::SupportingText>, _>`
1 redundant requirement hidden
required for `ribir::prelude::FatObj<ribir::prelude::Pair<ribir::prelude::State<ribir::prelude::ListItem>, ListItemTmlBuilder>>` to implement `ribir::prelude::ComposeWithChild<std::option::Option<ribir::prelude::SupportingText>, _>`