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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
// SPDX-License-Identifier: Apache-2.0
// Copyright 2026 ZeroDDS Contributors
//! Crate `zerodds-amqp-bridge`. Safety classification: **STANDARD**.
//!
//! AMQP 1.0 (OASIS Standard) Wire-Codec — pure-Rust no_std + alloc,
//! `forbid(unsafe_code)`. Implementiert das vollstaendige AMQP-1.0
//! Type-System, Frame-Format, alle 9 Performatives und alle 7
//! Message-Sections, plus den DDS-AMQP-1.0 Codec-/Codec-Lite-Profile-
//! Marker.
//!
//! Spec-Referenzen:
//!
//! - **OASIS AMQP 1.0** Part 1 (Types), Part 2 (Transport), Part 3
//! (Messaging), Part 4 (Transactions), Part 5 (Security).
//! - **OMG DDS-AMQP 1.0 (formal/2024-08-01)** §2.3 (Codec Profile),
//! §2.4 (Codec-Lite Profile), §6.1 (Direct-Embed Topology), §7
//! (Type-System-Mapping), §8 (Message-Section-Mapping).
//!
//! ## Schichten-Position
//!
//! Layer 5 — Bridges. Substrat fuer:
//!
//! - [`zerodds-amqp-endpoint`](../zerodds_amqp_endpoint/index.html) —
//! DDS-AMQP-1.0 Endpoint-Layer mit Direct-Embed-Topology.
//!
//! ## Public API (Stand 1.0.0-rc.1)
//!
//! **Type-System (`types`-Modul):**
//!
//! - [`AmqpValue`] / [`FormatCode`] / [`TypeError`].
//! - [`encode_null`] / [`encode_boolean`] / [`encode_long`] /
//! [`encode_ulong`] / [`encode_string`] / [`encode_symbol`] /
//! [`encode_binary`] — Primitiv-Encoder.
//! - [`decode_value`] — Variant-Decoder ueber alle Format-Codes.
//!
//! **Extended Types (`extended_types`-Modul):**
//!
//! - [`AmqpExtValue`] — Vollstaendiges Variant-Modell (Primitive +
//! Compound: list / map / array).
//! - Encoder/Decoder fuer ubyte / ushort / uint / byte / short / int /
//! float / double / char / decimal32-64-128 / timestamp / uuid.
//!
//! **Frame-Format (`frame`-Modul):**
//!
//! - [`FrameHeader`] / [`FrameType`] / [`FrameError`].
//! - [`encode_frame_header`] / [`decode_frame_header`] — 4-Byte SIZE
//! BE + DOFF + TYPE + CHANNEL BE + Extended-Header.
//!
//! **Performatives (`performatives`-Modul):**
//!
//! - [`open`] / [`begin`] / [`attach`] / [`flow`] / [`transfer`] /
//! [`disposition`] / [`detach`] / [`end`] / [`close`] — die 9
//! Transport-Performatives.
//! - [`encode_performative`] / [`decode_performative`].
//!
//! **Message-Sections (`sections`-Modul):**
//!
//! - [`MessageSection`] — Header / Delivery-Annotations / Message-
//! Annotations / Properties / Application-Properties / AmqpValue /
//! AmqpSequence / Data / Footer.
//! - [`validate_section_sequence`] — Reihenfolge-Pruefung gemaess
//! AMQP-1.0 Messaging §3.2.
//!
//! **Codec-Profile (`codec_profile`-Modul):**
//!
//! - `CodecProfile::{Full, Lite}`.
//! - `active_profile()` (const) — `Full` per Default, `Lite` mit
//! Cargo-Feature `codec-lite`.
//! - `is_codec_lite_value` / `is_codec_lite_section` — Conformance-
//! Pruefer fuer DDS-AMQP-1.0 §2.4.
//!
//! ## Beispiel
//!
//! ```rust
//! use zerodds_amqp_bridge::{decode_value, encode_long, AmqpValue};
//!
//! let buf = encode_long(42);
//! let (v, consumed) = decode_value(&buf).expect("decode");
//! assert_eq!(v, AmqpValue::Long(42));
//! assert_eq!(consumed, buf.len());
//! ```
extern crate alloc;
pub use ;
pub use ;
pub use ;
pub use ;
pub use ;