mod identity;
mod market_data;
mod market_data_public;
mod market_data_public_stubs;
mod trading;
mod account;
mod positions;
mod websocket;
mod auth;
mod operations;
mod operations_stubs;
mod has_capabilities;
pub mod has_capabilities_stubs;
pub use identity::ExchangeIdentity;
pub use market_data::MarketData;
pub use market_data_public::MarketDataPublic;
pub use trading::Trading;
pub use account::Account;
pub use positions::Positions;
pub use websocket::{WebSocketConnector, WebSocketExt};
pub use auth::{
Authenticated, CredentialKind,
Credentials, AuthRequest, SignatureLocation, ExchangeAuth,
};
pub use operations::{
CancelAll, AmendOrder, BatchOrders,
AccountTransfers, CustodialFunds, SubAccounts,
FundingHistory, AccountLedger,
};
pub use has_capabilities::HasCapabilities;
pub use crate::core::websocket::CapabilityProvider;
pub trait CoreConnector:
ExchangeIdentity
+ MarketData
+ MarketDataPublic
+ Trading
+ Account
+ Positions
+ CancelAll
+ AmendOrder
+ BatchOrders
+ AccountTransfers
+ CustodialFunds
+ SubAccounts
+ FundingHistory
+ AccountLedger
+ HasCapabilities
+ Send
+ Sync
+ 'static
{
fn as_any(&self) -> &dyn std::any::Any;
}
impl<T> CoreConnector for T where
T: ExchangeIdentity
+ MarketData
+ MarketDataPublic
+ Trading
+ Account
+ Positions
+ CancelAll
+ AmendOrder
+ BatchOrders
+ AccountTransfers
+ CustodialFunds
+ SubAccounts
+ FundingHistory
+ AccountLedger
+ HasCapabilities
+ Send
+ Sync
+ 'static
{
fn as_any(&self) -> &dyn std::any::Any {
self
}
}