multisql/database/
mutable.rs1use {
2 crate::{DatabaseError, Result, Row, Schema, SchemaDiff, Value},
3 async_trait::async_trait,
4};
5
6#[async_trait(?Send)]
8pub trait DBMut {
9 async fn insert_schema(&mut self, _schema: &Schema) -> Result<()> {
10 Err(DatabaseError::Unimplemented.into())
11 }
12
13 async fn delete_schema(&mut self, _table_name: &str) -> Result<()> {
14 Err(DatabaseError::Unimplemented.into())
15 } async fn insert_data(&mut self, _table_name: &str, _rows: Vec<Row>) -> Result<()> {
18 Err(DatabaseError::Unimplemented.into())
19 }
20
21 async fn update_data(&mut self, _table_name: &str, _rows: Vec<(Value, Row)>) -> Result<()> {
22 Err(DatabaseError::Unimplemented.into())
23 }
24
25 async fn delete_data(&mut self, _table_name: &str, _keys: Vec<Value>) -> Result<()> {
26 Err(DatabaseError::Unimplemented.into())
27 }
28
29 async fn update_index(
30 &mut self,
31 _index_name: &str,
32 _table_name: &str,
33 _keys: Vec<(Value, Value)>,
34 ) -> Result<()> {
35 Err(DatabaseError::Unimplemented.into())
36 }
37
38 async fn alter_table(&mut self, _table_name: &str, _schema_diff: SchemaDiff) -> Result<()> {
39 Err(DatabaseError::Unimplemented.into())
40 }
41}