amq_protocol_types/lib.rs
1#![deny(missing_docs, missing_debug_implementations, unsafe_code)]
2#![warn(unreachable_pub, unused_qualifications, unused_lifetimes)]
3#![warn(
4 clippy::must_use_candidate,
5 clippy::unwrap_in_result,
6 clippy::panic_in_result_fn
7)]
8
9//! # AMQP types manipulation library
10//!
11//! amq-protocol-types is a library aiming at providing an implementation/abstraction
12//! around AMQP types.
13//!
14//! It implements the list of the different kind of types available, a value holder and
15//! serialization.deserialization facilities.
16
17mod types;
18mod value;
19
20pub use crate::{types::*, value::*};
21
22/// Helpers to handle AMQP flags.
23pub mod flags;
24/// Generation utilities for the various AMQP types.
25pub mod generation;
26/// Parsing utilities for the various AMQP types.
27pub mod parsing;
28
29/// A Channel identifier
30pub type ChannelId = Identifier;
31/// The size of a chunk of a delivery's payload
32pub type ChunkSize = LongUInt;
33/// The number of consumers
34pub type ConsumerCount = LongUInt;
35/// A delivery tag
36pub type DeliveryTag = LongLongUInt;
37/// the size of an AMQP frame
38pub type FrameSize = LongUInt;
39/// The maximum heartbeat interval
40pub type Heartbeat = ShortUInt;
41/// An identifier (class id or method id)
42pub type Identifier = ShortUInt;
43/// The number of messages
44pub type MessageCount = LongUInt;
45/// The size of a delivery's payload
46pub type PayloadSize = LongLongUInt;
47/// A reply code (for closing channels and connections)
48pub type ReplyCode = ShortUInt;