1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
//! **`uor_addr::cbor` — the CBOR realization of UOR-ADDR**
//! (ARCHITECTURE.md "Format-specific realizations").
//!
//! CBOR typed-input content-addressing under RFC 8949 §4.2 Deterministic
//! Encoding, with the σ-projection bound to `prism::crypto::Sha256Hasher`
//! by default and the other 32-byte axes ([`crate::hash`]) available via
//! the `address_<algorithm>` entry points.
//!
//! ## Authoritative sources
//!
//! - **CBOR + deterministic encoding** — IETF RFC 8949 *Concise Binary
//! Object Representation (CBOR)*, §4.2 *Deterministically Encoded CBOR*
//! (<https://www.rfc-editor.org/rfc/rfc8949>). The canonical-form
//! invariants — preferred (shortest) integer/float encoding (§4.1,
//! §4.2.2), definite-length items, and bytewise-sorted map keys (§4.2.1)
//! — are validated against RFC 8949 Appendix A's diagnostic ⇄ encoding
//! vectors in `tests/cbor_rfc8949.rs`.
//! - **SHA-256 σ-projection** — NIST FIPS 180-4.
//!
//! ## End-to-end (ADR-060)
//!
//! 1. [`canonicalize`] re-encodes any well-formed CBOR item into its RFC
//! 8949 §4.2 deterministic form into an `alloc` buffer.
//! 2. [`address`] wraps those bytes in the borrowed [`CborCarrier`] and
//! runs [`AddressModel`]'s `forward()`: the ψ-chain verb threads the
//! carrier through the shared [`AddressResolverTuple`] (ADR-036), and ψ₉
//! folds the canonical bytes through the σ-axis in one σ-projection.
//! 3. [`address`] returns the [`crate::AddressOutcome`] carrying the
//! κ-label + replayable TC-05 witness.
pub use ;
pub use ;
pub use ;
pub use ;
pub use canonicalize;
pub use CborCarrier;
pub use ;
/// The shared `AddrBounds` capacity profile (canonical path
/// [`crate::bounds::AddrBounds`]).
pub use crateAddrBounds;
/// The shared, format-independent ψ-tower (canonical path
/// [`crate::resolvers::AddressResolverTuple`]).
pub use crateAddressResolverTuple;