SmtEngine* smt,
Env& env,
theory::booleans::CircuitPropagator* circuitPropagator)
- : d_smt(smt),
- d_env(env),
+ : EnvObj(env),
+ d_smt(smt),
d_circuitPropagator(circuitPropagator),
d_llm(env.getTopLevelSubstitutions(),
env.getUserContext(),
return d_env.getLogicInfo();
}
-theory::Rewriter* PreprocessingPassContext::getRewriter() const
-{
- return d_env.getRewriter();
-}
-
theory::TrustSubstitutionMap&
PreprocessingPassContext::getTopLevelSubstitutions() const
{
#include "context/cdhashset.h"
#include "preprocessing/learned_literal_manager.h"
+#include "smt/env_obj.h"
#include "theory/logic_info.h"
#include "util/resource_manager.h"
class SmtEngine;
class TheoryEngine;
-namespace theory {
-class Rewriter;
-}
-
namespace theory::booleans {
class CircuitPropagator;
}
namespace preprocessing {
-class PreprocessingPassContext
+class PreprocessingPassContext : protected EnvObj
{
public:
/** Constructor. */
/** Get the current logic info of the environment */
const LogicInfo& getLogicInfo() const;
- /** Get a pointer to the Rewriter owned by the associated Env. */
- theory::Rewriter* getRewriter() const;
-
/** Get a reference to the top-level substitution map */
theory::TrustSubstitutionMap& getTopLevelSubstitutions() const;
private:
/** Pointer to the SmtEngine that this context was created in. */
SmtEngine* d_smt;
- /** Reference to the environment. */
- Env& d_env;
/** Instance of the circuit propagator */
theory::booleans::CircuitPropagator* d_circuitPropagator;
/**