kiteticker_async_manager/models/
mode.rs1use serde::{Deserialize, Serialize};
2
3#[derive(
4 Debug, Clone, Deserialize, Serialize, Default, PartialEq, PartialOrd,
5)]
6#[serde(rename_all = "lowercase")]
7pub enum Mode {
11 Full,
12 #[default]
13 Quote,
14 LTP,
15}
16
17impl TryFrom<usize> for Mode {
18 type Error = String;
19 fn try_from(value: usize) -> Result<Self, Self::Error> {
20 match value {
21 8 => Ok(Self::LTP),
22 44 => Ok(Self::Quote),
23 184 => Ok(Self::Full),
24 _ => Err(format!("Invalid packet size: {}", value)),
25 }
26 }
27}