summaryrefslogtreecommitdiff
path: root/test/api/ouroborous.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'test/api/ouroborous.cpp')
-rw-r--r--test/api/ouroborous.cpp9
1 files changed, 4 insertions, 5 deletions
diff --git a/test/api/ouroborous.cpp b/test/api/ouroborous.cpp
index b51982d59..c226da13b 100644
--- a/test/api/ouroborous.cpp
+++ b/test/api/ouroborous.cpp
@@ -102,10 +102,10 @@ std::string parse(std::string instr,
solver.setOption("input-language", input_language);
solver.setOption("output-language", output_language);
SymbolManager symman(&solver);
- Parser* parser = ParserBuilder(&solver, &symman, "internal-buffer")
- .withStringInput(declarations)
- .withInputLanguage(ilang)
- .build();
+ std::unique_ptr<Parser> parser(
+ ParserBuilder(&solver, &symman).withInputLanguage(ilang).build());
+ parser->setInput(
+ Input::newStringInput(ilang, declarations, "internal-buffer"));
// we don't need to execute the commands, but we DO need to parse them to
// get the declarations
while (Command* c = parser->nextCommand())
@@ -117,7 +117,6 @@ std::string parse(std::string instr,
api::Term e = parser->nextExpression();
std::string s = e.toString();
assert(parser->nextExpression().isNull()); // next expr should be null
- delete parser;
return s;
}
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback