Skip to content

Commit 986dfe6

Browse files
author
Artur Helmanau
authored
feat(rust/signed-doc): enum map representation for metadata (#359)
* feat: metadata enum map representation * add encode/decode impl for Metadata * fix integer label, upd its doc * upd integer label doc. * use ProblemReport, remove map ord decode validation * Update rust/signed_doc/src/metadata/mod.rs
1 parent a421879 commit 986dfe6

File tree

6 files changed

+701
-275
lines changed

6 files changed

+701
-275
lines changed

rust/signed_doc/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ minicbor = { version = "0.25.1", features = ["half"] }
2121
brotli = "7.0.0"
2222
ed25519-dalek = { version = "2.1.1", features = ["rand_core", "pem"] }
2323
hex = "0.4.3"
24-
strum = { version = "0.26.3", features = ["derive"] }
24+
strum = { version = "0.27.1", features = ["derive"] }
2525
clap = { version = "4.5.23", features = ["derive", "env"] }
2626
jsonschema = "0.28.3"
2727
jsonpath-rust = "0.7.5"

rust/signed_doc/src/decode_context.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ use catalyst_types::problem_report::ProblemReport;
44

55
/// Compatibility policy
66
#[allow(dead_code)]
7+
#[derive(Copy, Clone)]
78
pub(crate) enum CompatibilityPolicy {
89
/// Silently allow obsoleted type conversions or non deterministic encoding.
910
Accept,

rust/signed_doc/src/lib.rs

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -24,9 +24,7 @@ pub use catalyst_types::{
2424
pub use content::Content;
2525
use coset::{CborSerializable, Header, TaggedCborSerializable};
2626
use decode_context::{CompatibilityPolicy, DecodeContext};
27-
pub use metadata::{
28-
ContentEncoding, ContentType, DocType, DocumentRef, ExtraFields, Metadata, Section,
29-
};
27+
pub use metadata::{ContentEncoding, ContentType, DocType, DocumentRef, Metadata, Section};
3028
use minicbor::{decode, encode, Decode, Decoder, Encode};
3129
pub use signature::{CatalystId, Signatures};
3230

@@ -134,9 +132,10 @@ impl CatalystSignedDocument {
134132
}
135133

136134
/// Return document metadata content.
135+
// TODO: remove this and provide getters from metadata like the rest of its fields have.
137136
#[must_use]
138-
pub fn doc_meta(&self) -> &ExtraFields {
139-
self.inner.metadata.extra()
137+
pub fn doc_meta(&self) -> &Metadata {
138+
&self.inner.metadata
140139
}
141140

142141
/// Return a Document's signatures

rust/signed_doc/src/metadata/extra_fields.rs

Lines changed: 0 additions & 239 deletions
This file was deleted.

0 commit comments

Comments
 (0)