Trait Codec

Source
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>>;
}

Required Associated Types§

Required Methods§

Source

fn compress_atoms( &self, atoms: &[<<Self as Codec>::P as Primitive>::A], ) -> CoreResult<Vec<u8>>

Source

fn decompress_atoms( &self, bytes: &[u8], ) -> CoreResult<Vec<<<Self as Codec>::P as Primitive>::A>>

Trait Implementations§

Source§

impl<P: Primitive> ValueCodec for Box<dyn Codec<P = P>>

Source§

fn compress( &self, field_values: &[FieldValue], nested_list_depth: u8, ) -> CoreResult<Vec<u8>>

Source§

fn decompress_rep_levels(&self, bytes: &[u8]) -> CoreResult<RepLevelsAndBytes>

Source§

fn decompress( &self, bytes: &[u8], nested_list_depth: u8, ) -> CoreResult<Vec<FieldValue>>

Implementors§