From a0ba9b894f3d646b72b9d53f6e2f832be113df42 Mon Sep 17 00:00:00 2001 From: eelke Date: Sun, 3 Apr 2022 12:30:23 +0200 Subject: [PATCH] Improve construction of out Parser class. --- pglablib/sqlparser/Parser.cpp | 6 +++++- pglablib/sqlparser/Parser.h | 1 + 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/pglablib/sqlparser/Parser.cpp b/pglablib/sqlparser/Parser.cpp index c8a192b..92e6019 100644 --- a/pglablib/sqlparser/Parser.cpp +++ b/pglablib/sqlparser/Parser.cpp @@ -3,7 +3,11 @@ Parser::Parser(const std::string &input_string) - : InputStream(std::make_unique(input_string)) + : Parser(std::make_unique(input_string)) +{} + +Parser::Parser(std::unique_ptr stream) + : InputStream(std::move(stream)) , CaseFilter(InputStream.get(), true) , Lexer(&CaseFilter) , TokenStream(&Lexer) diff --git a/pglablib/sqlparser/Parser.h b/pglablib/sqlparser/Parser.h index 01b905b..7633252 100644 --- a/pglablib/sqlparser/Parser.h +++ b/pglablib/sqlparser/Parser.h @@ -9,6 +9,7 @@ class Parser { public: Parser(const std::string &input_string); + Parser(std::unique_ptr stream); std::unique_ptr Parse();