summaryrefslogtreecommitdiff
path: root/src/parser/smt2/smt2_input.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/parser/smt2/smt2_input.cpp')
-rw-r--r--src/parser/smt2/smt2_input.cpp12
1 files changed, 10 insertions, 2 deletions
diff --git a/src/parser/smt2/smt2_input.cpp b/src/parser/smt2/smt2_input.cpp
index c1e177dc4..22c2fd9a7 100644
--- a/src/parser/smt2/smt2_input.cpp
+++ b/src/parser/smt2/smt2_input.cpp
@@ -29,8 +29,9 @@ namespace CVC4 {
namespace parser {
/* Use lookahead=2 */
-Smt2Input::Smt2Input(AntlrInputStream& inputStream) :
+Smt2Input::Smt2Input(AntlrInputStream& inputStream, InputLanguage lang) :
AntlrInput(inputStream, 2) {
+
pANTLR3_INPUT_STREAM input = inputStream.getAntlr3InputStream();
assert( input != NULL );
@@ -50,14 +51,21 @@ Smt2Input::Smt2Input(AntlrInputStream& inputStream) :
}
setAntlr3Parser(d_pSmt2Parser->pParser);
-}
+ setLanguage(lang);
+}
Smt2Input::~Smt2Input() {
d_pSmt2Lexer->free(d_pSmt2Lexer);
d_pSmt2Parser->free(d_pSmt2Parser);
}
+void Smt2Input::setLanguage(InputLanguage lang) {
+ CheckArgument(lang == language::input::LANG_SMTLIB_V2_0 ||
+ lang == language::input::LANG_SMTLIB_V2_5, lang);
+ d_lang = lang;
+}
+
Command* Smt2Input::parseCommand() {
return d_pSmt2Parser->parseCommand(d_pSmt2Parser);
}
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback