pub trait Decodable<P: Primitive>: Send + Sync {
// Required methods
fn handle_atoms(
atoms: Vec<P::A>,
depth: u8,
byte_idx: usize,
) -> CoreResult<Self>
where Self: Sized;
fn handle_null(byte_idx: usize) -> Self
where Self: Sized;
fn combine(outputs: Vec<Self>, depth: u8, byte_idx: usize) -> Self
where Self: Sized;
}