use crate::{Params, infallible::Xap, runner::ParRunner};
pub trait ParRecCore {
type Item;
type Runner: ParRunner;
type Input: IntoIterator;
type Xap: Xap<I = <Self::Input as IntoIterator>::Item, O = Self::Item>;
fn destruct(self) -> (Self::Input, Self::Xap, Self::Runner, Params);
}