pub trait CatalogProvider {
// Required methods
fn list_tables(&self) -> Vec<String>;
fn get_table(&self, name: &str) -> CatalogResult<&dyn TableProvider>;
fn register_table(&mut self, metadata: TableMetadata) -> CatalogResult<()>;
}Expand description
A registry of tables that can be listed, looked up, and registered.
Required Methods§
Sourcefn list_tables(&self) -> Vec<String>
fn list_tables(&self) -> Vec<String>
Return the names of all tables in the catalog.
Sourcefn get_table(&self, name: &str) -> CatalogResult<&dyn TableProvider>
fn get_table(&self, name: &str) -> CatalogResult<&dyn TableProvider>
Look up a table by name.
Sourcefn register_table(&mut self, metadata: TableMetadata) -> CatalogResult<()>
fn register_table(&mut self, metadata: TableMetadata) -> CatalogResult<()>
Register a table in the catalog.
Returns an error if the schema is structurally invalid or if implementation-specific constraints are violated.
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".