From 8582c7f901ede3e7200d881d7f271252a54669e4 Mon Sep 17 00:00:00 2001 From: Pedro Date: Wed, 8 Feb 2017 02:02:30 +0100 Subject: [PATCH] remove typedef enums and inline methods. --- src/sql/SQLStatement.h | 4 ++-- src/sql/SelectStatement.h | 4 ++-- src/sql/Table.h | 49 ++++++++++----------------------------- src/sql/statements.cpp | 16 ++++++++----- 4 files changed, 26 insertions(+), 47 deletions(-) diff --git a/src/sql/SQLStatement.h b/src/sql/SQLStatement.h index 264eb64..56704ca 100644 --- a/src/sql/SQLStatement.h +++ b/src/sql/SQLStatement.h @@ -5,7 +5,7 @@ #include namespace hsql { - typedef enum { + enum StatementType { kStmtError, // unused kStmtSelect, kStmtImport, @@ -19,7 +19,7 @@ namespace hsql { kStmtExport, kStmtRename, kStmtAlter - } StatementType; + }; /** * Base struct for every SQL statement diff --git a/src/sql/SelectStatement.h b/src/sql/SelectStatement.h index eb0cfe2..6086438 100644 --- a/src/sql/SelectStatement.h +++ b/src/sql/SelectStatement.h @@ -6,10 +6,10 @@ #include "Table.h" namespace hsql { - typedef enum { + enum OrderType { kOrderAsc, kOrderDesc - } OrderType; + }; /** * Description of the order by clause within a select statement diff --git a/src/sql/Table.h b/src/sql/Table.h index 15bf219..2e7ac29 100644 --- a/src/sql/Table.h +++ b/src/sql/Table.h @@ -11,23 +11,15 @@ namespace hsql { struct JoinDefinition; struct TableRef; - - /** - * @enum TableRefType - * Types table references - */ - typedef enum { + // Possible table reference types. + enum TableRefType { kTableName, kTableSelect, kTableJoin, kTableCrossProduct - } TableRefType; + }; - - /** - * @struct TableRef - * @brief Holds reference to tables. Can be either table names or a select statement. - */ + // Holds reference to tables. Can be either table names or a select statement. struct TableRef { TableRef(TableRefType type); virtual ~TableRef(); @@ -42,37 +34,22 @@ namespace hsql { std::vector* list; JoinDefinition* join; + // Returns true if a schema is set. + bool hasSchema(); - /** - * Convenience accessor methods - */ - inline bool hasSchema() { - return schema != NULL; - } - - inline char* getName() { - if (alias != NULL) return alias; - else return name; - } + // Returns the alias, if it is set. Otherwise the name. + char* getName(); }; - - /** - * @enum JoinType - * Types of joins - */ - typedef enum { + // Possible types of joins. + enum JoinType { kJoinInner, kJoinOuter, kJoinLeft, kJoinRight, - } JoinType; + }; - - /** - * @struct JoinDefinition - * @brief Definition of a join table - */ + // Definition of a join construct. struct JoinDefinition { JoinDefinition(); virtual ~JoinDefinition(); @@ -84,7 +61,5 @@ namespace hsql { JoinType type; }; - - } // namespace hsql #endif diff --git a/src/sql/statements.cpp b/src/sql/statements.cpp index 06c468e..1e76737 100644 --- a/src/sql/statements.cpp +++ b/src/sql/statements.cpp @@ -180,9 +180,6 @@ namespace hsql { delete where; } - - - // TableRef TableRef::TableRef(TableRefType type) : type(type), @@ -200,6 +197,15 @@ namespace hsql { delete list; } + bool TableRef::hasSchema() { + return schema != NULL; + } + + char* TableRef::getName() { + if (alias != NULL) return alias; + else return name; + } + // JoinDefinition JoinDefinition::JoinDefinition() : left(NULL), @@ -213,6 +219,4 @@ namespace hsql { delete condition; } - - -} // namespace hsql \ No newline at end of file +} // namespace hsql