Skip to content

Instantly share code, notes, and snippets.

@lavoiesl
Last active April 17, 2024 23:08
Show Gist options
  • Save lavoiesl/efed2ed8886b32d778c5fd30bdb16390 to your computer and use it in GitHub Desktop.
Save lavoiesl/efed2ed8886b32d778c5fd30bdb16390 to your computer and use it in GitHub Desktop.
# typed: false
# frozen_string_literal: true
require "bundler"
require "antlr4-native"
require "etc"
require "rubygems/package"
require "zlib"
require "open-uri"
namespace :antlr do
namespace :runtime do
task clone: :environment do
dest = "ext/lib/antlr4-cpp-runtime"
tag = Antlr4Native::Generator::ANTLR_VERSION
base = "antlr4-#{tag}/runtime/Cpp/runtime/src/"
url = "https://github.com/antlr/antlr4/archive/refs/tags/#{tag}.tar.gz"
puts "Extracting #{base} from #{url} to #{dest}"
FileUtils.rm_rf(dest)
URI.parse(url).open do |file|
# Taken from https://stackoverflow.com/a/11505644
tar_extract = Gem::Package::TarReader.new(Zlib::GzipReader.new(file))
found = false
tar_extract.each do |entry|
unless found
# Seek
next unless entry.full_name == base
found = true
end
break unless entry.full_name.start_with?(base)
next unless entry.file?
dest_path = File.join(dest, entry.full_name[base.length..-1])
puts dest_path
FileUtils.mkdir_p(File.dirname(dest_path))
File.open(dest_path, "wb") do |f|
IO.copy_stream(entry, f)
end
end
tar_extract.close
raise "Could not find the #{base} directory" unless found
end
end
end
namespace :python do
desc "Generate the MySQL parser"
task generate: :environment do
generator = Antlr4Native::Generator.new(
grammar_files: ["Python3Lexer.g4", "Python3Parser.g4"],
output_dir: "ext",
parser_root_method: "file_input",
)
generator.generate
end
desc "Compile the MySQL parser"
task compile: :environment do
Dir.chdir("ext/python3_parser") do
load "extconf.rb"
exec "make -j #{Etc.nprocessors}"
end
end
end
namespace :mysql do
desc "Generate the MySQL parser"
task generate: :environment do
generator = Antlr4Native::Generator.new(
grammar_files: ["MySqlLexer.g4", "MySqlParser.g4"],
output_dir: "ext",
parser_root_method: "root",
)
generator.generate
end
desc "Compile the MySQL parser"
task compile: :environment do
Dir.chdir("ext/my_sql_parser") do
load "extconf.rb"
exec "make -j #{Etc.nprocessors}"
end
end
end
end
# frozen_string_literal: true
# Source: https://github.com/camertron/antlr4-native-rb/blob/174e01670cff38ac7a63172eefab1b0cdf6f6f00/spec/lua-parser-rb/ext/lua_parser/extconf.rb
# rubocop:disable
require "mkmf-rice"
extension_name = File.basename(__dir__)
dir_config(extension_name)
have_library("stdc++")
$CFLAGS << " -std=c++14"
if enable_config("static")
$defs.push("-DANTLR4CPP_STATIC") if $defs.exclude?("-DANTLR4CPP_STATIC")
end
include_paths = [
".",
"antlrgen",
"../lib/antlr4-cpp-runtime",
"../lib/antlr4-cpp-runtime/atn",
"../lib/antlr4-cpp-runtime/dfa",
"../lib/antlr4-cpp-runtime/misc",
"../lib/antlr4-cpp-runtime/support",
"../lib/antlr4-cpp-runtime/tree",
"../lib/antlr4-cpp-runtime/tree/pattern",
"../lib/antlr4-cpp-runtime/tree/xpath",
]
$srcs = []
include_paths.each do |include_path|
$INCFLAGS << " -I#{include_path}"
$VPATH << include_path
Dir.glob("#{include_path}/*.cpp").each do |path|
$srcs << path
end
end
create_makefile(extension_name)
Running via Spring preloader in process 1831
checking for rice/rice.hpp in /Users/seb/.gem/ruby/3.2.2/gems/rice-4.3.1/include... yes
checking for -lc++... yes
checking for -lstdc++... yes
creating Makefile
compiling my_sql_parser.cpp
compiling ../lib/antlr4-cpp-runtime/atn/PrecedencePredicateTransition.cpp
compiling ../lib/antlr4-cpp-runtime/atn/PredicateEvalInfo.cpp
compiling ../lib/antlr4-cpp-runtime/atn/PredicateTransition.cpp
compiling ../lib/antlr4-cpp-runtime/atn/PredictionContext.cpp
compiling ../lib/antlr4-cpp-runtime/atn/PredictionContextCache.cpp
compiling ../lib/antlr4-cpp-runtime/atn/PredictionContextMergeCache.cpp
compiling ../lib/antlr4-cpp-runtime/atn/PredictionMode.cpp
compiling ../lib/antlr4-cpp-runtime/atn/ProfilingATNSimulator.cpp
compiling ../lib/antlr4-cpp-runtime/atn/RangeTransition.cpp
compiling ../lib/antlr4-cpp-runtime/atn/RuleTransition.cpp
compiling ../lib/antlr4-cpp-runtime/atn/SemanticContext.cpp
compiling ../lib/antlr4-cpp-runtime/atn/SetTransition.cpp
compiling ../lib/antlr4-cpp-runtime/atn/SingletonPredictionContext.cpp
compiling ../lib/antlr4-cpp-runtime/atn/StarLoopbackState.cpp
compiling ../lib/antlr4-cpp-runtime/atn/Transition.cpp
compiling ../lib/antlr4-cpp-runtime/atn/TransitionType.cpp
compiling ../lib/antlr4-cpp-runtime/atn/WildcardTransition.cpp
compiling ../lib/antlr4-cpp-runtime/dfa/DFA.cpp
compiling ../lib/antlr4-cpp-runtime/dfa/DFASerializer.cpp
compiling ../lib/antlr4-cpp-runtime/dfa/DFAState.cpp
compiling ../lib/antlr4-cpp-runtime/dfa/LexerDFASerializer.cpp
compiling ../lib/antlr4-cpp-runtime/misc/InterpreterDataReader.cpp
compiling ../lib/antlr4-cpp-runtime/misc/Interval.cpp
compiling ../lib/antlr4-cpp-runtime/misc/IntervalSet.cpp
compiling ../lib/antlr4-cpp-runtime/misc/MurmurHash.cpp
compiling ../lib/antlr4-cpp-runtime/misc/Predicate.cpp
compiling ../lib/antlr4-cpp-runtime/support/Any.cpp
my_sql_parser.cpp:41070:12: error: expected ')'
return Qnil;
^
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:60:25: note: expanded from macro 'Qnil'
#define Qnil RUBY_Qnil /**< @old{RUBY_Qnil} */
^
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:358:40: note: expanded from macro 'RUBY_Qnil'
#define RUBY_Qnil RBIMPL_CAST((VALUE)RUBY_Qnil)
^
my_sql_parser.cpp:41070:12: note: to match this '('
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:60:25: note: expanded from macro 'Qnil'
#define Qnil RUBY_Qnil /**< @old{RUBY_Qnil} */
^
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:358:21: note: expanded from macro 'RUBY_Qnil'
#define RUBY_Qnil RBIMPL_CAST((VALUE)RUBY_Qnil)
^
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/cast.h:43:5: note: expanded from macro 'RBIMPL_CAST'
(expr) \
^
my_sql_parser.cpp:41070:12: error: reference to non-static member function must be called; did you mean to call it with no arguments?
return Qnil;
^~~~
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:60:25: note: expanded from macro 'Qnil'
#define Qnil RUBY_Qnil /**< @old{RUBY_Qnil} */
^~~~~~~~~
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:358:33: note: expanded from macro 'RUBY_Qnil'
#define RUBY_Qnil RBIMPL_CAST((VALUE)RUBY_Qnil)
^~~~~~~
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/cast.h:43:6: note: expanded from macro 'RBIMPL_CAST'
(expr) \
^~~~
my_sql_parser.cpp:41076:12: error: expected ')'
return Qnil;
^
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:60:25: note: expanded from macro 'Qnil'
#define Qnil RUBY_Qnil /**< @old{RUBY_Qnil} */
^
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:358:40: note: expanded from macro 'RUBY_Qnil'
#define RUBY_Qnil RBIMPL_CAST((VALUE)RUBY_Qnil)
^
my_sql_parser.cpp:41076:12: note: to match this '('
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:60:25: note: expanded from macro 'Qnil'
#define Qnil RUBY_Qnil /**< @old{RUBY_Qnil} */
^
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:358:21: note: expanded from macro 'RUBY_Qnil'
#define RUBY_Qnil RBIMPL_CAST((VALUE)RUBY_Qnil)
^
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/cast.h:43:5: note: expanded from macro 'RBIMPL_CAST'
(expr) \
^
my_sql_parser.cpp:41076:12: error: reference to non-static member function must be called; did you mean to call it with no arguments?
return Qnil;
^~~~
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:60:25: note: expanded from macro 'Qnil'
#define Qnil RUBY_Qnil /**< @old{RUBY_Qnil} */
^~~~~~~~~
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:358:33: note: expanded from macro 'RUBY_Qnil'
#define RUBY_Qnil RBIMPL_CAST((VALUE)RUBY_Qnil)
^~~~~~~
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/cast.h:43:6: note: expanded from macro 'RBIMPL_CAST'
(expr) \
^~~~
my_sql_parser.cpp:41090:12: error: expected ')'
return Qnil;
^
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:60:25: note: expanded from macro 'Qnil'
#define Qnil RUBY_Qnil /**< @old{RUBY_Qnil} */
^
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:358:40: note: expanded from macro 'RUBY_Qnil'
#define RUBY_Qnil RBIMPL_CAST((VALUE)RUBY_Qnil)
^
my_sql_parser.cpp:41090:12: note: to match this '('
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:60:25: note: expanded from macro 'Qnil'
#define Qnil RUBY_Qnil /**< @old{RUBY_Qnil} */
^
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:358:21: note: expanded from macro 'RUBY_Qnil'
#define RUBY_Qnil RBIMPL_CAST((VALUE)RUBY_Qnil)
^
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/cast.h:43:5: note: expanded from macro 'RBIMPL_CAST'
(expr) \
^
my_sql_parser.cpp:41090:12: error: reference to non-static member function must be called; did you mean to call it with no arguments?
return Qnil;
^~~~
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:60:25: note: expanded from macro 'Qnil'
#define Qnil RUBY_Qnil /**< @old{RUBY_Qnil} */
^~~~~~~~~
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:358:33: note: expanded from macro 'RUBY_Qnil'
#define RUBY_Qnil RBIMPL_CAST((VALUE)RUBY_Qnil)
^~~~~~~
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/cast.h:43:6: note: expanded from macro 'RBIMPL_CAST'
(expr) \
^~~~
my_sql_parser.cpp:41096:12: error: expected ')'
return Qnil;
^
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:60:25: note: expanded from macro 'Qnil'
#define Qnil RUBY_Qnil /**< @old{RUBY_Qnil} */
^
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:358:40: note: expanded from macro 'RUBY_Qnil'
#define RUBY_Qnil RBIMPL_CAST((VALUE)RUBY_Qnil)
^
my_sql_parser.cpp:41096:12: note: to match this '('
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:60:25: note: expanded from macro 'Qnil'
#define Qnil RUBY_Qnil /**< @old{RUBY_Qnil} */
^
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:358:21: note: expanded from macro 'RUBY_Qnil'
#define RUBY_Qnil RBIMPL_CAST((VALUE)RUBY_Qnil)
^
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/cast.h:43:5: note: expanded from macro 'RBIMPL_CAST'
(expr) \
^
my_sql_parser.cpp:41096:12: error: reference to non-static member function must be called; did you mean to call it with no arguments?
return Qnil;
^~~~
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:60:25: note: expanded from macro 'Qnil'
#define Qnil RUBY_Qnil /**< @old{RUBY_Qnil} */
^~~~~~~~~
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:358:33: note: expanded from macro 'RUBY_Qnil'
#define RUBY_Qnil RBIMPL_CAST((VALUE)RUBY_Qnil)
^~~~~~~
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/cast.h:43:6: note: expanded from macro 'RBIMPL_CAST'
(expr) \
^~~~
my_sql_parser.cpp:41110:12: error: expected ')'
return Qnil;
^
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:60:25: note: expanded from macro 'Qnil'
#define Qnil RUBY_Qnil /**< @old{RUBY_Qnil} */
^
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:358:40: note: expanded from macro 'RUBY_Qnil'
#define RUBY_Qnil RBIMPL_CAST((VALUE)RUBY_Qnil)
^
my_sql_parser.cpp:41110:12: note: to match this '('
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:60:25: note: expanded from macro 'Qnil'
#define Qnil RUBY_Qnil /**< @old{RUBY_Qnil} */
^
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:358:21: note: expanded from macro 'RUBY_Qnil'
#define RUBY_Qnil RBIMPL_CAST((VALUE)RUBY_Qnil)
^
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/cast.h:43:5: note: expanded from macro 'RBIMPL_CAST'
(expr) \
^
my_sql_parser.cpp:41110:12: error: reference to non-static member function must be called; did you mean to call it with no arguments?
return Qnil;
^~~~
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:60:25: note: expanded from macro 'Qnil'
#define Qnil RUBY_Qnil /**< @old{RUBY_Qnil} */
^~~~~~~~~
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:358:33: note: expanded from macro 'RUBY_Qnil'
#define RUBY_Qnil RBIMPL_CAST((VALUE)RUBY_Qnil)
^~~~~~~
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/cast.h:43:6: note: expanded from macro 'RBIMPL_CAST'
(expr) \
^~~~
my_sql_parser.cpp:41116:12: error: expected ')'
return Qnil;
^
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:60:25: note: expanded from macro 'Qnil'
#define Qnil RUBY_Qnil /**< @old{RUBY_Qnil} */
^
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:358:40: note: expanded from macro 'RUBY_Qnil'
#define RUBY_Qnil RBIMPL_CAST((VALUE)RUBY_Qnil)
^
my_sql_parser.cpp:41116:12: note: to match this '('
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:60:25: note: expanded from macro 'Qnil'
#define Qnil RUBY_Qnil /**< @old{RUBY_Qnil} */
^
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:358:21: note: expanded from macro 'RUBY_Qnil'
#define RUBY_Qnil RBIMPL_CAST((VALUE)RUBY_Qnil)
^
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/cast.h:43:5: note: expanded from macro 'RBIMPL_CAST'
(expr) \
^
my_sql_parser.cpp:41116:12: error: reference to non-static member function must be called; did you mean to call it with no arguments?
return Qnil;
^~~~
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:60:25: note: expanded from macro 'Qnil'
#define Qnil RUBY_Qnil /**< @old{RUBY_Qnil} */
^~~~~~~~~
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:358:33: note: expanded from macro 'RUBY_Qnil'
#define RUBY_Qnil RBIMPL_CAST((VALUE)RUBY_Qnil)
^~~~~~~
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/cast.h:43:6: note: expanded from macro 'RBIMPL_CAST'
(expr) \
^~~~
my_sql_parser.cpp:41125:12: error: expected ')'
return Qnil;
^
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:60:25: note: expanded from macro 'Qnil'
#define Qnil RUBY_Qnil /**< @old{RUBY_Qnil} */
^
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:358:40: note: expanded from macro 'RUBY_Qnil'
#define RUBY_Qnil RBIMPL_CAST((VALUE)RUBY_Qnil)
^
my_sql_parser.cpp:41125:12: note: to match this '('
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:60:25: note: expanded from macro 'Qnil'
#define Qnil RUBY_Qnil /**< @old{RUBY_Qnil} */
^
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:358:21: note: expanded from macro 'RUBY_Qnil'
#define RUBY_Qnil RBIMPL_CAST((VALUE)RUBY_Qnil)
^
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/cast.h:43:5: note: expanded from macro 'RBIMPL_CAST'
(expr) \
^
my_sql_parser.cpp:41125:12: error: reference to non-static member function must be called; did you mean to call it with no arguments?
return Qnil;
^~~~
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:60:25: note: expanded from macro 'Qnil'
#define Qnil RUBY_Qnil /**< @old{RUBY_Qnil} */
^~~~~~~~~
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:358:33: note: expanded from macro 'RUBY_Qnil'
#define RUBY_Qnil RBIMPL_CAST((VALUE)RUBY_Qnil)
^~~~~~~
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/cast.h:43:6: note: expanded from macro 'RBIMPL_CAST'
(expr) \
^~~~
my_sql_parser.cpp:41131:12: error: expected ')'
return Qnil;
^
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:60:25: note: expanded from macro 'Qnil'
#define Qnil RUBY_Qnil /**< @old{RUBY_Qnil} */
^
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:358:40: note: expanded from macro 'RUBY_Qnil'
#define RUBY_Qnil RBIMPL_CAST((VALUE)RUBY_Qnil)
^
my_sql_parser.cpp:41131:12: note: to match this '('
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:60:25: note: expanded from macro 'Qnil'
#define Qnil RUBY_Qnil /**< @old{RUBY_Qnil} */
^
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:358:21: note: expanded from macro 'RUBY_Qnil'
#define RUBY_Qnil RBIMPL_CAST((VALUE)RUBY_Qnil)
^
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/cast.h:43:5: note: expanded from macro 'RBIMPL_CAST'
(expr) \
^
my_sql_parser.cpp:41131:12: error: reference to non-static member function must be called; did you mean to call it with no arguments?
return Qnil;
^~~~
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:60:25: note: expanded from macro 'Qnil'
#define Qnil RUBY_Qnil /**< @old{RUBY_Qnil} */
^~~~~~~~~
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:358:33: note: expanded from macro 'RUBY_Qnil'
#define RUBY_Qnil RBIMPL_CAST((VALUE)RUBY_Qnil)
^~~~~~~
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/cast.h:43:6: note: expanded from macro 'RBIMPL_CAST'
(expr) \
^~~~
my_sql_parser.cpp:41140:12: error: expected ')'
return Qnil;
^
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:60:25: note: expanded from macro 'Qnil'
#define Qnil RUBY_Qnil /**< @old{RUBY_Qnil} */
^
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:358:40: note: expanded from macro 'RUBY_Qnil'
#define RUBY_Qnil RBIMPL_CAST((VALUE)RUBY_Qnil)
^
my_sql_parser.cpp:41140:12: note: to match this '('
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:60:25: note: expanded from macro 'Qnil'
#define Qnil RUBY_Qnil /**< @old{RUBY_Qnil} */
^
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:358:21: note: expanded from macro 'RUBY_Qnil'
#define RUBY_Qnil RBIMPL_CAST((VALUE)RUBY_Qnil)
^
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/cast.h:43:5: note: expanded from macro 'RBIMPL_CAST'
(expr) \
^
my_sql_parser.cpp:41140:12: error: reference to non-static member function must be called; did you mean to call it with no arguments?
return Qnil;
^~~~
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:60:25: note: expanded from macro 'Qnil'
#define Qnil RUBY_Qnil /**< @old{RUBY_Qnil} */
^~~~~~~~~
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:358:33: note: expanded from macro 'RUBY_Qnil'
#define RUBY_Qnil RBIMPL_CAST((VALUE)RUBY_Qnil)
^~~~~~~
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/cast.h:43:6: note: expanded from macro 'RBIMPL_CAST'
(expr) \
^~~~
my_sql_parser.cpp:41146:12: error: expected ')'
return Qnil;
^
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:60:25: note: expanded from macro 'Qnil'
#define Qnil RUBY_Qnil /**< @old{RUBY_Qnil} */
^
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:358:40: note: expanded from macro 'RUBY_Qnil'
#define RUBY_Qnil RBIMPL_CAST((VALUE)RUBY_Qnil)
^
my_sql_parser.cpp:41146:12: note: to match this '('
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:60:25: note: expanded from macro 'Qnil'
#define Qnil RUBY_Qnil /**< @old{RUBY_Qnil} */
^
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/special_consts.h:358:21: note: expanded from macro 'RUBY_Qnil'
#define RUBY_Qnil RBIMPL_CAST((VALUE)RUBY_Qnil)
^
/opt/rubies/3.2.2/include/ruby-3.2.0/ruby/internal/cast.h:43:5: note: expanded from macro 'RBIMPL_CAST'
(expr) \
^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
compiling ../lib/antlr4-cpp-runtime/support/Arrays.cpp
compiling ../lib/antlr4-cpp-runtime/support/CPPUtils.cpp
compiling ../lib/antlr4-cpp-runtime/support/StringUtils.cpp
compiling ../lib/antlr4-cpp-runtime/support/Utf8.cpp
../lib/antlr4-cpp-runtime/misc/IntervalSet.cpp:40:16: warning: unqualified call to 'std::move' [-Wunqualified-std-cast-call]
_intervals = move(other._intervals);
^
std::
compiling ../lib/antlr4-cpp-runtime/tree/ErrorNodeImpl.cpp
compiling ../lib/antlr4-cpp-runtime/tree/IterativeParseTreeWalker.cpp
compiling ../lib/antlr4-cpp-runtime/tree/ParseTree.cpp
compiling ../lib/antlr4-cpp-runtime/tree/ParseTreeListener.cpp
compiling ../lib/antlr4-cpp-runtime/tree/ParseTreeVisitor.cpp
1 warning generated.
compiling ../lib/antlr4-cpp-runtime/tree/ParseTreeWalker.cpp
20 errors generated.
make: *** [my_sql_parser.o] Error 1
make: *** Waiting for unfinished jobs....
This file has been truncated, but you can view the full file.
#include <iostream>
#include <antlr4-runtime.h>
#include "antlrgen/MySqlParser.h"
#include "antlrgen/MySqlParserBaseVisitor.h"
#include "antlrgen/MySqlLexer.h"
#include <rice/rice.hpp>
#include <rice/stl.hpp>
#ifdef _WIN32
#undef OPTIONAL
#undef IN
#undef OUT
#endif
#undef FALSE
#undef TRUE
#undef TYPE
using namespace std;
using namespace Rice;
using namespace antlr4;
Class rb_cRootContext;
Class rb_cSqlStatementsContext;
Class rb_cSqlStatementContext;
Class rb_cEmptyStatement_Context;
Class rb_cDdlStatementContext;
Class rb_cDmlStatementContext;
Class rb_cTransactionStatementContext;
Class rb_cReplicationStatementContext;
Class rb_cPreparedStatementContext;
Class rb_cAdministrationStatementContext;
Class rb_cUtilityStatementContext;
Class rb_cCreateDatabaseContext;
Class rb_cCreateEventContext;
Class rb_cCreateIndexContext;
Class rb_cCreateLogfileGroupContext;
Class rb_cCreateProcedureContext;
Class rb_cCreateFunctionContext;
Class rb_cCreateServerContext;
Class rb_cCreateTableContext;
Class rb_cCreateTablespaceInnodbContext;
Class rb_cCreateTablespaceNdbContext;
Class rb_cCreateTriggerContext;
Class rb_cCreateViewContext;
Class rb_cCreateRoleContext;
Class rb_cAlterDatabaseContext;
Class rb_cAlterEventContext;
Class rb_cAlterFunctionContext;
Class rb_cAlterInstanceContext;
Class rb_cAlterLogfileGroupContext;
Class rb_cAlterProcedureContext;
Class rb_cAlterServerContext;
Class rb_cAlterTableContext;
Class rb_cAlterTablespaceContext;
Class rb_cAlterViewContext;
Class rb_cDropDatabaseContext;
Class rb_cDropEventContext;
Class rb_cDropIndexContext;
Class rb_cDropLogfileGroupContext;
Class rb_cDropProcedureContext;
Class rb_cDropFunctionContext;
Class rb_cDropServerContext;
Class rb_cDropTableContext;
Class rb_cDropTablespaceContext;
Class rb_cDropTriggerContext;
Class rb_cDropViewContext;
Class rb_cDropRoleContext;
Class rb_cSetRoleContext;
Class rb_cRenameTableContext;
Class rb_cTruncateTableContext;
Class rb_cSelectStatementContext;
Class rb_cInsertStatementContext;
Class rb_cUpdateStatementContext;
Class rb_cDeleteStatementContext;
Class rb_cReplaceStatementContext;
Class rb_cCallStatementContext;
Class rb_cLoadDataStatementContext;
Class rb_cLoadXmlStatementContext;
Class rb_cDoStatementContext;
Class rb_cHandlerStatementContext;
Class rb_cValuesStatementContext;
Class rb_cWithStatementContext;
Class rb_cTableStatementContext;
Class rb_cStartTransactionContext;
Class rb_cBeginWorkContext;
Class rb_cCommitWorkContext;
Class rb_cRollbackWorkContext;
Class rb_cSavepointStatementContext;
Class rb_cRollbackStatementContext;
Class rb_cReleaseStatementContext;
Class rb_cLockTablesContext;
Class rb_cUnlockTablesContext;
Class rb_cChangeMasterContext;
Class rb_cChangeReplicationFilterContext;
Class rb_cPurgeBinaryLogsContext;
Class rb_cResetMasterContext;
Class rb_cResetSlaveContext;
Class rb_cStartSlaveContext;
Class rb_cStopSlaveContext;
Class rb_cStartGroupReplicationContext;
Class rb_cStopGroupReplicationContext;
Class rb_cXaStartTransactionContext;
Class rb_cXaEndTransactionContext;
Class rb_cXaPrepareStatementContext;
Class rb_cXaCommitWorkContext;
Class rb_cXaRollbackWorkContext;
Class rb_cXaRecoverWorkContext;
Class rb_cPrepareStatementContext;
Class rb_cExecuteStatementContext;
Class rb_cDeallocatePrepareContext;
Class rb_cCompoundStatementContext;
Class rb_cBlockStatementContext;
Class rb_cCaseStatementContext;
Class rb_cIfStatementContext;
Class rb_cLeaveStatementContext;
Class rb_cLoopStatementContext;
Class rb_cRepeatStatementContext;
Class rb_cWhileStatementContext;
Class rb_cIterateStatementContext;
Class rb_cReturnStatementContext;
Class rb_cCursorStatementContext;
Class rb_cAlterUserContext;
Class rb_cCreateUserContext;
Class rb_cDropUserContext;
Class rb_cGrantStatementContext;
Class rb_cGrantProxyContext;
Class rb_cRenameUserContext;
Class rb_cRevokeStatementContext;
Class rb_cRevokeProxyContext;
Class rb_cAnalyzeTableContext;
Class rb_cCheckTableContext;
Class rb_cChecksumTableContext;
Class rb_cOptimizeTableContext;
Class rb_cRepairTableContext;
Class rb_cCreateUdfunctionContext;
Class rb_cInstallPluginContext;
Class rb_cUninstallPluginContext;
Class rb_cSetStatementContext;
Class rb_cShowStatementContext;
Class rb_cBinlogStatementContext;
Class rb_cCacheIndexStatementContext;
Class rb_cFlushStatementContext;
Class rb_cKillStatementContext;
Class rb_cLoadIndexIntoCacheContext;
Class rb_cResetStatementContext;
Class rb_cShutdownStatementContext;
Class rb_cSimpleDescribeStatementContext;
Class rb_cFullDescribeStatementContext;
Class rb_cHelpStatementContext;
Class rb_cUseStatementContext;
Class rb_cSignalStatementContext;
Class rb_cResignalStatementContext;
Class rb_cDiagnosticsStatementContext;
Class rb_cUidContext;
Class rb_cIfNotExistsContext;
Class rb_cCreateDatabaseOptionContext;
Class rb_cFullIdContext;
Class rb_cScheduleExpressionContext;
Class rb_cRoutineBodyContext;
Class rb_cOwnerStatementContext;
Class rb_cEnableTypeContext;
Class rb_cTableNameContext;
Class rb_cIndexColumnNamesContext;
Class rb_cIndexTypeContext;
Class rb_cIndexOptionContext;
Class rb_cEngineNameContext;
Class rb_cFileSizeLiteralContext;
Class rb_cProcedureParameterContext;
Class rb_cRoutineOptionContext;
Class rb_cDataTypeContext;
Class rb_cFunctionParameterContext;
Class rb_cRoleNameContext;
Class rb_cServerOptionContext;
Class rb_cCopyCreateTableContext;
Class rb_cColumnCreateTableContext;
Class rb_cCreateDefinitionsContext;
Class rb_cTableOptionContext;
Class rb_cPartitionDefinitionsContext;
Class rb_cQueryCreateTableContext;
Class rb_cWithClauseContext;
Class rb_cCommonTableExpressionsContext;
Class rb_cCteNameContext;
Class rb_cCteColumnNameContext;
Class rb_cOrReplaceContext;
Class rb_cUidListContext;
Class rb_cCharSetContext;
Class rb_cCharsetNameContext;
Class rb_cCollationNameContext;
Class rb_cCurrentUserExpressionContext;
Class rb_cUserNameContext;
Class rb_cPreciseScheduleContext;
Class rb_cTimestampValueContext;
Class rb_cIntervalExprContext;
Class rb_cIntervalScheduleContext;
Class rb_cIntervalTypeContext;
Class rb_cDecimalLiteralContext;
Class rb_cExpressionContext;
Class rb_cStringLiteralContext;
Class rb_cIntervalTypeBaseContext;
Class rb_cRoutineBehaviorContext;
Class rb_cRoutineLanguageContext;
Class rb_cRoutineCommentContext;
Class rb_cRoutineSecurityContext;
Class rb_cRoutineDataContext;
Class rb_cCreateDefinitionContext;
Class rb_cFullColumnNameContext;
Class rb_cColumnDeclarationContext;
Class rb_cColumnDefinitionContext;
Class rb_cTableConstraintContext;
Class rb_cConstraintDeclarationContext;
Class rb_cIndexColumnDefinitionContext;
Class rb_cIndexDeclarationContext;
Class rb_cColumnConstraintContext;
Class rb_cStorageColumnConstraintContext;
Class rb_cVisibilityColumnConstraintContext;
Class rb_cAutoIncrementColumnConstraintContext;
Class rb_cCurrentTimestampContext;
Class rb_cCommentColumnConstraintContext;
Class rb_cUniqueKeyColumnConstraintContext;
Class rb_cSerialDefaultColumnConstraintContext;
Class rb_cGeneratedColumnConstraintContext;
Class rb_cFormatColumnConstraintContext;
Class rb_cCollateColumnConstraintContext;
Class rb_cPrimaryKeyColumnConstraintContext;
Class rb_cCheckColumnConstraintContext;
Class rb_cNullNotnullContext;
Class rb_cNullColumnConstraintContext;
Class rb_cDefaultColumnConstraintContext;
Class rb_cDefaultValueContext;
Class rb_cReferenceDefinitionContext;
Class rb_cReferenceColumnConstraintContext;
Class rb_cInvisibilityColumnConstraintContext;
Class rb_cUniqueKeyTableConstraintContext;
Class rb_cCheckTableConstraintContext;
Class rb_cPrimaryKeyTableConstraintContext;
Class rb_cForeignKeyTableConstraintContext;
Class rb_cReferenceActionContext;
Class rb_cReferenceControlTypeContext;
Class rb_cSpecialIndexDeclarationContext;
Class rb_cSimpleIndexDeclarationContext;
Class rb_cTableOptionEngineContext;
Class rb_cTableOptionMaxRowsContext;
Class rb_cTableOptionCollateContext;
Class rb_cTableOptionPersistentContext;
Class rb_cTableOptionTablespaceContext;
Class rb_cTablespaceStorageContext;
Class rb_cTableOptionAutoextendSizeContext;
Class rb_cTableOptionPageCompressedContext;
Class rb_cTableOptionStartTransactionContext;
Class rb_cTableOptionPackKeysContext;
Class rb_cTableOptionPasswordContext;
Class rb_cTableOptionUnionContext;
Class rb_cTablesContext;
Class rb_cTableOptionSamplePageContext;
Class rb_cTableOptionCharsetContext;
Class rb_cTableOptionIndexDirectoryContext;
Class rb_cTableOptionTableTypeContext;
Class rb_cTableTypeContext;
Class rb_cTableOptionKeyBlockSizeContext;
Class rb_cTableOptionEncryptionContext;
Class rb_cTableOptionDataDirectoryContext;
Class rb_cTableOptionRecalculationContext;
Class rb_cTableOptionAutoIncrementContext;
Class rb_cTableOptionEncryptionKeyIdContext;
Class rb_cTableOptionChecksumContext;
Class rb_cTableOptionDelayContext;
Class rb_cTableOptionConnectionContext;
Class rb_cTableOptionTransactionalContext;
Class rb_cTableOptionPageCompressionLevelContext;
Class rb_cTableOptionSecondaryEngineAttributeContext;
Class rb_cTableOptionCommentContext;
Class rb_cTableOptionAverageContext;
Class rb_cTableOptionRowFormatContext;
Class rb_cTableOptionCompressionContext;
Class rb_cTableOptionInsertMethodContext;
Class rb_cTableOptionEngineAttributeContext;
Class rb_cTableOptionMinRowsContext;
Class rb_cPartitionFunctionDefinitionContext;
Class rb_cSubpartitionFunctionDefinitionContext;
Class rb_cPartitionDefinitionContext;
Class rb_cPartitionFunctionKeyContext;
Class rb_cPartitionFunctionHashContext;
Class rb_cPartitionFunctionListContext;
Class rb_cPartitionFunctionRangeContext;
Class rb_cSubPartitionFunctionHashContext;
Class rb_cSubPartitionFunctionKeyContext;
Class rb_cPartitionComparisonContext;
Class rb_cPartitionDefinerAtomContext;
Class rb_cPartitionOptionContext;
Class rb_cSubpartitionDefinitionContext;
Class rb_cPartitionListAtomContext;
Class rb_cPartitionListVectorContext;
Class rb_cPartitionDefinerVectorContext;
Class rb_cPartitionSimpleContext;
Class rb_cConstantContext;
Class rb_cPartitionOptionCommentContext;
Class rb_cPartitionOptionNodeGroupContext;
Class rb_cPartitionOptionIndexDirectoryContext;
Class rb_cPartitionOptionMaxRowsContext;
Class rb_cPartitionOptionTablespaceContext;
Class rb_cPartitionOptionEngineContext;
Class rb_cPartitionOptionMinRowsContext;
Class rb_cPartitionOptionDataDirectoryContext;
Class rb_cAlterUpgradeNameContext;
Class rb_cAlterSimpleDatabaseContext;
Class rb_cWaitNowaitClauseContext;
Class rb_cAlterSpecificationContext;
Class rb_cAlterByAlterColumnDefaultContext;
Class rb_cAlterByDisableKeysContext;
Class rb_cAlterByDefaultCharsetContext;
Class rb_cAlterByRenameColumnContext;
Class rb_cAlterByConvertCharsetContext;
Class rb_cAlterByAddForeignKeyContext;
Class rb_cAlterByRenameIndexContext;
Class rb_cAlterByRenameContext;
Class rb_cAlterByImportTablespaceContext;
Class rb_cAlterByAddDefinitionsContext;
Class rb_cAlterByAlterCheckTableConstraintContext;
Class rb_cAlterByDropConstraintCheckContext;
Class rb_cAlterByAddColumnsContext;
Class rb_cAlterByAlterIndexVisibilityContext;
Class rb_cAlterByDropForeignKeyContext;
Class rb_cAlterByAddCheckTableConstraintContext;
Class rb_cAlterPartitionSpecificationContext;
Class rb_cAlterPartitionContext;
Class rb_cAlterByAddIndexContext;
Class rb_cAlterByDropColumnContext;
Class rb_cAlterByChangeDefaultContext;
Class rb_cAlterByForceContext;
Class rb_cAlterByAddSpecialIndexContext;
Class rb_cAlterByModifyColumnContext;
Class rb_cAlterByTableOptionContext;
Class rb_cAlterByDropPrimaryKeyContext;
Class rb_cAlterByLockContext;
Class rb_cAlterByDiscardTablespaceContext;
Class rb_cAlterByValidateContext;
Class rb_cAlterByAddPrimaryKeyContext;
Class rb_cAlterByEnableKeysContext;
Class rb_cAlterBySetAlgorithmContext;
Class rb_cAlterByChangeColumnContext;
Class rb_cAlterByAddUniqueKeyContext;
Class rb_cAlterByDropIndexContext;
Class rb_cAlterByAddColumnContext;
Class rb_cAlterByOrderContext;
Class rb_cAlterByImportPartitionContext;
Class rb_cAlterByDropPartitionContext;
Class rb_cAlterByDiscardPartitionContext;
Class rb_cAlterByAddPartitionContext;
Class rb_cAlterByRemovePartitioningContext;
Class rb_cAlterByOptimizePartitionContext;
Class rb_cAlterByCheckPartitionContext;
Class rb_cAlterByCoalescePartitionContext;
Class rb_cAlterByReorganizePartitionContext;
Class rb_cAlterByAnalyzePartitionContext;
Class rb_cAlterByRebuildPartitionContext;
Class rb_cAlterByUpgradePartitioningContext;
Class rb_cAlterByTruncatePartitionContext;
Class rb_cAlterByRepairPartitionContext;
Class rb_cAlterByExchangePartitionContext;
Class rb_cIfExistsContext;
Class rb_cRoleOptionContext;
Class rb_cRenameTableClauseContext;
Class rb_cConstantsContext;
Class rb_cExpressionsContext;
Class rb_cSingleDeleteStatementContext;
Class rb_cMultipleDeleteStatementContext;
Class rb_cHandlerOpenStatementContext;
Class rb_cHandlerReadIndexStatementContext;
Class rb_cHandlerReadStatementContext;
Class rb_cHandlerCloseStatementContext;
Class rb_cInsertStatementValueContext;
Class rb_cUpdatedElementContext;
Class rb_cFullColumnNameListContext;
Class rb_cAssignmentFieldContext;
Class rb_cSelectFieldsIntoContext;
Class rb_cSelectLinesIntoContext;
Class rb_cQuerySpecificationNointoContext;
Class rb_cUnionSelectContext;
Class rb_cQueryExpressionNointoContext;
Class rb_cUnionStatementContext;
Class rb_cOrderByClauseContext;
Class rb_cLimitClauseContext;
Class rb_cLockClauseContext;
Class rb_cQuerySpecificationContext;
Class rb_cQueryExpressionContext;
Class rb_cUnionParenthesisSelectContext;
Class rb_cUnionParenthesisContext;
Class rb_cSimpleSelectContext;
Class rb_cParenthesisSelectContext;
Class rb_cWithLateralStatementContext;
Class rb_cLateralStatementContext;
Class rb_cSingleUpdateStatementContext;
Class rb_cMultipleUpdateStatementContext;
Class rb_cExpressionsWithDefaultsContext;
Class rb_cLimitClauseAtomContext;
Class rb_cTableSourcesContext;
Class rb_cComparisonOperatorContext;
Class rb_cOrderByExpressionContext;
Class rb_cTableSourceContext;
Class rb_cJsonTableContext;
Class rb_cTableJsonContext;
Class rb_cTableSourceNestedContext;
Class rb_cTableSourceItemContext;
Class rb_cJoinPartContext;
Class rb_cTableSourceBaseContext;
Class rb_cSubqueryTableItemContext;
Class rb_cAtomTableItemContext;
Class rb_cIndexHintContext;
Class rb_cTableSourcesItemContext;
Class rb_cIndexHintTypeContext;
Class rb_cInnerJoinContext;
Class rb_cJoinSpecContext;
Class rb_cNaturalJoinContext;
Class rb_cOuterJoinContext;
Class rb_cStraightJoinContext;
Class rb_cSelectElementsContext;
Class rb_cFromClauseContext;
Class rb_cSelectSpecContext;
Class rb_cSelectIntoExpressionContext;
Class rb_cGroupByClauseContext;
Class rb_cHavingClauseContext;
Class rb_cWindowClauseContext;
Class rb_cJsonColumnListContext;
Class rb_cJsonColumnContext;
Class rb_cJsonOnEmptyContext;
Class rb_cJsonOnErrorContext;
Class rb_cSelectElementContext;
Class rb_cSelectExpressionElementContext;
Class rb_cFunctionCallContext;
Class rb_cSelectFunctionElementContext;
Class rb_cSelectStarElementContext;
Class rb_cSelectColumnElementContext;
Class rb_cSelectIntoVariablesContext;
Class rb_cSelectIntoTextFileContext;
Class rb_cSelectIntoDumpFileContext;
Class rb_cGroupByItemContext;
Class rb_cWindowNameContext;
Class rb_cWindowSpecContext;
Class rb_cMysqlVariableContext;
Class rb_cSimpleIdContext;
Class rb_cTransactionModeContext;
Class rb_cLockTableElementContext;
Class rb_cSetAutocommitStatementContext;
Class rb_cSetTransactionStatementContext;
Class rb_cTransactionOptionContext;
Class rb_cLockActionContext;
Class rb_cTransactionLevelContext;
Class rb_cMasterOptionContext;
Class rb_cChannelOptionContext;
Class rb_cReplicationFilterContext;
Class rb_cThreadTypeContext;
Class rb_cUntilOptionContext;
Class rb_cConnectionOptionContext;
Class rb_cStringMasterOptionContext;
Class rb_cMasterStringOptionContext;
Class rb_cMasterRealOptionContext;
Class rb_cBoolMasterOptionContext;
Class rb_cMasterBoolOptionContext;
Class rb_cMasterUidListOptionContext;
Class rb_cDecimalMasterOptionContext;
Class rb_cMasterDecimalOptionContext;
Class rb_cWildIgnoreTableReplicationContext;
Class rb_cSimpleStringsContext;
Class rb_cDoTableReplicationContext;
Class rb_cIgnoreTableReplicationContext;
Class rb_cRewriteDbReplicationContext;
Class rb_cTablePairContext;
Class rb_cDoDbReplicationContext;
Class rb_cIgnoreDbReplicationContext;
Class rb_cWildDoTableReplicationContext;
Class rb_cGtidsUntilOptionContext;
Class rb_cGtuidSetContext;
Class rb_cSqlGapsUntilOptionContext;
Class rb_cMasterLogUntilOptionContext;
Class rb_cRelayLogUntilOptionContext;
Class rb_cPluginDirConnectionOptionContext;
Class rb_cUserConnectionOptionContext;
Class rb_cDefaultAuthConnectionOptionContext;
Class rb_cPasswordConnectionOptionContext;
Class rb_cUuidSetContext;
Class rb_cXidContext;
Class rb_cUserVariablesContext;
Class rb_cDeclareVariableContext;
Class rb_cDeclareConditionContext;
Class rb_cDeclareCursorContext;
Class rb_cDeclareHandlerContext;
Class rb_cProcedureSqlStatementContext;
Class rb_cCaseAlternativeContext;
Class rb_cElifAlternativeContext;
Class rb_cCloseCursorContext;
Class rb_cOpenCursorContext;
Class rb_cFetchCursorContext;
Class rb_cHandlerConditionValueContext;
Class rb_cHandlerConditionWarningContext;
Class rb_cHandlerConditionCodeContext;
Class rb_cHandlerConditionNotfoundContext;
Class rb_cHandlerConditionStateContext;
Class rb_cHandlerConditionExceptionContext;
Class rb_cHandlerConditionNameContext;
Class rb_cAlterUserMysqlV80Context;
Class rb_cUserAuthOptionContext;
Class rb_cUserPasswordOptionContext;
Class rb_cUserLockOptionContext;
Class rb_cTlsOptionContext;
Class rb_cUserResourceOptionContext;
Class rb_cAlterUserMysqlV56Context;
Class rb_cUserSpecificationContext;
Class rb_cCreateUserMysqlV56Context;
Class rb_cCreateUserMysqlV80Context;
Class rb_cPrivelegeClauseContext;
Class rb_cPrivilegeLevelContext;
Class rb_cRenameUserClauseContext;
Class rb_cDetailRevokeContext;
Class rb_cRoleRevokeContext;
Class rb_cShortRevokeContext;
Class rb_cSetPasswordStatementContext;
Class rb_cPasswordFunctionClauseContext;
Class rb_cSimpleAuthOptionContext;
Class rb_cModuleAuthOptionContext;
Class rb_cAuthenticationRuleContext;
Class rb_cRandomAuthOptionContext;
Class rb_cAuthOptionClauseContext;
Class rb_cStringAuthOptionContext;
Class rb_cHashAuthOptionContext;
Class rb_cAuthPluginContext;
Class rb_cPasswordModuleOptionContext;
Class rb_cModuleContext;
Class rb_cPrivilegeContext;
Class rb_cDefiniteSchemaPrivLevelContext;
Class rb_cDefiniteFullTablePrivLevel2Context;
Class rb_cDottedIdContext;
Class rb_cDefiniteFullTablePrivLevelContext;
Class rb_cGlobalPrivLevelContext;
Class rb_cDefiniteTablePrivLevelContext;
Class rb_cCurrentSchemaPriviLevelContext;
Class rb_cCheckTableOptionContext;
Class rb_cSetTransactionContext;
Class rb_cSetCharsetContext;
Class rb_cSetNamesContext;
Class rb_cSetPasswordContext;
Class rb_cSetAutocommitContext;
Class rb_cSetNewValueInsideTriggerContext;
Class rb_cSetVariableContext;
Class rb_cVariableClauseContext;
Class rb_cShowOpenTablesContext;
Class rb_cShowFilterContext;
Class rb_cShowGlobalInfoContext;
Class rb_cShowGlobalInfoClauseContext;
Class rb_cShowCreateFullIdObjectContext;
Class rb_cShowCreateUserContext;
Class rb_cShowErrorsContext;
Class rb_cShowCountErrorsContext;
Class rb_cShowObjectFilterContext;
Class rb_cShowCommonEntityContext;
Class rb_cShowCreateDbContext;
Class rb_cShowEngineContext;
Class rb_cShowSchemaFilterContext;
Class rb_cShowSchemaEntityContext;
Class rb_cShowIndexesContext;
Class rb_cShowLogEventsContext;
Class rb_cShowMasterLogsContext;
Class rb_cShowGrantsContext;
Class rb_cShowSlaveStatusContext;
Class rb_cShowRoutineContext;
Class rb_cShowProfileContext;
Class rb_cShowProfileTypeContext;
Class rb_cShowColumnsContext;
Class rb_cTableIndexesContext;
Class rb_cFlushOptionContext;
Class rb_cLoadedTableIndexesContext;
Class rb_cTableFlushOptionContext;
Class rb_cFlushTableOptionContext;
Class rb_cChannelFlushOptionContext;
Class rb_cSimpleFlushOptionContext;
Class rb_cDescribeObjectClauseContext;
Class rb_cSignalConditionInformationContext;
Class rb_cDiagnosticsConditionInformationNameContext;
Class rb_cDescribeStatementsContext;
Class rb_cDescribeConnectionContext;
Class rb_cIndexColumnNameContext;
Class rb_cSimpleUserNameContext;
Class rb_cKeywordsCanBeIdContext;
Class rb_cHostNameContext;
Class rb_cCharsetNameBaseContext;
Class rb_cEngineNameBaseContext;
Class rb_cXuidStringIdContext;
Class rb_cTransactionLevelBaseContext;
Class rb_cPrivilegesBaseContext;
Class rb_cDataTypeBaseContext;
Class rb_cScalarFunctionNameContext;
Class rb_cBooleanLiteralContext;
Class rb_cHexadecimalLiteralContext;
Class rb_cSpatialDataTypeContext;
Class rb_cLongVarbinaryDataTypeContext;
Class rb_cCollectionOptionsContext;
Class rb_cCollectionDataTypeContext;
Class rb_cNationalVaryingStringDataTypeContext;
Class rb_cLengthOneDimensionContext;
Class rb_cDimensionDataTypeContext;
Class rb_cLengthTwoDimensionContext;
Class rb_cLengthTwoOptionalDimensionContext;
Class rb_cStringDataTypeContext;
Class rb_cLongVarcharDataTypeContext;
Class rb_cNationalStringDataTypeContext;
Class rb_cSimpleDataTypeContext;
Class rb_cConvertedDataTypeContext;
Class rb_cExpressionOrDefaultContext;
Class rb_cUnaryOperatorContext;
Class rb_cSpecificFunctionContext;
Class rb_cSpecificFunctionCallContext;
Class rb_cPasswordFunctionCallContext;
Class rb_cUdfFunctionCallContext;
Class rb_cFunctionArgsContext;
Class rb_cNonAggregateWindowedFunctionContext;
Class rb_cNonAggregateFunctionCallContext;
Class rb_cAggregateWindowedFunctionContext;
Class rb_cAggregateFunctionCallContext;
Class rb_cScalarFunctionCallContext;
Class rb_cPositionFunctionCallContext;
Class rb_cTrimFunctionCallContext;
Class rb_cJsonValueFunctionCallContext;
Class rb_cCaseFunctionCallContext;
Class rb_cCaseFuncAlternativeContext;
Class rb_cFunctionArgContext;
Class rb_cExtractFunctionCallContext;
Class rb_cDataTypeFunctionCallContext;
Class rb_cValuesFunctionCallContext;
Class rb_cCaseExpressionFunctionCallContext;
Class rb_cCurrentUserContext;
Class rb_cSimpleFunctionCallContext;
Class rb_cCharFunctionCallContext;
Class rb_cWeightFunctionCallContext;
Class rb_cLevelsInWeightStringContext;
Class rb_cGetFormatFunctionCallContext;
Class rb_cSubstrFunctionCallContext;
Class rb_cLevelWeightRangeContext;
Class rb_cLevelWeightListContext;
Class rb_cLevelInWeightListElementContext;
Class rb_cOverClauseContext;
Class rb_cPartitionClauseContext;
Class rb_cFrameClauseContext;
Class rb_cFrameUnitsContext;
Class rb_cFrameExtentContext;
Class rb_cFrameRangeContext;
Class rb_cFrameBetweenContext;
Class rb_cFunctionNameBaseContext;
Class rb_cPredicateContext;
Class rb_cIsExpressionContext;
Class rb_cNotExpressionContext;
Class rb_cLogicalExpressionContext;
Class rb_cLogicalOperatorContext;
Class rb_cPredicateExpressionContext;
Class rb_cSoundsLikePredicateContext;
Class rb_cExpressionAtomContext;
Class rb_cExpressionAtomPredicateContext;
Class rb_cSubqueryComparisonPredicateContext;
Class rb_cJsonMemberOfPredicateContext;
Class rb_cBinaryComparisonPredicateContext;
Class rb_cInPredicateContext;
Class rb_cBetweenPredicateContext;
Class rb_cIsNullPredicateContext;
Class rb_cLikePredicateContext;
Class rb_cRegexpPredicateContext;
Class rb_cUnaryExpressionAtomContext;
Class rb_cCollateExpressionAtomContext;
Class rb_cVariableAssignExpressionAtomContext;
Class rb_cMysqlVariableExpressionAtomContext;
Class rb_cNestedExpressionAtomContext;
Class rb_cNestedRowExpressionAtomContext;
Class rb_cMultOperatorContext;
Class rb_cMathExpressionAtomContext;
Class rb_cAddOperatorContext;
Class rb_cExistsExpressionAtomContext;
Class rb_cIntervalExpressionAtomContext;
Class rb_cJsonOperatorContext;
Class rb_cJsonExpressionAtomContext;
Class rb_cSubqueryExpressionAtomContext;
Class rb_cConstantExpressionAtomContext;
Class rb_cFunctionCallExpressionAtomContext;
Class rb_cBinaryExpressionAtomContext;
Class rb_cFullColumnNameExpressionAtomContext;
Class rb_cBitOperatorContext;
Class rb_cBitExpressionAtomContext;
Class rb_cToken;
Class rb_cParser;
Class rb_cParseTree;
Class rb_cTerminalNode;
Class rb_cContextProxy;
namespace Rice::detail {
template <>
class To_Ruby<Token*> {
public:
VALUE convert(Token* const &x) {
if (!x) return Nil;
return Data_Object<Token>(x, false, rb_cToken);
}
};
template <>
class To_Ruby<tree::ParseTree*> {
public:
VALUE convert(tree::ParseTree* const &x) {
if (!x) return Nil;
return Data_Object<tree::ParseTree>(x, false, rb_cParseTree);
}
};
template <>
class To_Ruby<tree::TerminalNode*> {
public:
VALUE convert(tree::TerminalNode* const &x) {
if (!x) return Nil;
return Data_Object<tree::TerminalNode>(x, false, rb_cTerminalNode);
}
};
}
class ContextProxy {
public:
ContextProxy(tree::ParseTree* orig) {
this -> orig = orig;
}
tree::ParseTree* getOriginal() {
return orig;
}
std::string getText() {
return orig -> getText();
}
Object getStart() {
auto token = ((ParserRuleContext*) orig) -> getStart();
return detail::To_Ruby<Token*>().convert(token);
}
Object getStop() {
auto token = ((ParserRuleContext*) orig) -> getStop();
return detail::To_Ruby<Token*>().convert(token);
}
Array getChildren() {
Array children;
if (orig != nullptr) {
for (auto it = orig -> children.begin(); it != orig -> children.end(); it ++) {
Object parseTree = ContextProxy::wrapParseTree(*it);
if (parseTree != Nil) {
children.push(parseTree);
}
}
}
return children;
}
Object getParent() {
return orig == nullptr ? Nil : ContextProxy::wrapParseTree(orig -> parent);
}
size_t childCount() {
return orig == nullptr ? 0 : orig -> children.size();
}
bool doubleEquals(Object other) {
if (other.is_a(rb_cContextProxy)) {
return detail::From_Ruby<ContextProxy*>().convert(other) -> getOriginal() == getOriginal();
} else {
return false;
}
}
private:
static Object wrapParseTree(tree::ParseTree* node);
protected:
tree::ParseTree* orig = nullptr;
};
class TerminalNodeProxy : public ContextProxy {
public:
TerminalNodeProxy(tree::ParseTree* tree) : ContextProxy(tree) { }
};
class RootContextProxy : public ContextProxy {
public:
RootContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object sqlStatements();
Object EOF();
Object MINUS();
Object MINUSAt(size_t i);
};
class SqlStatementsContextProxy : public ContextProxy {
public:
SqlStatementsContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object sqlStatement();
Object sqlStatementAt(size_t i);
Object emptyStatement_();
Object emptyStatement_At(size_t i);
Object SEMI();
Object SEMIAt(size_t i);
Object MINUS();
Object MINUSAt(size_t i);
};
class SqlStatementContextProxy : public ContextProxy {
public:
SqlStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object ddlStatement();
Object dmlStatement();
Object transactionStatement();
Object replicationStatement();
Object preparedStatement();
Object administrationStatement();
Object utilityStatement();
};
class EmptyStatement_ContextProxy : public ContextProxy {
public:
EmptyStatement_ContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object SEMI();
};
class DdlStatementContextProxy : public ContextProxy {
public:
DdlStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object createDatabase();
Object createEvent();
Object createIndex();
Object createLogfileGroup();
Object createProcedure();
Object createFunction();
Object createServer();
Object createTable();
Object createTablespaceInnodb();
Object createTablespaceNdb();
Object createTrigger();
Object createView();
Object createRole();
Object alterDatabase();
Object alterEvent();
Object alterFunction();
Object alterInstance();
Object alterLogfileGroup();
Object alterProcedure();
Object alterServer();
Object alterTable();
Object alterTablespace();
Object alterView();
Object dropDatabase();
Object dropEvent();
Object dropIndex();
Object dropLogfileGroup();
Object dropProcedure();
Object dropFunction();
Object dropServer();
Object dropTable();
Object dropTablespace();
Object dropTrigger();
Object dropView();
Object dropRole();
Object setRole();
Object renameTable();
Object truncateTable();
};
class DmlStatementContextProxy : public ContextProxy {
public:
DmlStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object selectStatement();
Object insertStatement();
Object updateStatement();
Object deleteStatement();
Object replaceStatement();
Object callStatement();
Object loadDataStatement();
Object loadXmlStatement();
Object doStatement();
Object handlerStatement();
Object valuesStatement();
Object withStatement();
Object tableStatement();
};
class TransactionStatementContextProxy : public ContextProxy {
public:
TransactionStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object startTransaction();
Object beginWork();
Object commitWork();
Object rollbackWork();
Object savepointStatement();
Object rollbackStatement();
Object releaseStatement();
Object lockTables();
Object unlockTables();
};
class ReplicationStatementContextProxy : public ContextProxy {
public:
ReplicationStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object changeMaster();
Object changeReplicationFilter();
Object purgeBinaryLogs();
Object resetMaster();
Object resetSlave();
Object startSlave();
Object stopSlave();
Object startGroupReplication();
Object stopGroupReplication();
Object xaStartTransaction();
Object xaEndTransaction();
Object xaPrepareStatement();
Object xaCommitWork();
Object xaRollbackWork();
Object xaRecoverWork();
};
class PreparedStatementContextProxy : public ContextProxy {
public:
PreparedStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object prepareStatement();
Object executeStatement();
Object deallocatePrepare();
};
class AdministrationStatementContextProxy : public ContextProxy {
public:
AdministrationStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object alterUser();
Object createUser();
Object dropUser();
Object grantStatement();
Object grantProxy();
Object renameUser();
Object revokeStatement();
Object revokeProxy();
Object analyzeTable();
Object checkTable();
Object checksumTable();
Object optimizeTable();
Object repairTable();
Object createUdfunction();
Object installPlugin();
Object uninstallPlugin();
Object setStatement();
Object showStatement();
Object binlogStatement();
Object cacheIndexStatement();
Object flushStatement();
Object killStatement();
Object loadIndexIntoCache();
Object resetStatement();
Object shutdownStatement();
};
class UtilityStatementContextProxy : public ContextProxy {
public:
UtilityStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object simpleDescribeStatement();
Object fullDescribeStatement();
Object helpStatement();
Object useStatement();
Object signalStatement();
Object resignalStatement();
Object diagnosticsStatement();
};
class CreateDatabaseContextProxy : public ContextProxy {
public:
CreateDatabaseContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object uid();
Object ifNotExists();
Object createDatabaseOption();
Object createDatabaseOptionAt(size_t i);
Object CREATE();
Object DATABASE();
Object SCHEMA();
};
class CreateEventContextProxy : public ContextProxy {
public:
CreateEventContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object fullId();
Object scheduleExpression();
Object routineBody();
Object ownerStatement();
Object ifNotExists();
Object enableType();
Object CREATE();
Object EVENT();
Object ON();
Object ONAt(size_t i);
Object SCHEDULE();
Object DO();
Object COMPLETION();
Object PRESERVE();
Object COMMENT();
Object STRING_LITERAL();
Object NOT();
};
class CreateIndexContextProxy : public ContextProxy {
public:
CreateIndexContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object uid();
Object tableName();
Object indexColumnNames();
Object indexType();
Object indexOption();
Object indexOptionAt(size_t i);
Object CREATE();
Object INDEX();
Object ON();
Object ALGORITHM();
Object ALGORITHMAt(size_t i);
Object LOCK();
Object LOCKAt(size_t i);
Object ONLINE();
Object OFFLINE();
Object UNIQUE();
Object FULLTEXT();
Object SPATIAL();
Object DEFAULT();
Object DEFAULTAt(size_t i);
Object INPLACE();
Object INPLACEAt(size_t i);
Object COPY();
Object COPYAt(size_t i);
Object NONE();
Object NONEAt(size_t i);
Object SHARED();
Object SHAREDAt(size_t i);
Object EXCLUSIVE();
Object EXCLUSIVEAt(size_t i);
Object EQUAL_SYMBOL();
Object EQUAL_SYMBOLAt(size_t i);
};
class CreateLogfileGroupContextProxy : public ContextProxy {
public:
CreateLogfileGroupContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object uid();
Object uidAt(size_t i);
Object engineName();
Object fileSizeLiteral();
Object fileSizeLiteralAt(size_t i);
Object CREATE();
Object LOGFILE();
Object GROUP();
Object ADD();
Object UNDOFILE();
Object ENGINE();
Object STRING_LITERAL();
Object STRING_LITERALAt(size_t i);
Object INITIAL_SIZE();
Object UNDO_BUFFER_SIZE();
Object REDO_BUFFER_SIZE();
Object NODEGROUP();
Object WAIT();
Object COMMENT();
Object EQUAL_SYMBOL();
Object EQUAL_SYMBOLAt(size_t i);
};
class CreateProcedureContextProxy : public ContextProxy {
public:
CreateProcedureContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object fullId();
Object routineBody();
Object ownerStatement();
Object procedureParameter();
Object procedureParameterAt(size_t i);
Object routineOption();
Object routineOptionAt(size_t i);
Object CREATE();
Object PROCEDURE();
Object LR_BRACKET();
Object RR_BRACKET();
Object COMMA();
Object COMMAAt(size_t i);
};
class CreateFunctionContextProxy : public ContextProxy {
public:
CreateFunctionContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object fullId();
Object dataType();
Object routineBody();
Object returnStatement();
Object ownerStatement();
Object ifNotExists();
Object functionParameter();
Object functionParameterAt(size_t i);
Object routineOption();
Object routineOptionAt(size_t i);
Object CREATE();
Object FUNCTION();
Object LR_BRACKET();
Object RR_BRACKET();
Object RETURNS();
Object AGGREGATE();
Object COMMA();
Object COMMAAt(size_t i);
};
class CreateServerContextProxy : public ContextProxy {
public:
CreateServerContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object uid();
Object serverOption();
Object serverOptionAt(size_t i);
Object CREATE();
Object SERVER();
Object FOREIGN();
Object DATA();
Object WRAPPER();
Object OPTIONS();
Object LR_BRACKET();
Object RR_BRACKET();
Object MYSQL();
Object STRING_LITERAL();
Object COMMA();
Object COMMAAt(size_t i);
};
class CreateTableContextProxy : public ContextProxy {
public:
CreateTableContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
};
class CreateTablespaceInnodbContextProxy : public ContextProxy {
public:
CreateTablespaceInnodbContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object uid();
Object engineName();
Object fileSizeLiteral();
Object CREATE();
Object TABLESPACE();
Object ADD();
Object DATAFILE();
Object STRING_LITERAL();
Object FILE_BLOCK_SIZE();
Object EQUAL_SYMBOL();
Object EQUAL_SYMBOLAt(size_t i);
Object ENGINE();
};
class CreateTablespaceNdbContextProxy : public ContextProxy {
public:
CreateTablespaceNdbContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object uid();
Object uidAt(size_t i);
Object engineName();
Object fileSizeLiteral();
Object fileSizeLiteralAt(size_t i);
Object CREATE();
Object TABLESPACE();
Object ADD();
Object DATAFILE();
Object USE();
Object LOGFILE();
Object GROUP();
Object ENGINE();
Object STRING_LITERAL();
Object STRING_LITERALAt(size_t i);
Object EXTENT_SIZE();
Object INITIAL_SIZE();
Object AUTOEXTEND_SIZE();
Object MAX_SIZE();
Object NODEGROUP();
Object WAIT();
Object COMMENT();
Object EQUAL_SYMBOL();
Object EQUAL_SYMBOLAt(size_t i);
};
class CreateTriggerContextProxy : public ContextProxy {
public:
CreateTriggerContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object tableName();
Object routineBody();
Object fullId();
Object fullIdAt(size_t i);
Object ownerStatement();
Object CREATE();
Object TRIGGER();
Object ON();
Object FOR();
Object EACH();
Object ROW();
Object BEFORE();
Object AFTER();
Object INSERT();
Object UPDATE();
Object DELETE();
Object FOLLOWS();
Object PRECEDES();
};
class CreateViewContextProxy : public ContextProxy {
public:
CreateViewContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object fullId();
Object selectStatement();
Object orReplace();
Object ownerStatement();
Object uidList();
Object withClause();
Object CREATE();
Object VIEW();
Object AS();
Object LR_BRACKET();
Object LR_BRACKETAt(size_t i);
Object RR_BRACKET();
Object RR_BRACKETAt(size_t i);
Object ALGORITHM();
Object EQUAL_SYMBOL();
Object SQL();
Object SECURITY();
Object UNDEFINED();
Object MERGE();
Object TEMPTABLE();
Object DEFINER();
Object INVOKER();
Object WITH();
Object CHECK();
Object OPTION();
Object CASCADED();
Object LOCAL();
};
class CreateRoleContextProxy : public ContextProxy {
public:
CreateRoleContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object roleName();
Object roleNameAt(size_t i);
Object ifNotExists();
Object CREATE();
Object ROLE();
Object COMMA();
Object COMMAAt(size_t i);
};
class AlterDatabaseContextProxy : public ContextProxy {
public:
AlterDatabaseContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
};
class AlterEventContextProxy : public ContextProxy {
public:
AlterEventContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object fullId();
Object fullIdAt(size_t i);
Object ownerStatement();
Object scheduleExpression();
Object enableType();
Object routineBody();
Object ALTER();
Object EVENT();
Object ON();
Object ONAt(size_t i);
Object SCHEDULE();
Object COMPLETION();
Object PRESERVE();
Object RENAME();
Object TO();
Object COMMENT();
Object STRING_LITERAL();
Object DO();
Object NOT();
};
class AlterFunctionContextProxy : public ContextProxy {
public:
AlterFunctionContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object fullId();
Object routineOption();
Object routineOptionAt(size_t i);
Object ALTER();
Object FUNCTION();
};
class AlterInstanceContextProxy : public ContextProxy {
public:
AlterInstanceContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object ALTER();
Object INSTANCE();
Object ROTATE();
Object INNODB();
Object MASTER();
Object KEY();
};
class AlterLogfileGroupContextProxy : public ContextProxy {
public:
AlterLogfileGroupContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object uid();
Object engineName();
Object fileSizeLiteral();
Object ALTER();
Object LOGFILE();
Object GROUP();
Object ADD();
Object UNDOFILE();
Object STRING_LITERAL();
Object ENGINE();
Object INITIAL_SIZE();
Object WAIT();
Object EQUAL_SYMBOL();
Object EQUAL_SYMBOLAt(size_t i);
};
class AlterProcedureContextProxy : public ContextProxy {
public:
AlterProcedureContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object fullId();
Object routineOption();
Object routineOptionAt(size_t i);
Object ALTER();
Object PROCEDURE();
};
class AlterServerContextProxy : public ContextProxy {
public:
AlterServerContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object uid();
Object serverOption();
Object serverOptionAt(size_t i);
Object ALTER();
Object SERVER();
Object OPTIONS();
Object LR_BRACKET();
Object RR_BRACKET();
Object COMMA();
Object COMMAAt(size_t i);
};
class AlterTableContextProxy : public ContextProxy {
public:
AlterTableContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object tableName();
Object waitNowaitClause();
Object alterSpecification();
Object alterSpecificationAt(size_t i);
Object partitionDefinitions();
Object ALTER();
Object TABLE();
Object IGNORE();
Object ONLINE();
Object OFFLINE();
Object COMMA();
Object COMMAAt(size_t i);
};
class AlterTablespaceContextProxy : public ContextProxy {
public:
AlterTablespaceContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object uid();
Object engineName();
Object fileSizeLiteral();
Object ALTER();
Object TABLESPACE();
Object DATAFILE();
Object STRING_LITERAL();
Object ENGINE();
Object ADD();
Object DROP();
Object INITIAL_SIZE();
Object EQUAL_SYMBOL();
Object EQUAL_SYMBOLAt(size_t i);
Object WAIT();
};
class AlterViewContextProxy : public ContextProxy {
public:
AlterViewContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object fullId();
Object selectStatement();
Object ownerStatement();
Object uidList();
Object ALTER();
Object VIEW();
Object AS();
Object ALGORITHM();
Object EQUAL_SYMBOL();
Object SQL();
Object SECURITY();
Object LR_BRACKET();
Object RR_BRACKET();
Object WITH();
Object CHECK();
Object OPTION();
Object UNDEFINED();
Object MERGE();
Object TEMPTABLE();
Object DEFINER();
Object INVOKER();
Object CASCADED();
Object LOCAL();
};
class DropDatabaseContextProxy : public ContextProxy {
public:
DropDatabaseContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object uid();
Object ifExists();
Object DROP();
Object DATABASE();
Object SCHEMA();
};
class DropEventContextProxy : public ContextProxy {
public:
DropEventContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object fullId();
Object ifExists();
Object DROP();
Object EVENT();
};
class DropIndexContextProxy : public ContextProxy {
public:
DropIndexContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object uid();
Object tableName();
Object DROP();
Object INDEX();
Object ON();
Object ALGORITHM();
Object ALGORITHMAt(size_t i);
Object LOCK();
Object LOCKAt(size_t i);
Object ONLINE();
Object OFFLINE();
Object DEFAULT();
Object DEFAULTAt(size_t i);
Object INPLACE();
Object INPLACEAt(size_t i);
Object COPY();
Object COPYAt(size_t i);
Object NONE();
Object NONEAt(size_t i);
Object SHARED();
Object SHAREDAt(size_t i);
Object EXCLUSIVE();
Object EXCLUSIVEAt(size_t i);
Object EQUAL_SYMBOL();
Object EQUAL_SYMBOLAt(size_t i);
};
class DropLogfileGroupContextProxy : public ContextProxy {
public:
DropLogfileGroupContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object uid();
Object engineName();
Object DROP();
Object LOGFILE();
Object GROUP();
Object ENGINE();
Object EQUAL_SYMBOL();
};
class DropProcedureContextProxy : public ContextProxy {
public:
DropProcedureContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object fullId();
Object ifExists();
Object DROP();
Object PROCEDURE();
};
class DropFunctionContextProxy : public ContextProxy {
public:
DropFunctionContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object fullId();
Object ifExists();
Object DROP();
Object FUNCTION();
};
class DropServerContextProxy : public ContextProxy {
public:
DropServerContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object uid();
Object ifExists();
Object DROP();
Object SERVER();
};
class DropTableContextProxy : public ContextProxy {
public:
DropTableContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object tables();
Object ifExists();
Object DROP();
Object TABLE();
Object TEMPORARY();
Object RESTRICT();
Object CASCADE();
};
class DropTablespaceContextProxy : public ContextProxy {
public:
DropTablespaceContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object uid();
Object engineName();
Object DROP();
Object TABLESPACE();
Object ENGINE();
Object EQUAL_SYMBOL();
};
class DropTriggerContextProxy : public ContextProxy {
public:
DropTriggerContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object fullId();
Object ifExists();
Object DROP();
Object TRIGGER();
};
class DropViewContextProxy : public ContextProxy {
public:
DropViewContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object fullId();
Object fullIdAt(size_t i);
Object ifExists();
Object DROP();
Object VIEW();
Object COMMA();
Object COMMAAt(size_t i);
Object RESTRICT();
Object CASCADE();
};
class DropRoleContextProxy : public ContextProxy {
public:
DropRoleContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object roleName();
Object roleNameAt(size_t i);
Object ifExists();
Object DROP();
Object ROLE();
Object COMMA();
Object COMMAAt(size_t i);
};
class SetRoleContextProxy : public ContextProxy {
public:
SetRoleContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object roleName();
Object roleNameAt(size_t i);
Object userName();
Object userNameAt(size_t i);
Object uid();
Object uidAt(size_t i);
Object roleOption();
Object SET();
Object DEFAULT();
Object ROLE();
Object TO();
Object NONE();
Object ALL();
Object COMMA();
Object COMMAAt(size_t i);
};
class RenameTableContextProxy : public ContextProxy {
public:
RenameTableContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object renameTableClause();
Object renameTableClauseAt(size_t i);
Object RENAME();
Object TABLE();
Object COMMA();
Object COMMAAt(size_t i);
};
class TruncateTableContextProxy : public ContextProxy {
public:
TruncateTableContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object tableName();
Object TRUNCATE();
Object TABLE();
};
class SelectStatementContextProxy : public ContextProxy {
public:
SelectStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
};
class InsertStatementContextProxy : public ContextProxy {
public:
InsertStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object tableName();
Object insertStatementValue();
Object updatedElement();
Object updatedElementAt(size_t i);
Object uid();
Object uidList();
Object fullColumnNameList();
Object INSERT();
Object SET();
Object IGNORE();
Object INTO();
Object PARTITION();
Object LR_BRACKET();
Object LR_BRACKETAt(size_t i);
Object RR_BRACKET();
Object RR_BRACKETAt(size_t i);
Object ON();
Object DUPLICATE();
Object KEY();
Object UPDATE();
Object LOW_PRIORITY();
Object DELAYED();
Object HIGH_PRIORITY();
Object COMMA();
Object COMMAAt(size_t i);
Object AS();
};
class UpdateStatementContextProxy : public ContextProxy {
public:
UpdateStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object singleUpdateStatement();
Object multipleUpdateStatement();
};
class DeleteStatementContextProxy : public ContextProxy {
public:
DeleteStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object singleDeleteStatement();
Object multipleDeleteStatement();
};
class ReplaceStatementContextProxy : public ContextProxy {
public:
ReplaceStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object tableName();
Object insertStatementValue();
Object updatedElement();
Object updatedElementAt(size_t i);
Object uidList();
Object uidListAt(size_t i);
Object REPLACE();
Object SET();
Object INTO();
Object PARTITION();
Object LR_BRACKET();
Object LR_BRACKETAt(size_t i);
Object RR_BRACKET();
Object RR_BRACKETAt(size_t i);
Object LOW_PRIORITY();
Object DELAYED();
Object COMMA();
Object COMMAAt(size_t i);
};
class CallStatementContextProxy : public ContextProxy {
public:
CallStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object fullId();
Object constants();
Object expressions();
Object CALL();
Object LR_BRACKET();
Object RR_BRACKET();
};
class LoadDataStatementContextProxy : public ContextProxy {
public:
LoadDataStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object tableName();
Object uidList();
Object decimalLiteral();
Object assignmentField();
Object assignmentFieldAt(size_t i);
Object updatedElement();
Object updatedElementAt(size_t i);
Object charsetName();
Object selectFieldsInto();
Object selectFieldsIntoAt(size_t i);
Object selectLinesInto();
Object selectLinesIntoAt(size_t i);
Object LOAD();
Object DATA();
Object INFILE();
Object INTO();
Object TABLE();
Object STRING_LITERAL();
Object LOCAL();
Object PARTITION();
Object LR_BRACKET();
Object LR_BRACKETAt(size_t i);
Object RR_BRACKET();
Object RR_BRACKETAt(size_t i);
Object CHARACTER();
Object SET();
Object SETAt(size_t i);
Object LINES();
Object LINESAt(size_t i);
Object IGNORE();
Object IGNOREAt(size_t i);
Object LOW_PRIORITY();
Object CONCURRENT();
Object REPLACE();
Object FIELDS();
Object COLUMNS();
Object ROWS();
Object COMMA();
Object COMMAAt(size_t i);
};
class LoadXmlStatementContextProxy : public ContextProxy {
public:
LoadXmlStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object tableName();
Object decimalLiteral();
Object assignmentField();
Object assignmentFieldAt(size_t i);
Object updatedElement();
Object updatedElementAt(size_t i);
Object charsetName();
Object LOAD();
Object XML();
Object INFILE();
Object INTO();
Object TABLE();
Object STRING_LITERAL();
Object STRING_LITERALAt(size_t i);
Object LOCAL();
Object CHARACTER();
Object SET();
Object SETAt(size_t i);
Object ROWS();
Object ROWSAt(size_t i);
Object IDENTIFIED();
Object BY();
Object LESS_SYMBOL();
Object GREATER_SYMBOL();
Object IGNORE();
Object IGNOREAt(size_t i);
Object LR_BRACKET();
Object RR_BRACKET();
Object LOW_PRIORITY();
Object CONCURRENT();
Object REPLACE();
Object LINES();
Object COMMA();
Object COMMAAt(size_t i);
};
class DoStatementContextProxy : public ContextProxy {
public:
DoStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object expressions();
Object DO();
};
class HandlerStatementContextProxy : public ContextProxy {
public:
HandlerStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object handlerOpenStatement();
Object handlerReadIndexStatement();
Object handlerReadStatement();
Object handlerCloseStatement();
};
class ValuesStatementContextProxy : public ContextProxy {
public:
ValuesStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object expressionsWithDefaults();
Object expressionsWithDefaultsAt(size_t i);
Object VALUES();
Object LR_BRACKET();
Object LR_BRACKETAt(size_t i);
Object RR_BRACKET();
Object RR_BRACKETAt(size_t i);
Object COMMA();
Object COMMAAt(size_t i);
};
class WithStatementContextProxy : public ContextProxy {
public:
WithStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object commonTableExpressions();
Object commonTableExpressionsAt(size_t i);
Object WITH();
Object RECURSIVE();
Object COMMA();
Object COMMAAt(size_t i);
};
class TableStatementContextProxy : public ContextProxy {
public:
TableStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object tableName();
Object orderByClause();
Object limitClause();
Object TABLE();
};
class StartTransactionContextProxy : public ContextProxy {
public:
StartTransactionContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object transactionMode();
Object transactionModeAt(size_t i);
Object START();
Object TRANSACTION();
Object COMMA();
Object COMMAAt(size_t i);
};
class BeginWorkContextProxy : public ContextProxy {
public:
BeginWorkContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object BEGIN();
Object WORK();
};
class CommitWorkContextProxy : public ContextProxy {
public:
CommitWorkContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object COMMIT();
Object WORK();
Object AND();
Object CHAIN();
Object RELEASE();
Object NO();
Object NOAt(size_t i);
};
class RollbackWorkContextProxy : public ContextProxy {
public:
RollbackWorkContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object ROLLBACK();
Object WORK();
Object AND();
Object CHAIN();
Object RELEASE();
Object NO();
Object NOAt(size_t i);
};
class SavepointStatementContextProxy : public ContextProxy {
public:
SavepointStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object uid();
Object SAVEPOINT();
};
class RollbackStatementContextProxy : public ContextProxy {
public:
RollbackStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object uid();
Object ROLLBACK();
Object TO();
Object WORK();
Object SAVEPOINT();
};
class ReleaseStatementContextProxy : public ContextProxy {
public:
ReleaseStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object uid();
Object RELEASE();
Object SAVEPOINT();
};
class LockTablesContextProxy : public ContextProxy {
public:
LockTablesContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object lockTableElement();
Object lockTableElementAt(size_t i);
Object waitNowaitClause();
Object LOCK();
Object TABLE();
Object TABLES();
Object COMMA();
Object COMMAAt(size_t i);
};
class UnlockTablesContextProxy : public ContextProxy {
public:
UnlockTablesContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object UNLOCK();
Object TABLES();
};
class ChangeMasterContextProxy : public ContextProxy {
public:
ChangeMasterContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object masterOption();
Object masterOptionAt(size_t i);
Object channelOption();
Object CHANGE();
Object MASTER();
Object TO();
Object COMMA();
Object COMMAAt(size_t i);
};
class ChangeReplicationFilterContextProxy : public ContextProxy {
public:
ChangeReplicationFilterContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object replicationFilter();
Object replicationFilterAt(size_t i);
Object CHANGE();
Object REPLICATION();
Object FILTER();
Object COMMA();
Object COMMAAt(size_t i);
};
class PurgeBinaryLogsContextProxy : public ContextProxy {
public:
PurgeBinaryLogsContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object PURGE();
Object LOGS();
Object BINARY();
Object MASTER();
Object TO();
Object BEFORE();
Object STRING_LITERAL();
};
class ResetMasterContextProxy : public ContextProxy {
public:
ResetMasterContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object RESET();
Object MASTER();
};
class ResetSlaveContextProxy : public ContextProxy {
public:
ResetSlaveContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object channelOption();
Object RESET();
Object SLAVE();
Object ALL();
};
class StartSlaveContextProxy : public ContextProxy {
public:
StartSlaveContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object threadType();
Object threadTypeAt(size_t i);
Object untilOption();
Object connectionOption();
Object connectionOptionAt(size_t i);
Object channelOption();
Object START();
Object SLAVE();
Object UNTIL();
Object COMMA();
Object COMMAAt(size_t i);
};
class StopSlaveContextProxy : public ContextProxy {
public:
StopSlaveContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object threadType();
Object threadTypeAt(size_t i);
Object STOP();
Object SLAVE();
Object COMMA();
Object COMMAAt(size_t i);
};
class StartGroupReplicationContextProxy : public ContextProxy {
public:
StartGroupReplicationContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object START();
Object GROUP_REPLICATION();
};
class StopGroupReplicationContextProxy : public ContextProxy {
public:
StopGroupReplicationContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object STOP();
Object GROUP_REPLICATION();
};
class XaStartTransactionContextProxy : public ContextProxy {
public:
XaStartTransactionContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object xid();
Object XA();
Object START();
Object BEGIN();
Object JOIN();
Object RESUME();
};
class XaEndTransactionContextProxy : public ContextProxy {
public:
XaEndTransactionContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object xid();
Object XA();
Object END();
Object SUSPEND();
Object FOR();
Object MIGRATE();
};
class XaPrepareStatementContextProxy : public ContextProxy {
public:
XaPrepareStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object xid();
Object XA();
Object PREPARE();
};
class XaCommitWorkContextProxy : public ContextProxy {
public:
XaCommitWorkContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object xid();
Object XA();
Object COMMIT();
Object ONE();
Object PHASE();
};
class XaRollbackWorkContextProxy : public ContextProxy {
public:
XaRollbackWorkContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object xid();
Object XA();
Object ROLLBACK();
};
class XaRecoverWorkContextProxy : public ContextProxy {
public:
XaRecoverWorkContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object xid();
Object XA();
Object RECOVER();
Object CONVERT();
};
class PrepareStatementContextProxy : public ContextProxy {
public:
PrepareStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object uid();
Object PREPARE();
Object FROM();
Object STRING_LITERAL();
Object LOCAL_ID();
};
class ExecuteStatementContextProxy : public ContextProxy {
public:
ExecuteStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object uid();
Object userVariables();
Object EXECUTE();
Object USING();
};
class DeallocatePrepareContextProxy : public ContextProxy {
public:
DeallocatePrepareContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object uid();
Object PREPARE();
Object DEALLOCATE();
Object DROP();
};
class CompoundStatementContextProxy : public ContextProxy {
public:
CompoundStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object blockStatement();
Object caseStatement();
Object ifStatement();
Object leaveStatement();
Object loopStatement();
Object repeatStatement();
Object whileStatement();
Object iterateStatement();
Object returnStatement();
Object cursorStatement();
};
class BlockStatementContextProxy : public ContextProxy {
public:
BlockStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object uid();
Object uidAt(size_t i);
Object declareVariable();
Object declareVariableAt(size_t i);
Object declareCondition();
Object declareConditionAt(size_t i);
Object declareCursor();
Object declareCursorAt(size_t i);
Object declareHandler();
Object declareHandlerAt(size_t i);
Object procedureSqlStatement();
Object procedureSqlStatementAt(size_t i);
Object BEGIN();
Object END();
Object COLON_SYMB();
Object SEMI();
Object SEMIAt(size_t i);
};
class CaseStatementContextProxy : public ContextProxy {
public:
CaseStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object uid();
Object expression();
Object caseAlternative();
Object caseAlternativeAt(size_t i);
Object procedureSqlStatement();
Object procedureSqlStatementAt(size_t i);
Object CASE();
Object CASEAt(size_t i);
Object END();
Object ELSE();
};
class IfStatementContextProxy : public ContextProxy {
public:
IfStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object expression();
Object elifAlternative();
Object elifAlternativeAt(size_t i);
Object procedureSqlStatement();
Object procedureSqlStatementAt(size_t i);
Object IF();
Object IFAt(size_t i);
Object THEN();
Object END();
Object ELSE();
};
class LeaveStatementContextProxy : public ContextProxy {
public:
LeaveStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object uid();
Object LEAVE();
};
class LoopStatementContextProxy : public ContextProxy {
public:
LoopStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object uid();
Object uidAt(size_t i);
Object procedureSqlStatement();
Object procedureSqlStatementAt(size_t i);
Object LOOP();
Object LOOPAt(size_t i);
Object END();
Object COLON_SYMB();
};
class RepeatStatementContextProxy : public ContextProxy {
public:
RepeatStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object expression();
Object uid();
Object uidAt(size_t i);
Object procedureSqlStatement();
Object procedureSqlStatementAt(size_t i);
Object REPEAT();
Object REPEATAt(size_t i);
Object UNTIL();
Object END();
Object COLON_SYMB();
};
class WhileStatementContextProxy : public ContextProxy {
public:
WhileStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object expression();
Object uid();
Object uidAt(size_t i);
Object procedureSqlStatement();
Object procedureSqlStatementAt(size_t i);
Object WHILE();
Object WHILEAt(size_t i);
Object DO();
Object END();
Object COLON_SYMB();
};
class IterateStatementContextProxy : public ContextProxy {
public:
IterateStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object uid();
Object ITERATE();
};
class ReturnStatementContextProxy : public ContextProxy {
public:
ReturnStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object expression();
Object RETURN();
};
class CursorStatementContextProxy : public ContextProxy {
public:
CursorStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
};
class AlterUserContextProxy : public ContextProxy {
public:
AlterUserContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
};
class CreateUserContextProxy : public ContextProxy {
public:
CreateUserContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
};
class DropUserContextProxy : public ContextProxy {
public:
DropUserContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object userName();
Object userNameAt(size_t i);
Object ifExists();
Object DROP();
Object USER();
Object COMMA();
Object COMMAAt(size_t i);
};
class GrantStatementContextProxy : public ContextProxy {
public:
GrantStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object privelegeClause();
Object privelegeClauseAt(size_t i);
Object privilegeLevel();
Object userAuthOption();
Object userAuthOptionAt(size_t i);
Object userName();
Object userNameAt(size_t i);
Object roleOption();
Object tlsOption();
Object tlsOptionAt(size_t i);
Object userResourceOption();
Object userResourceOptionAt(size_t i);
Object uid();
Object uidAt(size_t i);
Object GRANT();
Object GRANTAt(size_t i);
Object ON();
Object TO();
Object COMMA();
Object COMMAAt(size_t i);
Object REQUIRE();
Object WITH();
Object WITHAt(size_t i);
Object AS();
Object ROLE();
Object TABLE();
Object FUNCTION();
Object PROCEDURE();
Object NONE();
Object OPTION();
Object OPTIONAt(size_t i);
Object AND();
Object ANDAt(size_t i);
Object ADMIN();
};
class GrantProxyContextProxy : public ContextProxy {
public:
GrantProxyContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object userName();
Object userNameAt(size_t i);
Object GRANT();
Object GRANTAt(size_t i);
Object PROXY();
Object ON();
Object TO();
Object COMMA();
Object COMMAAt(size_t i);
Object WITH();
Object OPTION();
};
class RenameUserContextProxy : public ContextProxy {
public:
RenameUserContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object renameUserClause();
Object renameUserClauseAt(size_t i);
Object RENAME();
Object USER();
Object COMMA();
Object COMMAAt(size_t i);
};
class RevokeStatementContextProxy : public ContextProxy {
public:
RevokeStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
};
class RevokeProxyContextProxy : public ContextProxy {
public:
RevokeProxyContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object userName();
Object userNameAt(size_t i);
Object REVOKE();
Object PROXY();
Object ON();
Object FROM();
Object COMMA();
Object COMMAAt(size_t i);
};
class AnalyzeTableContextProxy : public ContextProxy {
public:
AnalyzeTableContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object tables();
Object fullColumnName();
Object fullColumnNameAt(size_t i);
Object decimalLiteral();
Object ANALYZE();
Object TABLE();
Object TABLES();
Object UPDATE();
Object HISTOGRAM();
Object HISTOGRAMAt(size_t i);
Object ON();
Object ONAt(size_t i);
Object DROP();
Object NO_WRITE_TO_BINLOG();
Object LOCAL();
Object COMMA();
Object COMMAAt(size_t i);
Object WITH();
Object BUCKETS();
};
class CheckTableContextProxy : public ContextProxy {
public:
CheckTableContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object tables();
Object checkTableOption();
Object checkTableOptionAt(size_t i);
Object CHECK();
Object TABLE();
};
class ChecksumTableContextProxy : public ContextProxy {
public:
ChecksumTableContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object tables();
Object CHECKSUM();
Object TABLE();
Object QUICK();
Object EXTENDED();
};
class OptimizeTableContextProxy : public ContextProxy {
public:
OptimizeTableContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object tables();
Object OPTIMIZE();
Object TABLE();
Object TABLES();
Object NO_WRITE_TO_BINLOG();
Object LOCAL();
};
class RepairTableContextProxy : public ContextProxy {
public:
RepairTableContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object tables();
Object REPAIR();
Object TABLE();
Object QUICK();
Object EXTENDED();
Object USE_FRM();
Object NO_WRITE_TO_BINLOG();
Object LOCAL();
};
class CreateUdfunctionContextProxy : public ContextProxy {
public:
CreateUdfunctionContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object uid();
Object ifNotExists();
Object CREATE();
Object FUNCTION();
Object RETURNS();
Object SONAME();
Object STRING_LITERAL();
Object STRING();
Object INTEGER();
Object REAL();
Object DECIMAL();
Object AGGREGATE();
};
class InstallPluginContextProxy : public ContextProxy {
public:
InstallPluginContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object uid();
Object INSTALL();
Object PLUGIN();
Object SONAME();
Object STRING_LITERAL();
};
class UninstallPluginContextProxy : public ContextProxy {
public:
UninstallPluginContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object uid();
Object UNINSTALL();
Object PLUGIN();
};
class SetStatementContextProxy : public ContextProxy {
public:
SetStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
};
class ShowStatementContextProxy : public ContextProxy {
public:
ShowStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
};
class BinlogStatementContextProxy : public ContextProxy {
public:
BinlogStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object BINLOG();
Object STRING_LITERAL();
};
class CacheIndexStatementContextProxy : public ContextProxy {
public:
CacheIndexStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object tableIndexes();
Object tableIndexesAt(size_t i);
Object uid();
Object uidList();
Object CACHE();
Object INDEX();
Object IN();
Object COMMA();
Object COMMAAt(size_t i);
Object PARTITION();
Object LR_BRACKET();
Object RR_BRACKET();
Object ALL();
};
class FlushStatementContextProxy : public ContextProxy {
public:
FlushStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object flushOption();
Object flushOptionAt(size_t i);
Object FLUSH();
Object COMMA();
Object COMMAAt(size_t i);
Object NO_WRITE_TO_BINLOG();
Object LOCAL();
};
class KillStatementContextProxy : public ContextProxy {
public:
KillStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object expression();
Object KILL();
Object CONNECTION();
Object QUERY();
};
class LoadIndexIntoCacheContextProxy : public ContextProxy {
public:
LoadIndexIntoCacheContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object loadedTableIndexes();
Object loadedTableIndexesAt(size_t i);
Object LOAD();
Object INDEX();
Object INTO();
Object CACHE();
Object COMMA();
Object COMMAAt(size_t i);
};
class ResetStatementContextProxy : public ContextProxy {
public:
ResetStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object RESET();
Object QUERY();
Object CACHE();
};
class ShutdownStatementContextProxy : public ContextProxy {
public:
ShutdownStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object SHUTDOWN();
};
class SimpleDescribeStatementContextProxy : public ContextProxy {
public:
SimpleDescribeStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object tableName();
Object uid();
Object EXPLAIN();
Object DESCRIBE();
Object DESC();
Object STRING_LITERAL();
};
class FullDescribeStatementContextProxy : public ContextProxy {
public:
FullDescribeStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object describeObjectClause();
Object EXPLAIN();
Object DESCRIBE();
Object DESC();
Object EQUAL_SYMBOL();
Object EXTENDED();
Object PARTITIONS();
Object FORMAT();
Object TRADITIONAL();
Object JSON();
};
class HelpStatementContextProxy : public ContextProxy {
public:
HelpStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object HELP();
Object STRING_LITERAL();
};
class UseStatementContextProxy : public ContextProxy {
public:
UseStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object uid();
Object USE();
};
class SignalStatementContextProxy : public ContextProxy {
public:
SignalStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object signalConditionInformation();
Object signalConditionInformationAt(size_t i);
Object stringLiteral();
Object SIGNAL();
Object ID();
Object REVERSE_QUOTE_ID();
Object SET();
Object SQLSTATE();
Object COMMA();
Object COMMAAt(size_t i);
Object VALUE();
};
class ResignalStatementContextProxy : public ContextProxy {
public:
ResignalStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object signalConditionInformation();
Object signalConditionInformationAt(size_t i);
Object stringLiteral();
Object RESIGNAL();
Object ID();
Object REVERSE_QUOTE_ID();
Object SET();
Object SQLSTATE();
Object COMMA();
Object COMMAAt(size_t i);
Object VALUE();
};
class DiagnosticsStatementContextProxy : public ContextProxy {
public:
DiagnosticsStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object variableClause();
Object variableClauseAt(size_t i);
Object diagnosticsConditionInformationName();
Object diagnosticsConditionInformationNameAt(size_t i);
Object decimalLiteral();
Object GET();
Object DIAGNOSTICS();
Object CURRENT();
Object STACKED();
Object EQUAL_SYMBOL();
Object EQUAL_SYMBOLAt(size_t i);
Object CONDITION();
Object NUMBER();
Object NUMBERAt(size_t i);
Object ROW_COUNT();
Object ROW_COUNTAt(size_t i);
Object COMMA();
Object COMMAAt(size_t i);
};
class UidContextProxy : public ContextProxy {
public:
UidContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object simpleId();
Object CHARSET_REVERSE_QOUTE_STRING();
Object STRING_LITERAL();
};
class IfNotExistsContextProxy : public ContextProxy {
public:
IfNotExistsContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object IF();
Object NOT();
Object EXISTS();
};
class CreateDatabaseOptionContextProxy : public ContextProxy {
public:
CreateDatabaseOptionContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object charSet();
Object charsetName();
Object collationName();
Object DEFAULT();
Object DEFAULTAt(size_t i);
Object EQUAL_SYMBOL();
Object COLLATE();
Object ENCRYPTION();
Object STRING_LITERAL();
Object READ();
Object ONLY();
Object ZERO_DECIMAL();
Object ONE_DECIMAL();
};
class FullIdContextProxy : public ContextProxy {
public:
FullIdContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object uid();
Object uidAt(size_t i);
Object DOT_ID();
Object DOT();
};
class ScheduleExpressionContextProxy : public ContextProxy {
public:
ScheduleExpressionContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
};
class RoutineBodyContextProxy : public ContextProxy {
public:
RoutineBodyContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object blockStatement();
Object sqlStatement();
};
class OwnerStatementContextProxy : public ContextProxy {
public:
OwnerStatementContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object userName();
Object currentUserExpression();
Object DEFINER();
Object EQUAL_SYMBOL();
};
class EnableTypeContextProxy : public ContextProxy {
public:
EnableTypeContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object ENABLE();
Object DISABLE();
Object ON();
Object SLAVE();
};
class TableNameContextProxy : public ContextProxy {
public:
TableNameContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object fullId();
};
class IndexColumnNamesContextProxy : public ContextProxy {
public:
IndexColumnNamesContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object indexColumnName();
Object indexColumnNameAt(size_t i);
Object LR_BRACKET();
Object RR_BRACKET();
Object COMMA();
Object COMMAAt(size_t i);
};
class IndexTypeContextProxy : public ContextProxy {
public:
IndexTypeContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object USING();
Object BTREE();
Object HASH();
};
class IndexOptionContextProxy : public ContextProxy {
public:
IndexOptionContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object fileSizeLiteral();
Object indexType();
Object uid();
Object KEY_BLOCK_SIZE();
Object EQUAL_SYMBOL();
Object WITH();
Object PARSER();
Object COMMENT();
Object STRING_LITERAL();
Object VISIBLE();
Object INVISIBLE();
Object ENGINE_ATTRIBUTE();
Object SECONDARY_ENGINE_ATTRIBUTE();
};
class EngineNameContextProxy : public ContextProxy {
public:
EngineNameContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object engineNameBase();
Object ID();
Object STRING_LITERAL();
};
class FileSizeLiteralContextProxy : public ContextProxy {
public:
FileSizeLiteralContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object decimalLiteral();
Object FILESIZE_LITERAL();
};
class ProcedureParameterContextProxy : public ContextProxy {
public:
ProcedureParameterContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object uid();
Object dataType();
Object IN();
Object OUT();
Object INOUT();
};
class RoutineOptionContextProxy : public ContextProxy {
public:
RoutineOptionContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
};
class DataTypeContextProxy : public ContextProxy {
public:
DataTypeContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
};
class FunctionParameterContextProxy : public ContextProxy {
public:
FunctionParameterContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object uid();
Object dataType();
};
class RoleNameContextProxy : public ContextProxy {
public:
RoleNameContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object userName();
Object uid();
};
class ServerOptionContextProxy : public ContextProxy {
public:
ServerOptionContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object decimalLiteral();
Object HOST();
Object STRING_LITERAL();
Object DATABASE();
Object USER();
Object PASSWORD();
Object SOCKET();
Object OWNER();
Object PORT();
};
class CopyCreateTableContextProxy : public ContextProxy {
public:
CopyCreateTableContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object tableName();
Object tableNameAt(size_t i);
Object ifNotExists();
Object CREATE();
Object TABLE();
Object LIKE();
Object LR_BRACKET();
Object RR_BRACKET();
Object TEMPORARY();
};
class ColumnCreateTableContextProxy : public ContextProxy {
public:
ColumnCreateTableContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object tableName();
Object createDefinitions();
Object ifNotExists();
Object tableOption();
Object tableOptionAt(size_t i);
Object partitionDefinitions();
Object CREATE();
Object TABLE();
Object TEMPORARY();
Object COMMA();
Object COMMAAt(size_t i);
};
class CreateDefinitionsContextProxy : public ContextProxy {
public:
CreateDefinitionsContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object createDefinition();
Object createDefinitionAt(size_t i);
Object LR_BRACKET();
Object RR_BRACKET();
Object COMMA();
Object COMMAAt(size_t i);
};
class TableOptionContextProxy : public ContextProxy {
public:
TableOptionContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
};
class PartitionDefinitionsContextProxy : public ContextProxy {
public:
PartitionDefinitionsContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object partitionFunctionDefinition();
Object subpartitionFunctionDefinition();
Object partitionDefinition();
Object partitionDefinitionAt(size_t i);
Object decimalLiteral();
Object decimalLiteralAt(size_t i);
Object PARTITION();
Object BY();
Object BYAt(size_t i);
Object PARTITIONS();
Object SUBPARTITION();
Object LR_BRACKET();
Object RR_BRACKET();
Object SUBPARTITIONS();
Object COMMA();
Object COMMAAt(size_t i);
};
class QueryCreateTableContextProxy : public ContextProxy {
public:
QueryCreateTableContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object tableName();
Object selectStatement();
Object ifNotExists();
Object createDefinitions();
Object tableOption();
Object tableOptionAt(size_t i);
Object partitionDefinitions();
Object CREATE();
Object TABLE();
Object TEMPORARY();
Object AS();
Object IGNORE();
Object REPLACE();
Object COMMA();
Object COMMAAt(size_t i);
};
class WithClauseContextProxy : public ContextProxy {
public:
WithClauseContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object commonTableExpressions();
Object WITH();
Object RECURSIVE();
};
class CommonTableExpressionsContextProxy : public ContextProxy {
public:
CommonTableExpressionsContextProxy(tree::ParseTree* ctx) : ContextProxy(ctx) {};
Object cteName();
Object dmlStatement();
Object cteColumnName();
Object cteColumnNameAt(size_t i);
Object commonTableExpressions();
Object AS();
Object LR_BRACKET();
Object LR_BRACKETAt(size_t i);
Object RR_BRACKET();
Object RR_BRACKETAt(size_t i);