use crate::types::{Money, OddsX10000};
use serde::{Deserialize, Serialize};
#[derive(
Debug,
Clone,
Copy,
Serialize,
Deserialize,
PartialEq,
Eq,
rkyv::Archive,
rkyv::Serialize,
rkyv::Deserialize,
)]
pub enum FillPrice {
Odds(OddsX10000),
Ticks(u16),
}
#[derive(
Debug,
Clone,
Copy,
Serialize,
Deserialize,
PartialEq,
Eq,
rkyv::Archive,
rkyv::Serialize,
rkyv::Deserialize,
)]
pub enum FillQuantity {
Stake(Money),
Shares(u64),
}
impl PartialEq<Money> for FillQuantity {
fn eq(&self, other: &Money) -> bool {
matches!(self, FillQuantity::Stake(m) if m == other)
}
}
impl PartialEq<FillQuantity> for Money {
fn eq(&self, other: &FillQuantity) -> bool {
matches!(other, FillQuantity::Stake(m) if m == self)
}
}