diff options
author | PaulMeng <baolmeng@gmail.com> | 2016-04-20 14:43:18 -0500 |
---|---|---|
committer | PaulMeng <baolmeng@gmail.com> | 2016-04-20 14:43:18 -0500 |
commit | 904ffb6e73402bae537aa89e7fd8f0ab2e9d60e2 (patch) | |
tree | d96bb0c974bdea6170957d3e39d47a98f5c85ca0 /src/expr/expr_manager.i | |
parent | a0054e9cc78822416d745e955c30f69cbb2a3aa7 (diff) |
update from the master
Diffstat (limited to 'src/expr/expr_manager.i')
-rw-r--r-- | src/expr/expr_manager.i | 23 |
1 files changed, 19 insertions, 4 deletions
diff --git a/src/expr/expr_manager.i b/src/expr/expr_manager.i index 66930cf55..11c1e284d 100644 --- a/src/expr/expr_manager.i +++ b/src/expr/expr_manager.i @@ -40,7 +40,6 @@ %include "expr/expr_manager.h" -%template(mkConst) CVC4::ExprManager::mkConst<CVC4::TypeConstant>; %template(mkConst) CVC4::ExprManager::mkConst<CVC4::ArrayStoreAll>; %template(mkConst) CVC4::ExprManager::mkConst<CVC4::BitVectorSize>; %template(mkConst) CVC4::ExprManager::mkConst<CVC4::AscriptionType>; @@ -67,10 +66,7 @@ %template(mkConst) CVC4::ExprManager::mkConst<CVC4::UninterpretedConstant>; %template(mkConst) CVC4::ExprManager::mkConst<CVC4::kind::Kind_t>; %template(mkConst) CVC4::ExprManager::mkConst<CVC4::Datatype>; -%template(mkConst) CVC4::ExprManager::mkConst<CVC4::TupleSelect>; %template(mkConst) CVC4::ExprManager::mkConst<CVC4::TupleUpdate>; -%template(mkConst) CVC4::ExprManager::mkConst<CVC4::Record>; -%template(mkConst) CVC4::ExprManager::mkConst<CVC4::RecordSelect>; %template(mkConst) CVC4::ExprManager::mkConst<CVC4::RecordUpdate>; %template(mkConst) CVC4::ExprManager::mkConst<CVC4::Rational>; %template(mkConst) CVC4::ExprManager::mkConst<CVC4::BitVector>; @@ -78,6 +74,25 @@ %template(mkConst) CVC4::ExprManager::mkConst<CVC4::EmptySet>; %template(mkConst) CVC4::ExprManager::mkConst<CVC4::String>; %template(mkConst) CVC4::ExprManager::mkConst<CVC4::RegExp>; +#ifdef SWIGPYTHON +/* The python bindings cannot differentiate between bool and other basic + * types like enum and int. Therefore, we rename mkConst for the bool + * case into mkBoolConst. +*/ +%template(mkBoolConst) CVC4::ExprManager::mkConst<bool>; + +// These cases have trouble too. Remove them for now. +//%template(mkConst) CVC4::ExprManager::mkConst<CVC4::TypeConstant>; +//%template(mkConst) CVC4::ExprManager::mkConst<CVC4::TupleSelect>; +//%template(mkConst) CVC4::ExprManager::mkConst<CVC4::Record>; +//%template(mkConst) CVC4::ExprManager::mkConst<CVC4::RecordSelect>; + +#else +%template(mkConst) CVC4::ExprManager::mkConst<CVC4::TypeConstant>; +%template(mkConst) CVC4::ExprManager::mkConst<CVC4::TupleSelect>; +%template(mkConst) CVC4::ExprManager::mkConst<CVC4::Record>; +%template(mkConst) CVC4::ExprManager::mkConst<CVC4::RecordSelect>; %template(mkConst) CVC4::ExprManager::mkConst<bool>; +#endif %include "expr/expr_manager.h" |