pub trait KernelCatalog: Send + Sync {
// Required methods
fn create_table(
&self,
name: &str,
schema: &TableSchema,
) -> KernelResult<TableId>;
fn drop_table(&self, table_id: TableId) -> KernelResult<()>;
fn get_schema(&self, table_id: TableId) -> KernelResult<TableSchema>;
fn list_tables(&self) -> KernelResult<Vec<TableInfo>>;
fn rename_table(
&self,
table_id: TableId,
new_name: &str,
) -> KernelResult<()>;
}Expand description
Catalog operations
Schema management and metadata.
Required Methods§
Sourcefn create_table(
&self,
name: &str,
schema: &TableSchema,
) -> KernelResult<TableId>
fn create_table( &self, name: &str, schema: &TableSchema, ) -> KernelResult<TableId>
Create a new table
Sourcefn drop_table(&self, table_id: TableId) -> KernelResult<()>
fn drop_table(&self, table_id: TableId) -> KernelResult<()>
Drop a table
Sourcefn get_schema(&self, table_id: TableId) -> KernelResult<TableSchema>
fn get_schema(&self, table_id: TableId) -> KernelResult<TableSchema>
Get table schema
Sourcefn list_tables(&self) -> KernelResult<Vec<TableInfo>>
fn list_tables(&self) -> KernelResult<Vec<TableInfo>>
List all tables
Sourcefn rename_table(&self, table_id: TableId, new_name: &str) -> KernelResult<()>
fn rename_table(&self, table_id: TableId, new_name: &str) -> KernelResult<()>
Rename a table