use crate::Table;
#[derive(Clone)]
pub enum TableRef {
Table(Table),
Name(String),
}
impl TableRef {
pub fn table_name(&self) -> &str {
match self {
TableRef::Table(table) => table.get_name(),
TableRef::Name(name) => name,
}
}
}
impl From<&Table> for TableRef {
fn from(table: &Table) -> Self {
TableRef::Table(table.clone())
}
}
impl From<Table> for TableRef {
fn from(table: Table) -> Self {
TableRef::Table(table)
}
}
impl From<String> for TableRef {
fn from(name: String) -> Self {
TableRef::Name(name)
}
}
impl From<&str> for TableRef {
fn from(name: &str) -> Self {
TableRef::Name(name.to_owned())
}
}