HyriseSQLParser/src/sql/SQLStatement.h

46 lines
780 B
C
Raw Normal View History

2017-04-06 18:27:47 +02:00
#ifndef __SQLPARSER__SQLSTATEMENT_H__
#define __SQLPARSER__SQLSTATEMENT_H__
2014-10-20 22:33:36 +02:00
2015-01-06 15:29:18 +01:00
#include "Expr.h"
#include <vector>
2014-10-09 01:30:22 +02:00
namespace hsql {
enum StatementType {
kStmtError, // unused
kStmtSelect,
kStmtImport,
kStmtInsert,
kStmtUpdate,
kStmtDelete,
kStmtCreate,
kStmtDrop,
kStmtPrepare,
kStmtExecute,
kStmtExport,
kStmtRename,
kStmtAlter
};
2016-02-27 15:01:06 +01:00
// Base struct for every SQL statement
struct SQLStatement {
SQLStatement(StatementType type);
2016-02-27 15:01:06 +01:00
virtual ~SQLStatement();
2016-02-27 15:01:06 +01:00
StatementType type() const;
bool isType(StatementType type) const;
2016-02-27 15:01:06 +01:00
// Shorthand for isType(type).
bool is(StatementType type) const;
private:
StatementType type_;
};
2014-10-09 01:30:22 +02:00
} // namespace hsql
2017-04-06 18:27:47 +02:00
#endif // __SQLPARSER__SQLSTATEMENT_H__