ccxt_core/error/
order.rs

1//! Order-related error types.
2
3use thiserror::Error;
4
5/// Errors related to order management operations.
6///
7/// This type covers all order lifecycle errors including creation,
8/// cancellation, and modification failures.
9///
10/// # Example
11///
12/// ```rust
13/// use ccxt_core::error::{Error, OrderError};
14///
15/// fn cancel_order(order_id: &str) -> Result<(), Error> {
16///     // Simulate order not found
17///     if order_id == "unknown" {
18///         return Err(OrderError::CancellationFailed(
19///             format!("Order {} not found", order_id)
20///         ).into());
21///     }
22///     Ok(())
23/// }
24/// ```
25#[derive(Error, Debug)]
26#[non_exhaustive]
27pub enum OrderError {
28    /// Order creation failed.
29    #[error("Order creation failed: {0}")]
30    CreationFailed(String),
31
32    /// Order cancellation failed.
33    #[error("Order cancellation failed: {0}")]
34    CancellationFailed(String),
35
36    /// Order modification failed.
37    #[error("Order modification failed: {0}")]
38    ModificationFailed(String),
39
40    /// Invalid order parameters.
41    #[error("Invalid order parameters: {0}")]
42    InvalidParameters(String),
43}