diff options
Diffstat (limited to 'src/preproc/preprocessing_pass.h')
-rw-r--r-- | src/preproc/preprocessing_pass.h | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/src/preproc/preprocessing_pass.h b/src/preproc/preprocessing_pass.h index 739db58ff..dd5cb756a 100644 --- a/src/preproc/preprocessing_pass.h +++ b/src/preproc/preprocessing_pass.h @@ -7,6 +7,8 @@ #include <iostream> #include <vector> #include <string> + +#include "preproc/preprocessing_pass_registry.h" #include "smt/dump.h" #include "theory/rewriter.h" #include "theory/theory_engine.h" @@ -90,7 +92,14 @@ class PreprocessingPass { } } - PreprocessingPass(ResourceManager* resourceManager) : d_resourceManager(resourceManager) { + // TODO: instead of having a registerPass argument here, we should probably + // have two different subclasses of PreprocessingPass or a superclass for + // PreprocessingPass that does not do any registration. + PreprocessingPass(ResourceManager* resourceManager, bool registerPass = false) + : d_resourceManager(resourceManager) { + if (registerPass) { + PreprocessingPassRegistry::getInstance()->registerPass(this); + } } private: |