pub trait HasChainableValues<F: Func + ?Sized>: HasValues<F> {
// Required methods
fn values_chain<'a>(
&'a self,
) -> Box<dyn LendingIteratorDyn<Item = HKT<dyn for<'b> WithLifetime<'b, T = Box<dyn Deref<Target = F::Value> + 'b>>>> + 'a>;
fn values_chain_mut<'a>(
&'a mut self,
) -> Box<dyn LendingIteratorDyn<Item = HKT<dyn for<'b> WithLifetime<'b, T = Box<dyn DerefMut<Target = F::Value> + 'b>>>> + 'a>
where F: 'a;
}