Skip to main content

nautilus_binance/spot/sbe/generated/
self_trade_prevention_mode.rs

1#[derive(Clone, Copy, Debug, Default, PartialEq, Eq, PartialOrd, Ord, Hash)]
2#[repr(u8)]
3pub enum SelfTradePreventionMode {
4    None = 0x1_u8,
5    ExpireTaker = 0x2_u8,
6    ExpireMaker = 0x3_u8,
7    ExpireBoth = 0x4_u8,
8    Decrement = 0x5_u8,
9    Transfer = 0x6_u8,
10    NonRepresentable = 0xfe_u8,
11    #[default]
12    NullVal = 0xff_u8,
13}
14impl From<u8> for SelfTradePreventionMode {
15    #[inline]
16    fn from(v: u8) -> Self {
17        match v {
18            0x1_u8 => Self::None,
19            0x2_u8 => Self::ExpireTaker,
20            0x3_u8 => Self::ExpireMaker,
21            0x4_u8 => Self::ExpireBoth,
22            0x5_u8 => Self::Decrement,
23            0x6_u8 => Self::Transfer,
24            0xfe_u8 => Self::NonRepresentable,
25            _ => Self::NullVal,
26        }
27    }
28}
29impl From<SelfTradePreventionMode> for u8 {
30    #[inline]
31    fn from(v: SelfTradePreventionMode) -> Self {
32        match v {
33            SelfTradePreventionMode::None => 0x1_u8,
34            SelfTradePreventionMode::ExpireTaker => 0x2_u8,
35            SelfTradePreventionMode::ExpireMaker => 0x3_u8,
36            SelfTradePreventionMode::ExpireBoth => 0x4_u8,
37            SelfTradePreventionMode::Decrement => 0x5_u8,
38            SelfTradePreventionMode::Transfer => 0x6_u8,
39            SelfTradePreventionMode::NonRepresentable => 0xfe_u8,
40            SelfTradePreventionMode::NullVal => 0xff_u8,
41        }
42    }
43}
44impl core::str::FromStr for SelfTradePreventionMode {
45    type Err = ();
46
47    #[inline]
48    fn from_str(v: &str) -> core::result::Result<Self, Self::Err> {
49        match v {
50            "None" => Ok(Self::None),
51            "ExpireTaker" => Ok(Self::ExpireTaker),
52            "ExpireMaker" => Ok(Self::ExpireMaker),
53            "ExpireBoth" => Ok(Self::ExpireBoth),
54            "Decrement" => Ok(Self::Decrement),
55            "Transfer" => Ok(Self::Transfer),
56            "NonRepresentable" => Ok(Self::NonRepresentable),
57            _ => Ok(Self::NullVal),
58        }
59    }
60}
61impl core::fmt::Display for SelfTradePreventionMode {
62    #[inline]
63    fn fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result {
64        match self {
65            Self::None => write!(f, "None"),
66            Self::ExpireTaker => write!(f, "ExpireTaker"),
67            Self::ExpireMaker => write!(f, "ExpireMaker"),
68            Self::ExpireBoth => write!(f, "ExpireBoth"),
69            Self::Decrement => write!(f, "Decrement"),
70            Self::Transfer => write!(f, "Transfer"),
71            Self::NonRepresentable => write!(f, "NonRepresentable"),
72            Self::NullVal => write!(f, "NullVal"),
73        }
74    }
75}