pub type Cid = Cid<64>;
Expand description
A Cid that contains a multihash with an allocated size of 512 bits.
This is the same digest size the default multihash code table has.
If you need a CID that is generic over its digest size, use CidGeneric
instead.
Aliased Type§
struct Cid { /* private fields */ }
Implementations
source§impl<const S: usize> Cid<S>
impl<const S: usize> Cid<S>
sourcepub const fn new(
version: Version,
codec: u64,
hash: Multihash<S>,
) -> Result<Cid<S>, Error>
pub const fn new( version: Version, codec: u64, hash: Multihash<S>, ) -> Result<Cid<S>, Error>
Create a new CID.
sourcepub fn into_v1(self) -> Result<Cid<S>, Error>
pub fn into_v1(self) -> Result<Cid<S>, Error>
Convert a CIDv0 to a CIDv1. Returns unchanged if already a CIDv1.
sourcepub fn read_bytes<R>(r: R) -> Result<Cid<S>, Error>where
R: Read,
pub fn read_bytes<R>(r: R) -> Result<Cid<S>, Error>where
R: Read,
Reads the bytes from a byte stream.
sourcepub fn write_bytes<W>(&self, w: W) -> Result<usize, Error>where
W: Write,
pub fn write_bytes<W>(&self, w: W) -> Result<usize, Error>where
W: Write,
Writes the bytes to a byte stream, returns the number of bytes written.
sourcepub fn encoded_len(&self) -> usize
pub fn encoded_len(&self) -> usize
Returns the length in bytes needed to encode this cid into bytes.
sourcepub fn to_string_of_base(&self, base: Base) -> Result<String, Error>
pub fn to_string_of_base(&self, base: Base) -> Result<String, Error>
Convert CID into a multibase encoded string
§Example
use cid::Cid;
use multibase::Base;
use multihash::{Code, MultihashDigest};
const RAW: u64 = 0x55;
let cid = Cid::new_v1(RAW, Code::Sha2_256.digest(b"foo"));
let encoded = cid.to_string_of_base(Base::Base64).unwrap();
assert_eq!(encoded, "mAVUSICwmtGto/8aP+ZtFPB0wQTQTQi1wZIO/oPmKXohiZueu");
Trait Implementations
source§impl<const S: usize> Ord for Cid<S>
impl<const S: usize> Ord for Cid<S>
source§impl<const S: usize> PartialEq for Cid<S>
impl<const S: usize> PartialEq for Cid<S>
source§impl<const S: usize> PartialOrd for Cid<S>
impl<const S: usize> PartialOrd for Cid<S>
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for
self
and other
) and is used by the <=
operator. Read more