1 unstable release

new 0.12.0 Nov 19, 2024

#146 in Magic Beans

Download history 101/week @ 2024-11-14

101 downloads per month

MIT license

34KB
617 lines

rust-cid

Build Status Crates.io License Documentation Dependency Status Coverage Status

CID implementation in Rust.

Table of Contents

Usage

use multihash_codetable::{Code, MultihashDigest};
use cid::Cid;
use std::convert::TryFrom;

const RAW: u64 = 0x55;

fn main() {
    let h = Code::Sha2_256.digest(b"beep boop");

    let cid = Cid::new_v1(RAW, h);

    let data = cid.to_bytes();
    let out = Cid::try_from(data).unwrap();

    assert_eq!(cid, out);

    let cid_string = cid.to_string();
    assert_eq!(
        cid_string,
        "bafkreieq5jui4j25lacwomsqgjeswwl3y5zcdrresptwgmfylxo2depppq"
    );
    println!("{}", cid_string);
}

Your Cargo.toml needs these dependencies:

[dependencies]
cid = "0.7.0"

You can also run this example from this checkout with cargo run --example readme.

Testing

You can run the tests using this command: cargo test --all-features

You can run the tests for no_std using this command: cargo test --no-default-features

Maintainers

Captain: @dignifiedquire.

Contribute

Contributions welcome. Please check out the issues.

Check out our contributing document for more information on how we work, and about contributing in general. Please be aware that all interactions related to multiformats are subject to the IPFS Code of Conduct.

Small note: If editing the README, please conform to the standard-readme specification.

License

MIT © 2017 Friedel Ziegelmayer

Dependencies

~0.3–1.1MB
~19K SLoC