rusty_feeder/lib.rs
1//! # Rusty-Feeder
2//!
3//! Market data acquisition and processing for high-frequency trading systems.
4//!
5//! This crate provides unified interfaces and implementations for acquiring and processing
6//! market data from various cryptocurrency exchanges. It is optimized for low-latency
7//! and high-throughput scenarios in high-frequency trading applications.
8//!
9//! ## Key Features
10//!
11//! - Unified provider interface for multiple exchanges
12//! - Zero-copy parsing optimizations
13//! - Session management with automatic reconnection
14//! - Rate limiting and backpressure handling
15//! - Nanosecond precision timestamps
16//!
17//! ## Modules
18//!
19//! - [`common`] - Common types and utilities
20//! - [`feeder`] - Core feeder implementation
21//! - [`limit`] - Rate limiting utilities
22//! - [`optimization`] - Performance optimizations
23//! - [`provider`] - Market data provider interface
24//! - [`session_manager`] - WebSocket session management
25//! - [`exchange`] - Exchange-specific implementations
26
27#![allow(clippy::needless_range_loop)]
28
29/// Common types and utilities shared across the feeder crate
30pub mod common;
31/// Core feeder implementation for market data processing
32pub mod feeder;
33/// Rate limiting utilities for exchange API compliance
34pub mod limit;
35/// Performance optimization modules including zero-allocation parsers
36pub mod optimization;
37/// Market data provider interface and implementations
38pub mod provider;
39/// WebSocket session management with automatic reconnection
40pub mod session_manager;
41/// Zero-copy adapters for efficient data parsing
42pub mod zero_copy_adapter;
43
44/// Exchange-specific implementations and adapters
45pub mod exchange;
46
47// Re-exports for convenience
48pub use provider::prelude::*;
49
50// Re-export primary traits
51pub use feeder::{Feeder, OrderbookAnalytics};
52
53// Re-export session management types
54pub use session_manager::{SessionConfig, SessionManager, SessionState, SessionStats, SessionType};