macro_rules! transform_to_tree_methods {
() => {
fn transform_to_tree(
&self,
pivot_on: impl Fn(&T) -> K + 'static,
) -> std::rc::Rc<dyn ferroui_system::IObservable<crate::cache::ChangeSet<std::rc::Rc<crate::cache::Node<T, K>>, K>>> {
crate::cache::internal::tree_builder(self.change_sets(), std::rc::Rc::new(pivot_on), None)
}
fn transform_to_tree_with(
&self,
pivot_on: impl Fn(&T) -> K + 'static,
predicate_changed: std::rc::Rc<dyn ferroui_system::IObservable<std::rc::Rc<dyn Fn(&std::rc::Rc<crate::cache::Node<T, K>>) -> bool>>>,
) -> std::rc::Rc<dyn ferroui_system::IObservable<crate::cache::ChangeSet<std::rc::Rc<crate::cache::Node<T, K>>, K>>> {
crate::cache::internal::tree_builder(self.change_sets(), std::rc::Rc::new(pivot_on), Some(predicate_changed))
}
};
}
pub(crate) use transform_to_tree_methods;