radicle: Introduce `trait GetPayload`
This new trait can be implemented by any struct that allows loading of payloads. Currently, this only applies to the identity document.
This commit is contained in:
parent
aa28567035
commit
5167367918
|
|
@ -272,6 +272,23 @@ impl Deref for Payload {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// Trait for all types that may carry payloads.
|
||||||
|
pub trait GetPayload {
|
||||||
|
fn get_payload(&self, id: &PayloadId) -> Option<&Payload>;
|
||||||
|
}
|
||||||
|
|
||||||
|
impl GetPayload for Doc {
|
||||||
|
fn get_payload(&self, id: &PayloadId) -> Option<&Payload> {
|
||||||
|
self.payload.get(id)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
impl GetPayload for RawDoc {
|
||||||
|
fn get_payload(&self, id: &PayloadId) -> Option<&Payload> {
|
||||||
|
self.payload.get(id)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// A verified identity document at a specific commit.
|
/// A verified identity document at a specific commit.
|
||||||
#[derive(Debug, Clone, PartialEq, Eq)]
|
#[derive(Debug, Clone, PartialEq, Eq)]
|
||||||
pub struct DocAt {
|
pub struct DocAt {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue