summaryrefslogtreecommitdiff
path: root/src/expr
diff options
context:
space:
mode:
authorMorgan Deters <mdeters@gmail.com>2012-07-14 22:53:58 +0000
committerMorgan Deters <mdeters@gmail.com>2012-07-14 22:53:58 +0000
commit4941b3c516361183b4623f5660128e4f1bcce809 (patch)
tree5a996a0778b9a78b27b041fa582ff5585b710013 /src/expr
parent1c42109395b566a0068cc3ae9067fc87ab8f8e7b (diff)
Type enumerator infrastructure and uninterpreted constant support. No support yet for enumerating arrays, or for enumerating non-trivial datatypes.
Diffstat (limited to 'src/expr')
-rwxr-xr-xsrc/expr/mkexpr6
-rwxr-xr-xsrc/expr/mkkind6
-rwxr-xr-xsrc/expr/mkmetakind6
-rw-r--r--src/expr/type.h1
4 files changed, 18 insertions, 1 deletions
diff --git a/src/expr/mkexpr b/src/expr/mkexpr
index e113a1e8f..8b21814dc 100755
--- a/src/expr/mkexpr
+++ b/src/expr/mkexpr
@@ -114,6 +114,12 @@ function endtheory {
seen_endtheory=true
}
+function enumerator {
+ # enumerator KIND enumerator-class header
+ lineno=${BASH_LINENO[0]}
+ check_theory_seen
+}
+
function typechecker {
# typechecker header
lineno=${BASH_LINENO[0]}
diff --git a/src/expr/mkkind b/src/expr/mkkind
index 2f361cb63..89e77754f 100755
--- a/src/expr/mkkind
+++ b/src/expr/mkkind
@@ -124,6 +124,12 @@ function endtheory {
seen_endtheory=true
}
+function enumerator {
+ # enumerator KIND enumerator-class header
+ lineno=${BASH_LINENO[0]}
+ check_theory_seen
+}
+
function typechecker {
# typechecker header
lineno=${BASH_LINENO[0]}
diff --git a/src/expr/mkmetakind b/src/expr/mkmetakind
index 2e94e41be..654a1f94f 100755
--- a/src/expr/mkmetakind
+++ b/src/expr/mkmetakind
@@ -99,6 +99,12 @@ function endtheory {
seen_endtheory=true
}
+function enumerator {
+ # enumerator KIND enumerator-class header
+ lineno=${BASH_LINENO[0]}
+ check_theory_seen
+}
+
function typechecker {
# typechecker header
lineno=${BASH_LINENO[0]}
diff --git a/src/expr/type.h b/src/expr/type.h
index 8e9190ac5..a813aec02 100644
--- a/src/expr/type.h
+++ b/src/expr/type.h
@@ -91,7 +91,6 @@ class CVC4_PUBLIC Type {
friend class ExprManager;
friend class NodeManager;
friend class TypeNode;
- friend struct TypeHashStrategy;
friend std::ostream& CVC4::operator<<(std::ostream& out, const Type& t);
friend TypeNode expr::exportTypeInternal(TypeNode n, NodeManager* from, NodeManager* nm, ExprManagerMapCollection& vmap);
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback