use serde::Serialize;
#[derive(Debug, Clone)]
pub enum LedgerSpec {
LedgerIndex(LedgerIndex),
LedgerHash(String),
}
#[derive(Debug, Clone, Copy)]
pub enum LedgerIndex {
Validated,
Closed,
Current,
Index(u32),
}
impl Serialize for LedgerIndex {
fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
where
S: serde::Serializer,
{
match self {
LedgerIndex::Validated => serializer.serialize_str("validated"),
LedgerIndex::Closed => serializer.serialize_str("closed"),
LedgerIndex::Current => serializer.serialize_str("current"),
LedgerIndex::Index(index) => serializer.serialize_u32(*index),
}
}
}