pub(crate) mod discovery;
pub mod error;
pub mod message;
pub mod registry;
pub mod schema;
pub mod serdes;
pub mod serialization;
pub mod type_description;
pub mod type_description_client;
pub mod type_description_service;
pub(crate) mod type_info;
pub mod value;
#[cfg(test)]
mod tests;
pub use discovery::DiscoveredTopicSchema;
pub use error::DynamicError;
pub use message::{DynamicMessage, DynamicMessageBuilder};
pub use registry::{SchemaRegistry, get_schema, has_schema, register_schema};
pub use schema::{FieldSchema, FieldType, MessageSchema, MessageSchemaBuilder};
pub use serdes::DynamicSerdeCdrSerdes;
pub use serialization::SerializationFormat;
pub use type_description::{MessageSchemaTypeDescription, type_description_msg_to_schema};
pub use type_description_client::schema_from_type_description_response;
pub use type_description_service::{
GetTypeDescription, GetTypeDescriptionRequest, GetTypeDescriptionResponse, RegisteredSchema,
TypeDescriptionService, TypeSource, WireField, WireFieldType, WireIndividualTypeDescription,
WireKeyValue, WireTypeDescription, WireTypeSource, schema_to_wire_type_description,
wire_to_schema_type_description,
};
pub use value::{DynamicValue, FromDynamic, IntoDynamic};
pub(crate) use discovery::{SchemaDiscovery, discovered_schema_type_info};
pub(crate) use type_info::schema_type_info;
use zenoh::sample::Sample;
use crate::msg::ZMessage;
use crate::pubsub::{ZPub, ZPubBuilder, ZSub, ZSubBuilder};
impl ZMessage for DynamicMessage {
type Serdes = DynamicSerdeCdrSerdes;
}
pub type DynPub = ZPub<DynamicMessage, DynamicSerdeCdrSerdes>;
pub type DynSub = ZSub<DynamicMessage, Sample, DynamicSerdeCdrSerdes>;
pub type DynPubBuilder = ZPubBuilder<DynamicMessage, DynamicSerdeCdrSerdes>;
pub type DynSubBuilder = ZSubBuilder<DynamicMessage, DynamicSerdeCdrSerdes>;