Codec

Trait Codec 

Source
pub trait Codec: Send + Sync {
    // Required methods
    fn encode(&self, data: &Ipld) -> Result<Vec<u8>>;
    fn decode(&self, bytes: &[u8]) -> Result<Ipld>;
    fn code(&self) -> u64;
    fn name(&self) -> &str;
}
Expand description

Trait for codec implementations.

Codecs encode and decode IPLD data to/from binary formats.

Required Methods§

Source

fn encode(&self, data: &Ipld) -> Result<Vec<u8>>

Encode IPLD data to bytes.

Source

fn decode(&self, bytes: &[u8]) -> Result<Ipld>

Decode bytes to IPLD data.

Source

fn code(&self) -> u64

Get the codec code (multicodec identifier).

Source

fn name(&self) -> &str

Get the codec name.

Implementors§