use std::fmt;
#[derive(Debug, Clone, PartialEq)]
pub enum TableNullValue {
Integer(i64),
Text(String),
}
impl TableNullValue {
pub fn as_integer(&self) -> Option<i64> {
match self {
TableNullValue::Integer(value) => Some(*value),
TableNullValue::Text(_) => None,
}
}
pub fn as_str(&self) -> Option<&str> {
match self {
TableNullValue::Text(value) => Some(value.as_str()),
TableNullValue::Integer(_) => None,
}
}
}
impl fmt::Display for TableNullValue {
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
match self {
TableNullValue::Integer(value) => write!(f, "{}", value),
TableNullValue::Text(value) => write!(f, "{}", value),
}
}
}