#![cfg_attr(not(feature = "std"), no_std)]
extern crate alloc;
mod desc;
pub mod features;
pub mod generated;
#[cfg(feature = "reflect")]
pub mod pool;
#[cfg(feature = "reflect")]
pub mod reflect;
pub use desc::{
EnumDescriptor, EnumIndex, EnumValueDescriptor, ExtensionDescriptor, ExtensionIndex,
FieldDescriptor, FieldKind, MessageDescriptor, MessageIndex, MethodDescriptor, OneofDescriptor,
ScalarType, ServiceDescriptor, ServiceIndex, SingularKind,
};
#[cfg(feature = "reflect")]
pub use pool::{DescriptorPool, PoolError};
#[cfg(all(feature = "reflect", feature = "json"))]
pub use reflect::DynamicMessageSeed;
#[cfg(feature = "reflect")]
pub use reflect::{
AnyError, DynamicMessage, MapKey, MapKeyRef, MapValue, ReflectCow, ReflectElement, ReflectList,
ReflectMap, ReflectMapKey, ReflectMessage, ReflectMessageMut, ReflectMode, Reflectable, Value,
ValueRef,
};