diff options
author | vvvv <[email protected]> | 2025-02-19 17:28:26 +0300 |
---|---|---|
committer | vvvv <[email protected]> | 2025-02-19 17:46:38 +0300 |
commit | 52daccf61e2e827114cfb3372071cddaec7974ba (patch) | |
tree | 07404f6ec241c8a2b96a4da07dc0f0d0c247799c /yql/essentials/public/sql_format | |
parent | ca4b5f28703b0d06599c94f3eacc5d6c498c31d5 (diff) |
YQL-19594 Explicit lexers & parsers
commit_hash:6be543b7c5bff6ee474ee606c920197fb2569767
Diffstat (limited to 'yql/essentials/public/sql_format')
-rw-r--r-- | yql/essentials/public/sql_format/sql_format.cpp | 21 | ||||
-rw-r--r-- | yql/essentials/public/sql_format/sql_format.h | 8 | ||||
-rw-r--r-- | yql/essentials/public/sql_format/ya.make | 15 |
3 files changed, 44 insertions, 0 deletions
diff --git a/yql/essentials/public/sql_format/sql_format.cpp b/yql/essentials/public/sql_format/sql_format.cpp new file mode 100644 index 00000000000..2fe769e5fc7 --- /dev/null +++ b/yql/essentials/public/sql_format/sql_format.cpp @@ -0,0 +1,21 @@ +#include "sql_format.h" + +#include <yql/essentials/sql/v1/format/sql_format.h> +#include <yql/essentials/sql/v1/lexer/antlr4/lexer.h> +#include <yql/essentials/sql/v1/lexer/antlr4_ansi/lexer.h> +#include <yql/essentials/sql/v1/proto_parser/antlr4/proto_parser.h> +#include <yql/essentials/sql/v1/proto_parser/antlr4_ansi/proto_parser.h> + +namespace NSQLFormat { + +bool SqlFormatSimple(const TString& query, TString& formattedQuery, TString& error) { + NSQLTranslationV1::TLexers lexers; + lexers.Antlr4 = NSQLTranslationV1::MakeAntlr4LexerFactory(); + lexers.Antlr4Ansi = NSQLTranslationV1::MakeAntlr4AnsiLexerFactory(); + NSQLTranslationV1::TParsers parsers; + parsers.Antlr4 = NSQLTranslationV1::MakeAntlr4ParserFactory(); + parsers.Antlr4Ansi = NSQLTranslationV1::MakeAntlr4AnsiParserFactory(); + return SqlFormatSimple(lexers, parsers, query, formattedQuery, error); +} + +} diff --git a/yql/essentials/public/sql_format/sql_format.h b/yql/essentials/public/sql_format/sql_format.h new file mode 100644 index 00000000000..afde5204e69 --- /dev/null +++ b/yql/essentials/public/sql_format/sql_format.h @@ -0,0 +1,8 @@ +#pragma once +#include <util/generic/string.h> + +namespace NSQLFormat { + +bool SqlFormatSimple(const TString& query, TString& formattedQuery, TString& error); + +} diff --git a/yql/essentials/public/sql_format/ya.make b/yql/essentials/public/sql_format/ya.make new file mode 100644 index 00000000000..d775025e54e --- /dev/null +++ b/yql/essentials/public/sql_format/ya.make @@ -0,0 +1,15 @@ +LIBRARY() + +SRCS( + sql_format.cpp +) + +PEERDIR( + yql/essentials/sql/v1/format + yql/essentials/sql/v1/lexer/antlr4 + yql/essentials/sql/v1/lexer/antlr4_ansi + yql/essentials/sql/v1/proto_parser/antlr4 + yql/essentials/sql/v1/proto_parser/antlr4_ansi +) + +END() |