diff options
author | Morgan Deters <mdeters@cs.nyu.edu> | 2013-01-28 17:31:57 -0500 |
---|---|---|
committer | Morgan Deters <mdeters@cs.nyu.edu> | 2013-03-22 18:54:52 -0400 |
commit | f44a81d1b62058fa56af952aa92be965690481e5 (patch) | |
tree | dc4b56e27701abd61ebd69675f86a9366d90998f /src/expr/node_builder.h | |
parent | 36816ad2537a2e6163037e9592c513b9a69aa9dc (diff) |
Support for Boolean term conversion in datatypes.
Diffstat (limited to 'src/expr/node_builder.h')
-rw-r--r-- | src/expr/node_builder.h | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/expr/node_builder.h b/src/expr/node_builder.h index 5f813dbe8..bd3827f47 100644 --- a/src/expr/node_builder.h +++ b/src/expr/node_builder.h @@ -713,6 +713,10 @@ public: operator Node(); operator Node() const; + // similarly for TypeNode + operator TypeNode(); + operator TypeNode() const; + NodeBuilder<nchild_thresh>& operator&=(TNode); NodeBuilder<nchild_thresh>& operator|=(TNode); NodeBuilder<nchild_thresh>& operator+=(TNode); @@ -902,6 +906,16 @@ NodeBuilder<nchild_thresh>::operator Node() const { } template <unsigned nchild_thresh> +NodeBuilder<nchild_thresh>::operator TypeNode() { + return constructTypeNode(); +} + +template <unsigned nchild_thresh> +NodeBuilder<nchild_thresh>::operator TypeNode() const { + return constructTypeNode(); +} + +template <unsigned nchild_thresh> expr::NodeValue* NodeBuilder<nchild_thresh>::constructNV() { Assert(!isUsed(), "NodeBuilder is one-shot only; " "attempt to access it after conversion"); |