diff --git a/minisql/src/error.rs b/minisql/src/error.rs index 51ca0cf..6000c0e 100644 --- a/minisql/src/error.rs +++ b/minisql/src/error.rs @@ -1,5 +1,5 @@ use crate::internals::row::ColumnPosition; -use crate::internals::schema::{ColumnName, TableName}; +use crate::schema::{ColumnName, TableName}; use crate::operation::InsertionValues; use crate::type_system::{DbType, Uuid, Value}; diff --git a/minisql/src/internals/mod.rs b/minisql/src/internals/mod.rs index 864d9d7..f4723f3 100644 --- a/minisql/src/internals/mod.rs +++ b/minisql/src/internals/mod.rs @@ -1,4 +1,3 @@ pub mod column_index; pub mod row; -pub mod schema; pub mod table; diff --git a/minisql/src/internals/table.rs b/minisql/src/internals/table.rs index 36abf76..914d1ef 100644 --- a/minisql/src/internals/table.rs +++ b/minisql/src/internals/table.rs @@ -3,7 +3,7 @@ use std::collections::{BTreeMap, HashMap, HashSet}; use crate::error::Error; use crate::internals::column_index::ColumnIndex; use crate::internals::row::{ColumnPosition, Row}; -use crate::internals::schema::{ColumnName, TableSchema, TableName}; +use crate::schema::{ColumnName, TableSchema, TableName}; use crate::result::DbResult; use crate::type_system::{IndexableValue, Uuid, Value}; diff --git a/minisql/src/interpreter.rs b/minisql/src/interpreter.rs index 4bd3f35..7a3bad3 100644 --- a/minisql/src/interpreter.rs +++ b/minisql/src/interpreter.rs @@ -1,6 +1,6 @@ use crate::error::Error; use crate::internals::row::{ColumnPosition, Row}; -use crate::internals::schema::{TableName, TableSchema}; +use crate::schema::{TableName, TableSchema}; use crate::internals::table::Table; use crate::operation::{ColumnSelection, Condition, Operation}; use crate::result::DbResult; diff --git a/minisql/src/lib.rs b/minisql/src/lib.rs new file mode 100644 index 0000000..b8e95c3 --- /dev/null +++ b/minisql/src/lib.rs @@ -0,0 +1,7 @@ +pub mod schema; +pub mod interpreter; +pub mod operation; +pub mod type_system; +mod error; +mod internals; +mod result; diff --git a/minisql/src/main.rs b/minisql/src/main.rs deleted file mode 100644 index 9a4f292..0000000 --- a/minisql/src/main.rs +++ /dev/null @@ -1,10 +0,0 @@ -mod error; -mod internals; -mod interpreter; -mod operation; -mod result; -mod type_system; - -fn main() { - interpreter::example(); -} diff --git a/minisql/src/operation.rs b/minisql/src/operation.rs index a5fd0b7..3b060c9 100644 --- a/minisql/src/operation.rs +++ b/minisql/src/operation.rs @@ -1,4 +1,4 @@ -use crate::internals::schema::{ColumnName, TableName, TableSchema}; +use crate::schema::{ColumnName, TableName, TableSchema}; use crate::type_system::Value; // ==============SQL operations================ diff --git a/minisql/src/internals/schema.rs b/minisql/src/schema.rs similarity index 97% rename from minisql/src/internals/schema.rs rename to minisql/src/schema.rs index 4f2bf54..c9574ac 100644 --- a/minisql/src/internals/schema.rs +++ b/minisql/src/schema.rs @@ -20,7 +20,7 @@ pub type TableName = String; pub type ColumnName = String; impl TableSchema { - pub fn new(table_name: TableName, primary_key: ColumnPosition, column_name_position_map: Vec<(ColumnName, ColumnPosition)>, types: Vec) -> Self { + pub(crate) fn new(table_name: TableName, primary_key: ColumnPosition, column_name_position_map: Vec<(ColumnName, ColumnPosition)>, types: Vec) -> Self { let mut column_name_position_mapping: BiMap = BiMap::new(); for (column_name, column_position) in column_name_position_map { column_name_position_mapping.insert(column_name, column_position);