summaryrefslogtreecommitdiff
path: root/src/expr/mkexpr
diff options
context:
space:
mode:
authorMorgan Deters <mdeters@gmail.com>2012-08-03 20:39:25 +0000
committerMorgan Deters <mdeters@gmail.com>2012-08-03 20:39:25 +0000
commit3daaecd22fe5f6147cb08e5a4e08177b33a2daa2 (patch)
tree46cb65c3673a5678a7779ff970aea9460233f1f1 /src/expr/mkexpr
parente26a44d5f98a9953dffeb07b29a21e7efd501684 (diff)
fix uses of getMetaKind() from outside the expr package. (they now use isConst() and isVar() as appropriate)
also some base infrastructure for the new ::isConst().
Diffstat (limited to 'src/expr/mkexpr')
-rwxr-xr-xsrc/expr/mkexpr14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/expr/mkexpr b/src/expr/mkexpr
index 8b21814dc..28a47d84d 100755
--- a/src/expr/mkexpr
+++ b/src/expr/mkexpr
@@ -62,6 +62,9 @@ mkConst_instantiations=
mkConst_implementations=
exportConstant_cases=
+typerules=
+construles=
+
seen_theory=false
seen_theory_builtin=false
@@ -139,6 +142,16 @@ function typerule {
"
}
+function construle {
+ # isconst OPERATOR isconst-checking-class
+ lineno=${BASH_LINENO[0]}
+ check_theory_seen
+ construles="${construles}
+ case kind::$1:
+ return $2::computeIsConst(nodeManager, n);
+"
+}
+
function sort {
# sort TYPE cardinality [well-founded ground-term header | not-well-founded] ["comment"]
lineno=${BASH_LINENO[0]}
@@ -262,6 +275,7 @@ for var in \
exportConstant_cases \
typechecker_includes \
typerules \
+ construles \
; do
eval text="\${text//\\\$\\{$var\\}/\${$var}}"
done
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback