diff options
author | Andres Noetzli <andres.noetzli@gmail.com> | 2020-03-11 06:54:50 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-03-11 06:54:50 -0700 |
commit | 2b355305ef635ddfaad7fe75c29221cb2f744a62 (patch) | |
tree | 1667cc362fcf2f770bf7a47b81d887f648c8a857 /src/theory/theory_rewriter.h | |
parent | edcc81b08b4d6c67da81b7ba2fcefbab3286f02c (diff) |
Introduce tables in the rewriter (#3742)
This commit adds tables in the rewriter that store which function should
be used to rewrite which kind. We have separate tables for `EQUAL`
because every theory has its own equality rewriter.
Diffstat (limited to 'src/theory/theory_rewriter.h')
-rw-r--r-- | src/theory/theory_rewriter.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/theory/theory_rewriter.h b/src/theory/theory_rewriter.h index e7dc782bb..311ab9020 100644 --- a/src/theory/theory_rewriter.h +++ b/src/theory/theory_rewriter.h @@ -24,6 +24,8 @@ namespace CVC4 { namespace theory { +class Rewriter; + /** * Theory rewriters signal whether more rewriting is needed (or not) * by using a member of this enumeration. See RewriteResponse, below. @@ -64,6 +66,13 @@ class TheoryRewriter virtual ~TheoryRewriter() = default; /** + * Registers the rewrites of a given theory with the rewriter. + * + * @param rewriter The rewriter to register the rewrites with. + */ + virtual void registerRewrites(Rewriter* rewriter) {} + + /** * Performs a pre-rewrite step. * * @param node The node to rewrite |