Skip to content

Commit fd92e1b

Browse files
committed
add asset class enum
1 parent 74ef5af commit fd92e1b

File tree

1 file changed

+29
-0
lines changed
  • lazer/sdk/rust/protocol/src

1 file changed

+29
-0
lines changed

lazer/sdk/rust/protocol/src/lib.rs

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -89,6 +89,35 @@ pub enum PriceFeedProperty {
8989
// More fields may be added later.
9090
}
9191

92+
#[derive(Debug, Clone, Deserialize)]
93+
#[serde(rename_all = "kebab-case")]
94+
pub enum AssetClass {
95+
Crypto,
96+
Fx,
97+
Equity,
98+
Metal,
99+
Rates,
100+
Nav,
101+
Commodity,
102+
#[serde(rename = "funding-rate")]
103+
FundingRate,
104+
}
105+
106+
impl AssetClass {
107+
fn as_str(&self) -> &'static str {
108+
match self {
109+
AssetClass::Crypto => "crypto",
110+
AssetClass::Fx => "fx",
111+
AssetClass::Equity => "equity",
112+
AssetClass::Metal => "metal",
113+
AssetClass::Rates => "rates",
114+
AssetClass::Nav => "nav",
115+
AssetClass::Commodity => "commodity",
116+
AssetClass::FundingRate => "funding-rate",
117+
}
118+
}
119+
}
120+
92121
// Operation and coefficient for converting value to mantissa.
93122
enum ExponentFactor {
94123
// mantissa = value * factor

0 commit comments

Comments
 (0)