gel_protogen/
lib.rs

1mod arrays;
2mod buffer;
3mod datatypes;
4mod encoding;
5mod gen;
6mod macros;
7mod message_group;
8mod structs;
9mod writer;
10
11#[doc(hidden)]
12pub mod test_protocol;
13
14pub use arrays::{Array, ArrayExt, ArrayIter, RestArray, ZTArray};
15pub use buffer::StructBuffer;
16pub use datatypes::{Encoded, LString, Length, Rest, RestString, Uuid, ZTString};
17pub use writer::BufWriter;
18
19#[doc(inline)]
20pub use gen::protocol;
21#[doc(inline)]
22pub use message_group::{match_message, message_group};
23
24/// Re-export for the `protocol!` macro.
25#[doc(hidden)]
26pub use paste::paste;
27#[doc(hidden)]
28pub use type_mapper;
29
30pub mod prelude {
31    pub use super::encoding::BuilderFor;
32    pub use super::encoding::DataType;
33    pub use super::encoding::DataTypeFixedSize;
34    pub use super::encoding::DecoderFor;
35    pub use super::encoding::EncoderFor;
36    pub use super::encoding::EncoderForExt;
37    pub use super::encoding::ParseError;
38    pub use super::writer::BufWriter;
39
40    pub use super::structs::EnumMeta;
41
42    pub use super::structs::StructAttributeFieldCount;
43    pub use super::structs::StructAttributeFixedSize;
44    pub use super::structs::StructAttributeHasLengthField;
45    pub use super::structs::StructField;
46    pub use super::structs::StructFieldComputed;
47    pub use super::structs::StructFieldMeta;
48    pub use super::structs::StructFields;
49    pub use super::structs::StructLength;
50    pub use super::structs::StructMeta;
51
52    pub use super::declare_meta;
53
54    pub use super::arrays::*;
55    pub use super::buffer::StructBuffer;
56    pub use super::datatypes::*;
57
58    pub use super::match_message;
59    pub use super::message_group;
60    pub use super::protocol;
61}