summaryrefslogtreecommitdiffstats
path: root/src/types/id.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/types/id.rs')
-rw-r--r--src/types/id.rs16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/types/id.rs b/src/types/id.rs
new file mode 100644
index 0000000..425d077
--- /dev/null
+++ b/src/types/id.rs
@@ -0,0 +1,16 @@
+#[derive(Clone, Debug, Eq, PartialEq, Hash, libipld::DagCbor)]
+pub struct Id(cid::Cid);
+
+impl daglib::NodeId for Id { }
+
+impl From<cid::Cid> for Id {
+ fn from(cid: cid::Cid) -> Self {
+ Id(cid)
+ }
+}
+
+impl AsRef<cid::Cid> for Id {
+ fn as_ref(&self) -> &cid::Cid {
+ &self.0
+ }
+}