pub trait Codec: Send + Sync {
type P: Primitive;
// Required methods
fn compress_atoms(
&self,
atoms: &[<<Self as Codec>::P as Primitive>::A],
) -> CoreResult<Vec<u8>>;
fn decompress_atoms(
&self,
bytes: &[u8],
) -> CoreResult<Vec<<<Self as Codec>::P as Primitive>::A>>;
}