#ifndef __ANTHEM__CONTEXT_H #define __ANTHEM__CONTEXT_H #include #include #include #include namespace anthem { //////////////////////////////////////////////////////////////////////////////////////////////////// // // Context // //////////////////////////////////////////////////////////////////////////////////////////////////// struct PredicateSignatureMeta { ast::PredicateSignature predicateSignature; bool used{false}; }; //////////////////////////////////////////////////////////////////////////////////////////////////// struct Context { Context() = default; explicit Context(output::Logger &&logger) : logger{std::move(logger)} { } output::Logger logger; bool performSimplification{false}; bool performCompletion{false}; std::optional> visiblePredicateSignatures; std::optional> externalPredicateSignatures; ast::ParenthesisStyle parenthesisStyle = ast::ParenthesisStyle::Normal; }; //////////////////////////////////////////////////////////////////////////////////////////////////// } #endif