bybit_rust_api/rest/enums/
order_status.rs1use std::fmt::{Display, Formatter, Result};
2
3use serde::{Deserialize, Serialize};
4
5#[derive(Debug, Serialize, Deserialize, PartialEq)]
6pub enum OrderStatus {
7 #[serde(rename = "New")]
11 New, #[serde(rename = "PartiallyFilled")]
13 PartiallyFilled,
14 #[serde(rename = "Untriggered")]
15 Untriggered, #[serde(rename = "PartiallyFilledCanceled")]
19 PartiallyFilledCanceled, #[serde(rename = "Filled")]
21 Filled,
22 #[serde(rename = "Cancelled")]
23 Cancelled, #[serde(rename = "Triggered")]
25 Triggered, #[serde(rename = "Deactivated")]
27 Deactivated, }
29
30impl Display for OrderStatus {
31 fn fmt(&self, f: &mut Formatter) -> Result {
32 match self {
33 OrderStatus::New => write!(f, "New"),
34 OrderStatus::PartiallyFilled => write!(f, "PartiallyFilled"),
35 OrderStatus::Untriggered => write!(f, "Untriggered"),
36 OrderStatus::PartiallyFilledCanceled => write!(f, "PartiallyFilledCanceled"),
37 OrderStatus::Filled => write!(f, "Filled"),
38 OrderStatus::Cancelled => write!(f, "Cancelled"),
39 OrderStatus::Triggered => write!(f, "Triggered"),
40 OrderStatus::Deactivated => write!(f, "Deactivated"),
41 }
42 }
43}
44
45impl OrderStatus {
46 pub fn is_open(&self) -> bool {
47 match self {
48 OrderStatus::New => true,
49 OrderStatus::PartiallyFilled => true,
50 OrderStatus::Untriggered => true,
51 OrderStatus::PartiallyFilledCanceled => true,
52 OrderStatus::Filled => false,
53 OrderStatus::Cancelled => false,
54 OrderStatus::Triggered => false,
55 OrderStatus::Deactivated => false,
56 }
57 }
58
59 pub fn is_closed(&self) -> bool {
60 !self.is_open()
61 }
62}