#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
pub enum Network {
BitcoinMainnet,
BitcoinTestnet,
Ethereum,
}
impl Network {
#[inline]
pub fn is_bitcoin(&self) -> bool {
matches!(self, Network::BitcoinMainnet | Network::BitcoinTestnet)
}
#[inline]
pub fn is_ethereum(&self) -> bool {
matches!(self, Network::Ethereum)
}
#[inline]
pub fn is_testnet(&self) -> bool {
matches!(self, Network::BitcoinTestnet)
}
}
impl std::fmt::Display for Network {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
match self {
Network::BitcoinMainnet => write!(f, "Bitcoin Mainnet"),
Network::BitcoinTestnet => write!(f, "Bitcoin Testnet"),
Network::Ethereum => write!(f, "Ethereum"),
}
}
}