agglayer_types/certificate/
metadata.rs1use crate::Digest;
2
3#[derive(
4 Clone,
5 Copy,
6 Debug,
7 Eq,
8 Ord,
9 PartialEq,
10 PartialOrd,
11 derive_more::Display,
12 derive_more::Deref,
13 derive_more::From,
14 serde::Deserialize,
15 serde::Serialize,
16)]
17#[cfg_attr(feature = "testutils", derive(arbitrary::Arbitrary))]
18#[serde(transparent)]
19pub struct Metadata(Digest);
20
21impl Default for Metadata {
22 fn default() -> Self {
23 Self::DEFAULT
24 }
25}
26
27impl Metadata {
28 pub const ZERO: Metadata = Metadata(Digest::ZERO);
29 pub const DEFAULT: Metadata = Self::ZERO;
30
31 pub const fn new(metadata: Digest) -> Metadata {
32 Metadata(metadata)
33 }
34
35 pub const fn as_digest(&self) -> &Digest {
36 &self.0
37 }
38}