Expand description
Exchange Capabilities Module
This module provides efficient representation and manipulation of exchange capabilities using bitflags for compact storage (8 bytes instead of 46+ bytes) and type-safe operations.
§Design
The capability system uses a hybrid approach:
Capabilityenum: Individual capability identifiers for type-safe APICapabilitiesbitflags: Efficient storage and set operationsExchangeCapabilitiesstruct: High-level API with backward compatibility
§Example
use ccxt_core::capability::{Capability, Capabilities, ExchangeCapabilities};
// Using bitflags directly
let caps = Capabilities::MARKET_DATA | Capabilities::TRADING;
assert!(caps.contains(Capabilities::FETCH_TICKER));
// Using the high-level API
let exchange_caps = ExchangeCapabilities::public_only();
assert!(exchange_caps.has("fetchTicker"));
assert!(!exchange_caps.has("createOrder"));Structs§
- Capabilities
- Efficient bitflags representation of exchange capabilities
- Exchange
Capabilities - Exchange capabilities configuration
- Exchange
Capabilities Builder - Builder for ExchangeCapabilities
Enums§
- Capability
- Individual capability identifier
- Trait
Category - Trait category for capability-to-trait mapping