#![forbid(unsafe_code)]
pub mod application;
pub mod datadictionary;
pub mod engine;
#[cfg(feature = "fix44")]
pub mod fix44;
pub mod error;
pub mod field_map;
pub mod log;
pub mod message;
pub mod parser;
pub mod schedule;
pub mod session;
pub mod session_id;
pub mod settings;
pub mod store;
pub mod tags;
#[cfg(feature = "tls")]
mod tls;
mod transport;
pub mod value;
pub use application::{
Application, ApplicationError, ChannelApplication, DoNotSend, SessionEvent, event_channel,
};
pub use datadictionary::{DataDictionary, ValidationSettings};
pub use engine::Engine;
pub use error::{Error, RejectError, Result, SessionRejectReason};
pub use field_map::{FieldMap, GroupTemplate};
pub use log::{FileLogFactory, Log, LogFactory, NullLogFactory, Rotation, TracingLogFactory};
pub use message::{Message, Tag};
pub use session::{SessionHandle, SessionStatus};
pub use session_id::SessionId;
pub use settings::{ConnectionType, SessionConfig, Settings, TlsSettings};
pub use store::{
FileStoreFactory, MemoryStoreFactory, MessageStore, MessageStoreFactory,
};
pub use value::{FixDate, TimestampPrecision, UtcTimestamp};
#[cfg(feature = "decimal")]
pub type Amount = rust_decimal::Decimal;
#[cfg(not(feature = "decimal"))]
pub type Amount = f64;
#[cfg(feature = "decimal")]
pub use rust_decimal::{Decimal, dec};