#![recursion_limit = "1024"]
#![deny(warnings)]
use std::i32;
macro_rules! bail_err {
($e:expr) => {
return Err(From::from($e));
};
}
macro_rules! ensure_err {
($cond:expr, $e:expr) => {
if !$cond {
bail_err!($e);
}
};
}
use anyhow::Result;
#[macro_use]
pub mod protocol;
pub mod application_exception;
pub mod binary_protocol;
pub mod compact_protocol;
pub mod context_stack;
pub mod deserialize;
pub mod export;
pub mod framing;
pub mod processor;
pub mod request_context;
pub mod serialize;
pub mod simplejson_protocol;
pub mod thrift_protocol;
pub mod ttype;
mod bufext;
mod client;
mod errors;
mod varint;
#[cfg(test)]
mod tests;
#[doc(hidden)]
pub mod help;
pub mod types {
pub use crate::application_exception::ApplicationException;
}
pub use crate::application_exception::{ApplicationException, ApplicationExceptionErrorCode};
pub use crate::binary_protocol::BinaryProtocol;
pub use crate::bufext::{BufExt, BufMutExt};
pub use crate::client::{ClientFactory, Transport};
pub use crate::compact_protocol::CompactProtocol;
pub use crate::context_stack::ContextStack;
pub use crate::deserialize::Deserialize;
pub use crate::errors::{NonthrowingFunctionError, ProtocolError};
pub use crate::framing::{Framing, FramingDecoded, FramingEncoded, FramingEncodedFinal};
pub use crate::processor::{NullServiceProcessor, ServiceProcessor, ThriftService};
pub use crate::protocol::{
Field, Protocol, ProtocolDecoded, ProtocolEncoded, ProtocolEncodedFinal, ProtocolReader,
ProtocolWriter,
};
pub use crate::request_context::RequestContext;
pub use crate::serialize::Serialize;
pub use crate::simplejson_protocol::SimpleJsonProtocol;
pub use crate::thrift_protocol::{MessageType, ProtocolID};
pub use crate::ttype::{GetTType, TType};
pub trait ThriftEnum: Sized {
fn enumerate() -> &'static [(Self, &'static str)];
fn variants() -> &'static [&'static str];
fn variant_values() -> &'static [Self];
}
pub const __UNKNOWN_ID: i32 = i32::MIN;