[]Struct rectangle_device_blocks::Cid

pub struct Cid { /* fields omitted */ }

Representation of a CID.

Usually you would use Cid instead, unless you have a custom Multihash code table

Implementations

impl Cid

pub fn new_v0(hash: RawMultihash) -> Result<Cid, Error>

Create a new CIDv0.

pub fn new_v1(codec: u64, hash: RawMultihash) -> Cid

Create a new CIDv1.

pub fn new(
    version: Version,
    codec: u64,
    hash: RawMultihash
) -> Result<Cid, Error>

Create a new CID.

pub fn version(&self) -> Version

Returns the cid version.

pub fn codec(&self) -> u64

Returns the cid codec.

pub fn hash(&self) -> &RawMultihash

Returns the cid multihash.

pub fn read_bytes<R>(r: R) -> Result<Cid, Error> where
    R: Read

Reads the bytes from a byte stream.

pub fn write_bytes<W>(&self, w: W) -> Result<(), Error> where
    W: Write

Writes the bytes to a byte stream.

pub fn to_bytes(&self) -> Vec<u8>

Returns the encoded bytes of the Cid.

pub fn to_string_of_base(&self, base: Base) -> Result<String, Error>

Convert CID into a multibase encoded string

Example

use tiny_cid::{RAW, Cid};
use multibase::Base;
use tiny_multihash::{SHA2_256, Multihash, MultihashDigest};

let mh = Multihash::new(SHA2_256, b"foo").unwrap();
let cid = Cid::new_v1(RAW, mh.to_raw().unwrap());
let encoded = cid.to_string_of_base(Base::Base64).unwrap();
assert_eq!(encoded, "mAVUSICwmtGto/8aP+ZtFPB0wQTQTQi1wZIO/oPmKXohiZueu");

Trait Implementations

impl Clone for Cid

impl Copy for Cid

impl Debug for Cid

impl Decode<DagCborCodec> for Cid

impl Default for Cid

impl Display for Cid

impl Encode<DagCborCodec> for Cid

impl Eq for Cid

impl<'_> From<&'_ Cid> for Cid

impl FromStr for Cid

type Err = Error

The associated error which can be returned from parsing.

impl Hash for Cid

impl PartialEq<Cid> for Cid

impl StructuralEq for Cid

impl StructuralPartialEq for Cid

impl<'_> TryFrom<&'_ [u8]> for Cid

type Error = Error

The type returned in the event of a conversion error.

impl<'_> TryFrom<&'_ str> for Cid

type Error = Error

The type returned in the event of a conversion error.

impl TryFrom<String> for Cid

type Error = Error

The type returned in the event of a conversion error.

impl TryFrom<Vec<u8>> for Cid

type Error = Error

The type returned in the event of a conversion error.

impl TryReadCbor for Cid

Auto Trait Implementations

impl RefUnwindSafe for Cid

impl Send for Cid

impl Sync for Cid

impl Unpin for Cid

impl UnwindSafe for Cid

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> DagCbor for T where
    T: TryReadCbor + Encode<DagCborCodec> + Decode<DagCborCodec>, 

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.