poco/Data/SQLParser/src/SQLParser.h
Aleksandar Fabijanic ef688babc2
SQLParser not included in the release archive #4453 (#4456)
* fix(SQLParser): move to Data dir; add extradirs, remove vs 140,150 build scripts generation

* fix(ActiveRecord): Makefile #4453

* fix(Data): Make SQLParser internal

* fix(build): ODBC Makefile and Data libs CmakeLists #4453

* fix(build): Data libs CMakeLists #4453

* fix(build): regenerate VS projects #4453

* fix(CppUnit): remove Foundation dependency

* fix(SQLParser): remove leftover unnecessary includes

* fix(SQLParser): remove fwd header #4453

* fix(PocoDoc): remove SQLParser from include list

* fix(mkrelease): remove 140,150 vs projects

* fix(SQLParser): Disable SQL parsing by default #4462

* fix(test): Disable SQL parsing by default #4462

* Fix detection of odbc and apache2 for Fedora (#4461)

* Fixed transaction handling in MySQL test when SQL parser is switched off

* chore(ParallelSocketAcceptor): remove unnecessary include and using from header

---------

Co-authored-by: Matej Kenda <matejken@gmail.com>
Co-authored-by: topazus <77263945+topazus@users.noreply.github.com>
Co-authored-by: Friedrich Wilckens <frwilckens@gmail.com>
2024-02-16 09:33:14 +01:00

35 lines
1.1 KiB
C++

#ifndef SQLPARSER_SQLPARSER_H
#define SQLPARSER_SQLPARSER_H
#include "SQLParserResult.h"
#include "sql/statements.h"
namespace hsql {
// Static methods used to parse SQL strings.
class SQLParser_API SQLParser {
public:
// Parses a given constant character SQL string into the result object.
// Returns true if the lexer and parser could run without internal errors.
// This does NOT mean that the SQL string was valid SQL. To check that
// you need to check result->isValid();
static bool parse(const std::string& sql, SQLParserResult* result);
// Run tokenization on the given string and store the tokens in the output vector.
static bool tokenize(const std::string& sql, std::vector<int16_t>* tokens);
// Deprecated.
// Old method to parse SQL strings. Replaced by parse().
static bool parseSQLString(const char* sql, SQLParserResult* result);
// Deprecated.
// Old method to parse SQL strings. Replaced by parse().
static bool parseSQLString(const std::string& sql, SQLParserResult* result);
private:
SQLParser();
};
} // namespace hsql
#endif