From 1dc73bc49e27899810ba885fca12d7530709173e Mon Sep 17 00:00:00 2001 From: pedrocarlo Date: Mon, 26 May 2025 18:18:00 -0300 Subject: [PATCH] initial stubs for ast::Select --- .../sqlite3-parser/src/to_sql_string/mod.rs | 9 +++-- .../src/to_sql_string/stmt/mod.rs | 1 + .../src/to_sql_string/stmt/select.rs | 36 +++++++++++++++++++ 3 files changed, 43 insertions(+), 3 deletions(-) create mode 100644 vendored/sqlite3-parser/src/to_sql_string/stmt/mod.rs create mode 100644 vendored/sqlite3-parser/src/to_sql_string/stmt/select.rs diff --git a/vendored/sqlite3-parser/src/to_sql_string/mod.rs b/vendored/sqlite3-parser/src/to_sql_string/mod.rs index df0feb601..9c777f2ae 100644 --- a/vendored/sqlite3-parser/src/to_sql_string/mod.rs +++ b/vendored/sqlite3-parser/src/to_sql_string/mod.rs @@ -1,16 +1,19 @@ //! ToSqlString trait definition and implementations +mod stmt; + use crate::ast::TableInternalId; /// Context to be used in ToSqlString pub trait ToSqlContext { /// Given an id, get the table name - /// Currently not considering alias + /// + /// Currently not considering aliases fn get_table_name(&self, id: TableInternalId) -> &str; } /// Trait to convert an ast to a string -pub trait ToSqlString { +pub trait ToSqlString { /// Convert the given value to String - fn to_sql_string(&self, context: &C) -> String; + fn to_sql_string(&self, context: &C) -> String; } diff --git a/vendored/sqlite3-parser/src/to_sql_string/stmt/mod.rs b/vendored/sqlite3-parser/src/to_sql_string/stmt/mod.rs new file mode 100644 index 000000000..4476670a4 --- /dev/null +++ b/vendored/sqlite3-parser/src/to_sql_string/stmt/mod.rs @@ -0,0 +1 @@ +mod select; diff --git a/vendored/sqlite3-parser/src/to_sql_string/stmt/select.rs b/vendored/sqlite3-parser/src/to_sql_string/stmt/select.rs new file mode 100644 index 000000000..64bdf9baf --- /dev/null +++ b/vendored/sqlite3-parser/src/to_sql_string/stmt/select.rs @@ -0,0 +1,36 @@ +use crate::{ + ast, + to_sql_string::{ToSqlContext, ToSqlString}, +}; + +impl ToSqlString for ast::Select { + fn to_sql_string(&self, context: &C) -> String { + let mut ret = String::new(); + ret + } +} + +impl ToSqlString for ast::SelectBody { + fn to_sql_string(&self, context: &C) -> String { + let mut ret = String::new(); + ret + } +} + +impl ToSqlString for ast::OneSelect { + fn to_sql_string(&self, context: &C) -> String { + let mut ret = String::new(); + match self { + ast::OneSelect::Select(select) => ret, + // TODO: come back here when we implement ToSqlString for Expr + ast::OneSelect::Values(values) => ret, + } + } +} + +impl ToSqlString for ast::SelectInner { + fn to_sql_string(&self, context: &C) -> String { + let mut ret = String::new(); + ret + } +}