summaryrefslogtreecommitdiff
path: root/ndb/src/old_files/client/odbc/codegen/SimpleParser.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'ndb/src/old_files/client/odbc/codegen/SimpleParser.cpp')
-rw-r--r--ndb/src/old_files/client/odbc/codegen/SimpleParser.cpp96
1 files changed, 0 insertions, 96 deletions
diff --git a/ndb/src/old_files/client/odbc/codegen/SimpleParser.cpp b/ndb/src/old_files/client/odbc/codegen/SimpleParser.cpp
deleted file mode 100644
index a2418f49e37..00000000000
--- a/ndb/src/old_files/client/odbc/codegen/SimpleParser.cpp
+++ /dev/null
@@ -1,96 +0,0 @@
-/* Copyright (C) 2003 MySQL AB
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */
-
-#include <common/common.hpp>
-#include <NdbMutex.h>
-#include <common/StmtArea.hpp>
-#include <FlexLexer.h>
-#include "SimpleParser.hpp"
-
-SimpleParser::~SimpleParser()
-{
-}
-
-#ifdef NDB_WIN32
-static NdbMutex & parse_mutex = * NdbMutex_Create();
-#else
-static NdbMutex parse_mutex = NDB_MUTEX_INITIALIZER;
-#endif
-
-void
-SimpleParser::yyparse()
-{
- Ctx& ctx = this->ctx();
- NdbMutex_Lock(&parse_mutex);
- ctx_log2(("parse: %s", stmtArea().sqlText().c_str()));
-#if YYDEBUG
- SimpleParser_yydebug = (m_ctx.logLevel() >= 5);
-#endif
- SimpleParser_yyparse((void*)this);
- NdbMutex_Unlock(&parse_mutex);
-}
-
-void
-SimpleParser::pushState(int sc)
-{
- yy_push_state(sc);
- m_stacksize++;
-}
-
-void
-SimpleParser::popState()
-{
- ctx_assert(m_stacksize > 0);
- yy_pop_state();
- m_stacksize--;
-}
-
-void
-SimpleParser::parseError(const char* msg)
-{
- ctx().pushStatus(Sqlstate::_42000, Error::Gen, "%s at '%*s' position %u", msg, yyleng, yytext, m_parsePos - yyleng);
-}
-
-int
-SimpleParser::LexerInput(char* buf, int max_size)
-{
- const BaseString& text = stmtArea().sqlText();
- int n = 0;
- const char* const t = text.c_str();
- const unsigned m = text.length();
- while (n < max_size && m_textPos < m) {
- buf[n++] = t[m_textPos++];
- m_parsePos++; // XXX simple hack
- break;
- }
- return n;
-}
-
-// XXX just a catch-all (scanner should match all input)
-void
-SimpleParser::LexerOutput(const char* buf, int size)
-{
- if (! ctx().ok())
- return;
- const char* msg = "unrecognized input";
- ctx().pushStatus(Sqlstate::_42000, Error::Gen, "%s at '%*s' position %u", msg, size, buf, m_parsePos);
-}
-
-void
-SimpleParser::LexerError(const char* msg)
-{
- ctx().pushStatus(Sqlstate::_42000, Error::Gen, "%s at '%*s' position %u", msg, yyleng, yytext, m_parsePos);
-}