summaryrefslogtreecommitdiff
path: root/src/smt/command.cpp
diff options
context:
space:
mode:
authorGereon Kremer <nafur42@gmail.com>2021-08-25 17:19:41 -0700
committerGitHub <noreply@github.com>2021-08-26 00:19:41 +0000
commit71f025753f734ddade5da333dfe2d144fbc13221 (patch)
tree271e0a03b5612652d5fdb040fa2d7f43e8644aea /src/smt/command.cpp
parent78d29da02099762374adeb694ed96c496c7e1ffc (diff)
Consolidate language types (#7065)
This PR combines the two enums InputLanguage and OutputLanguage into a single Language type. It makes sure that AST is not used as input language using a predicate whenever the option is set.
Diffstat (limited to 'src/smt/command.cpp')
-rw-r--r--src/smt/command.cpp98
1 files changed, 49 insertions, 49 deletions
diff --git a/src/smt/command.cpp b/src/smt/command.cpp
index 3dafdd7f0..e6be0a646 100644
--- a/src/smt/command.cpp
+++ b/src/smt/command.cpp
@@ -223,7 +223,7 @@ std::string Command::toString() const
return ss.str();
}
-void CommandStatus::toStream(std::ostream& out, OutputLanguage language) const
+void CommandStatus::toStream(std::ostream& out, Language language) const
{
Printer::getPrinter(language)->toStream(out, this);
}
@@ -300,7 +300,7 @@ std::string EmptyCommand::getCommandName() const { return "empty"; }
void EmptyCommand::toStream(std::ostream& out,
int toDepth,
size_t dag,
- OutputLanguage language) const
+ Language language) const
{
Printer::getPrinter(language)->toStreamCmdEmpty(out, d_name);
}
@@ -347,7 +347,7 @@ std::string EchoCommand::getCommandName() const { return "echo"; }
void EchoCommand::toStream(std::ostream& out,
int toDepth,
size_t dag,
- OutputLanguage language) const
+ Language language) const
{
Printer::getPrinter(language)->toStreamCmdEcho(out, d_output);
}
@@ -383,7 +383,7 @@ std::string AssertCommand::getCommandName() const { return "assert"; }
void AssertCommand::toStream(std::ostream& out,
int toDepth,
size_t dag,
- OutputLanguage language) const
+ Language language) const
{
Printer::getPrinter(language)->toStreamCmdAssert(out, termToNode(d_term));
}
@@ -415,7 +415,7 @@ std::string PushCommand::getCommandName() const { return "push"; }
void PushCommand::toStream(std::ostream& out,
int toDepth,
size_t dag,
- OutputLanguage language) const
+ Language language) const
{
Printer::getPrinter(language)->toStreamCmdPush(out);
}
@@ -447,7 +447,7 @@ std::string PopCommand::getCommandName() const { return "pop"; }
void PopCommand::toStream(std::ostream& out,
int toDepth,
size_t dag,
- OutputLanguage language) const
+ Language language) const
{
Printer::getPrinter(language)->toStreamCmdPop(out);
}
@@ -504,7 +504,7 @@ std::string CheckSatCommand::getCommandName() const { return "check-sat"; }
void CheckSatCommand::toStream(std::ostream& out,
int toDepth,
size_t dag,
- OutputLanguage language) const
+ Language language) const
{
Printer::getPrinter(language)->toStreamCmdCheckSat(out, termToNode(d_term));
}
@@ -578,7 +578,7 @@ std::string CheckSatAssumingCommand::getCommandName() const
void CheckSatAssumingCommand::toStream(std::ostream& out,
int toDepth,
size_t dag,
- OutputLanguage language) const
+ Language language) const
{
Printer::getPrinter(language)->toStreamCmdCheckSatAssuming(
out, termVectorToNodes(d_terms));
@@ -629,7 +629,7 @@ std::string QueryCommand::getCommandName() const { return "query"; }
void QueryCommand::toStream(std::ostream& out,
int toDepth,
size_t dag,
- OutputLanguage language) const
+ Language language) const
{
Printer::getPrinter(language)->toStreamCmdQuery(out, termToNode(d_term));
}
@@ -666,7 +666,7 @@ std::string DeclareSygusVarCommand::getCommandName() const
void DeclareSygusVarCommand::toStream(std::ostream& out,
int toDepth,
size_t dag,
- OutputLanguage language) const
+ Language language) const
{
Printer::getPrinter(language)->toStreamCmdDeclareVar(
out, termToNode(d_var), sortToTypeNode(d_sort));
@@ -723,7 +723,7 @@ std::string SynthFunCommand::getCommandName() const
void SynthFunCommand::toStream(std::ostream& out,
int toDepth,
size_t dag,
- OutputLanguage language) const
+ Language language) const
{
std::vector<Node> nodeVars = termVectorToNodes(d_vars);
Printer::getPrinter(language)->toStreamCmdSynthFun(
@@ -770,7 +770,7 @@ std::string SygusConstraintCommand::getCommandName() const
void SygusConstraintCommand::toStream(std::ostream& out,
int toDepth,
size_t dag,
- OutputLanguage language) const
+ Language language) const
{
Printer::getPrinter(language)->toStreamCmdConstraint(out, termToNode(d_term));
}
@@ -825,7 +825,7 @@ std::string SygusInvConstraintCommand::getCommandName() const
void SygusInvConstraintCommand::toStream(std::ostream& out,
int toDepth,
size_t dag,
- OutputLanguage language) const
+ Language language) const
{
Printer::getPrinter(language)->toStreamCmdInvConstraint(
out,
@@ -866,7 +866,7 @@ void CheckSynthCommand::invoke(api::Solver* solver, SymbolManager* sm)
{
std::vector<api::Term> synthFuns = sm->getFunctionsToSynthesize();
d_solution << "(" << std::endl;
- Printer* p = Printer::getPrinter(language::output::LANG_SYGUS_V2);
+ Printer* p = Printer::getPrinter(Language::LANG_SYGUS_V2);
for (api::Term& f : synthFuns)
{
api::Term sol = solver->getSynthSolution(f);
@@ -916,7 +916,7 @@ std::string CheckSynthCommand::getCommandName() const { return "check-synth"; }
void CheckSynthCommand::toStream(std::ostream& out,
int toDepth,
size_t dag,
- OutputLanguage language) const
+ Language language) const
{
Printer::getPrinter(language)->toStreamCmdCheckSynth(out);
}
@@ -945,7 +945,7 @@ std::string ResetCommand::getCommandName() const { return "reset"; }
void ResetCommand::toStream(std::ostream& out,
int toDepth,
size_t dag,
- OutputLanguage language) const
+ Language language) const
{
Printer::getPrinter(language)->toStreamCmdReset(out);
}
@@ -981,7 +981,7 @@ std::string ResetAssertionsCommand::getCommandName() const
void ResetAssertionsCommand::toStream(std::ostream& out,
int toDepth,
size_t dag,
- OutputLanguage language) const
+ Language language) const
{
Printer::getPrinter(language)->toStreamCmdResetAssertions(out);
}
@@ -1002,7 +1002,7 @@ std::string QuitCommand::getCommandName() const { return "exit"; }
void QuitCommand::toStream(std::ostream& out,
int toDepth,
size_t dag,
- OutputLanguage language) const
+ Language language) const
{
Printer::getPrinter(language)->toStreamCmdQuit(out);
}
@@ -1025,7 +1025,7 @@ std::string CommentCommand::getCommandName() const { return "comment"; }
void CommentCommand::toStream(std::ostream& out,
int toDepth,
size_t dag,
- OutputLanguage language) const
+ Language language) const
{
Printer::getPrinter(language)->toStreamCmdComment(out, d_comment);
}
@@ -1123,7 +1123,7 @@ std::string CommandSequence::getCommandName() const { return "sequence"; }
void CommandSequence::toStream(std::ostream& out,
int toDepth,
size_t dag,
- OutputLanguage language) const
+ Language language) const
{
Printer::getPrinter(language)->toStreamCmdCommandSequence(out,
d_commandSequence);
@@ -1136,7 +1136,7 @@ void CommandSequence::toStream(std::ostream& out,
void DeclarationSequence::toStream(std::ostream& out,
int toDepth,
size_t dag,
- OutputLanguage language) const
+ Language language) const
{
Printer::getPrinter(language)->toStreamCmdDeclarationSequence(
out, d_commandSequence);
@@ -1190,7 +1190,7 @@ std::string DeclareFunctionCommand::getCommandName() const
void DeclareFunctionCommand::toStream(std::ostream& out,
int toDepth,
size_t dag,
- OutputLanguage language) const
+ Language language) const
{
Printer::getPrinter(language)->toStreamCmdDeclareFunction(
out, d_func.toString(), sortToTypeNode(d_sort));
@@ -1241,7 +1241,7 @@ std::string DeclarePoolCommand::getCommandName() const
void DeclarePoolCommand::toStream(std::ostream& out,
int toDepth,
size_t dag,
- OutputLanguage language) const
+ Language language) const
{
Printer::getPrinter(language)->toStreamCmdDeclarePool(
out,
@@ -1283,7 +1283,7 @@ std::string DeclareSortCommand::getCommandName() const
void DeclareSortCommand::toStream(std::ostream& out,
int toDepth,
size_t dag,
- OutputLanguage language) const
+ Language language) const
{
Printer::getPrinter(language)->toStreamCmdDeclareType(out,
sortToTypeNode(d_sort));
@@ -1326,7 +1326,7 @@ std::string DefineSortCommand::getCommandName() const { return "define-sort"; }
void DefineSortCommand::toStream(std::ostream& out,
int toDepth,
size_t dag,
- OutputLanguage language) const
+ Language language) const
{
Printer::getPrinter(language)->toStreamCmdDefineType(
out, d_symbol, sortVectorToTypeNodes(d_params), sortToTypeNode(d_sort));
@@ -1399,7 +1399,7 @@ std::string DefineFunctionCommand::getCommandName() const
void DefineFunctionCommand::toStream(std::ostream& out,
int toDepth,
size_t dag,
- OutputLanguage language) const
+ Language language) const
{
TypeNode rangeType = termToNode(d_func).getType();
if (rangeType.isFunction())
@@ -1483,7 +1483,7 @@ std::string DefineFunctionRecCommand::getCommandName() const
void DefineFunctionRecCommand::toStream(std::ostream& out,
int toDepth,
size_t dag,
- OutputLanguage language) const
+ Language language) const
{
std::vector<std::vector<Node>> formals;
formals.reserve(d_formals.size());
@@ -1524,7 +1524,7 @@ std::string DeclareHeapCommand::getCommandName() const
void DeclareHeapCommand::toStream(std::ostream& out,
int toDepth,
size_t dag,
- OutputLanguage language) const
+ Language language) const
{
Printer::getPrinter(language)->toStreamCmdDeclareHeap(
out, sortToTypeNode(d_locSort), sortToTypeNode(d_dataSort));
@@ -1578,7 +1578,7 @@ std::string SimplifyCommand::getCommandName() const { return "simplify"; }
void SimplifyCommand::toStream(std::ostream& out,
int toDepth,
size_t dag,
- OutputLanguage language) const
+ Language language) const
{
Printer::getPrinter(language)->toStreamCmdSimplify(out, termToNode(d_term));
}
@@ -1658,7 +1658,7 @@ std::string GetValueCommand::getCommandName() const { return "get-value"; }
void GetValueCommand::toStream(std::ostream& out,
int toDepth,
size_t dag,
- OutputLanguage language) const
+ Language language) const
{
Printer::getPrinter(language)->toStreamCmdGetValue(
out, termVectorToNodes(d_terms));
@@ -1739,7 +1739,7 @@ std::string GetAssignmentCommand::getCommandName() const
void GetAssignmentCommand::toStream(std::ostream& out,
int toDepth,
size_t dag,
- OutputLanguage language) const
+ Language language) const
{
Printer::getPrinter(language)->toStreamCmdGetAssignment(out);
}
@@ -1812,7 +1812,7 @@ std::string GetModelCommand::getCommandName() const { return "get-model"; }
void GetModelCommand::toStream(std::ostream& out,
int toDepth,
size_t dag,
- OutputLanguage language) const
+ Language language) const
{
Printer::getPrinter(language)->toStreamCmdGetModel(out);
}
@@ -1854,7 +1854,7 @@ std::string BlockModelCommand::getCommandName() const { return "block-model"; }
void BlockModelCommand::toStream(std::ostream& out,
int toDepth,
size_t dag,
- OutputLanguage language) const
+ Language language) const
{
Printer::getPrinter(language)->toStreamCmdBlockModel(out);
}
@@ -1911,7 +1911,7 @@ std::string BlockModelValuesCommand::getCommandName() const
void BlockModelValuesCommand::toStream(std::ostream& out,
int toDepth,
size_t dag,
- OutputLanguage language) const
+ Language language) const
{
Printer::getPrinter(language)->toStreamCmdBlockModelValues(
out, termVectorToNodes(d_terms));
@@ -1962,7 +1962,7 @@ std::string GetProofCommand::getCommandName() const { return "get-proof"; }
void GetProofCommand::toStream(std::ostream& out,
int toDepth,
size_t dag,
- OutputLanguage language) const
+ Language language) const
{
Printer::getPrinter(language)->toStreamCmdGetProof(out);
}
@@ -2022,7 +2022,7 @@ std::string GetInstantiationsCommand::getCommandName() const
void GetInstantiationsCommand::toStream(std::ostream& out,
int toDepth,
size_t dag,
- OutputLanguage language) const
+ Language language) const
{
Printer::getPrinter(language)->toStreamCmdGetInstantiations(out);
}
@@ -2111,7 +2111,7 @@ std::string GetInterpolCommand::getCommandName() const
void GetInterpolCommand::toStream(std::ostream& out,
int toDepth,
size_t dag,
- OutputLanguage language) const
+ Language language) const
{
Printer::getPrinter(language)->toStreamCmdGetInterpol(
out, d_name, termToNode(d_conj), grammarToTypeNode(d_sygus_grammar));
@@ -2196,7 +2196,7 @@ std::string GetAbductCommand::getCommandName() const { return "get-abduct"; }
void GetAbductCommand::toStream(std::ostream& out,
int toDepth,
size_t dag,
- OutputLanguage language) const
+ Language language) const
{
Printer::getPrinter(language)->toStreamCmdGetAbduct(
out, d_name, termToNode(d_conj), grammarToTypeNode(d_sygus_grammar));
@@ -2272,7 +2272,7 @@ std::string GetQuantifierEliminationCommand::getCommandName() const
void GetQuantifierEliminationCommand::toStream(std::ostream& out,
int toDepth,
size_t dag,
- OutputLanguage language) const
+ Language language) const
{
Printer::getPrinter(language)->toStreamCmdGetQuantifierElimination(
out, termToNode(d_term));
@@ -2334,7 +2334,7 @@ std::string GetUnsatAssumptionsCommand::getCommandName() const
void GetUnsatAssumptionsCommand::toStream(std::ostream& out,
int toDepth,
size_t dag,
- OutputLanguage language) const
+ Language language) const
{
Printer::getPrinter(language)->toStreamCmdGetUnsatAssumptions(out);
}
@@ -2411,7 +2411,7 @@ std::string GetUnsatCoreCommand::getCommandName() const
void GetUnsatCoreCommand::toStream(std::ostream& out,
int toDepth,
size_t dag,
- OutputLanguage language) const
+ Language language) const
{
Printer::getPrinter(language)->toStreamCmdGetUnsatCore(out);
}
@@ -2468,7 +2468,7 @@ std::string GetAssertionsCommand::getCommandName() const
void GetAssertionsCommand::toStream(std::ostream& out,
int toDepth,
size_t dag,
- OutputLanguage language) const
+ Language language) const
{
Printer::getPrinter(language)->toStreamCmdGetAssertions(out);
}
@@ -2515,7 +2515,7 @@ std::string SetBenchmarkStatusCommand::getCommandName() const
void SetBenchmarkStatusCommand::toStream(std::ostream& out,
int toDepth,
size_t dag,
- OutputLanguage language) const
+ Language language) const
{
Result::Sat status = Result::SAT_UNKNOWN;
switch (d_status)
@@ -2564,7 +2564,7 @@ std::string SetBenchmarkLogicCommand::getCommandName() const
void SetBenchmarkLogicCommand::toStream(std::ostream& out,
int toDepth,
size_t dag,
- OutputLanguage language) const
+ Language language) const
{
Printer::getPrinter(language)->toStreamCmdSetBenchmarkLogic(out, d_logic);
}
@@ -2609,7 +2609,7 @@ std::string SetInfoCommand::getCommandName() const { return "set-info"; }
void SetInfoCommand::toStream(std::ostream& out,
int toDepth,
size_t dag,
- OutputLanguage language) const
+ Language language) const
{
Printer::getPrinter(language)->toStreamCmdSetInfo(out, d_flag, d_value);
}
@@ -2665,7 +2665,7 @@ std::string GetInfoCommand::getCommandName() const { return "get-info"; }
void GetInfoCommand::toStream(std::ostream& out,
int toDepth,
size_t dag,
- OutputLanguage language) const
+ Language language) const
{
Printer::getPrinter(language)->toStreamCmdGetInfo(out, d_flag);
}
@@ -2709,7 +2709,7 @@ std::string SetOptionCommand::getCommandName() const { return "set-option"; }
void SetOptionCommand::toStream(std::ostream& out,
int toDepth,
size_t dag,
- OutputLanguage language) const
+ Language language) const
{
Printer::getPrinter(language)->toStreamCmdSetOption(out, d_flag, d_value);
}
@@ -2762,7 +2762,7 @@ std::string GetOptionCommand::getCommandName() const { return "get-option"; }
void GetOptionCommand::toStream(std::ostream& out,
int toDepth,
size_t dag,
- OutputLanguage language) const
+ Language language) const
{
Printer::getPrinter(language)->toStreamCmdGetOption(out, d_flag);
}
@@ -2807,7 +2807,7 @@ std::string DatatypeDeclarationCommand::getCommandName() const
void DatatypeDeclarationCommand::toStream(std::ostream& out,
int toDepth,
size_t dag,
- OutputLanguage language) const
+ Language language) const
{
Printer::getPrinter(language)->toStreamCmdDatatypeDeclaration(
out, sortVectorToTypeNodes(d_datatypes));
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback