summaryrefslogtreecommitdiffstats
path: root/yql/essentials/tools/sql_formatter/sql_formatter.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'yql/essentials/tools/sql_formatter/sql_formatter.cpp')
-rw-r--r--yql/essentials/tools/sql_formatter/sql_formatter.cpp24
1 files changed, 18 insertions, 6 deletions
diff --git a/yql/essentials/tools/sql_formatter/sql_formatter.cpp b/yql/essentials/tools/sql_formatter/sql_formatter.cpp
index 0f471d062f2..03a8eab9aeb 100644
--- a/yql/essentials/tools/sql_formatter/sql_formatter.cpp
+++ b/yql/essentials/tools/sql_formatter/sql_formatter.cpp
@@ -57,17 +57,29 @@ int RunFormat(int argc, char** argv) {
if (res.Has("print-query")) {
out << queryString << Endl;
}
+
google::protobuf::Arena arena;
NSQLTranslation::TTranslationSettings settings;
settings.LangVer = langver;
settings.Arena = &arena;
settings.AnsiLexer = res.Has("ansi-lexer");
- NSQLTranslationV1::TLexers lexers;
- lexers.Antlr4 = NSQLTranslationV1::MakeAntlr4LexerFactory();
- lexers.Antlr4Ansi = NSQLTranslationV1::MakeAntlr4AnsiLexerFactory();
- NSQLTranslationV1::TParsers parsers;
- parsers.Antlr4 = NSQLTranslationV1::MakeAntlr4ParserFactory();
- parsers.Antlr4Ansi = NSQLTranslationV1::MakeAntlr4AnsiParserFactory();
+
+ NSQLTranslationV1::TLexers lexers = {
+ .Antlr4 = NSQLTranslationV1::MakeAntlr4LexerFactory(),
+ .Antlr4Ansi = NSQLTranslationV1::MakeAntlr4AnsiLexerFactory(),
+ };
+
+ NSQLTranslationV1::TParsers parsers = {
+ .Antlr4 = NSQLTranslationV1::MakeAntlr4ParserFactory(
+ /*isAmbiguityError=*/false,
+ /*isAmbiguityDebugging=*/false,
+ settings.MaxParseTreeDepth),
+ .Antlr4Ansi = NSQLTranslationV1::MakeAntlr4AnsiParserFactory(
+ /*isAmbiguityError=*/false,
+ /*isAmbiguityDebugging=*/false,
+ settings.MaxParseTreeDepth),
+ };
+
auto formatter = NSQLFormat::MakeSqlFormatter(lexers, parsers, settings);
TString frm_query;
TString error;