summaryrefslogtreecommitdiff
path: root/src/cvc4.i
diff options
context:
space:
mode:
authorMorgan Deters <mdeters@gmail.com>2011-09-21 03:26:13 +0000
committerMorgan Deters <mdeters@gmail.com>2011-09-21 03:26:13 +0000
commit3b1689612bb2ff984aa90cd84093ffc043d78ba9 (patch)
tree872cf423273a331e110ff3868cd5281c960dd3b1 /src/cvc4.i
parent69d8f8da6bbb856964d47a583ceb4e50060e9457 (diff)
considerable bindings interface work, some improvements to build
Diffstat (limited to 'src/cvc4.i')
-rw-r--r--src/cvc4.i23
1 files changed, 19 insertions, 4 deletions
diff --git a/src/cvc4.i b/src/cvc4.i
index 4c574f16c..e69150b7b 100644
--- a/src/cvc4.i
+++ b/src/cvc4.i
@@ -1,20 +1,33 @@
%import "bindings/swig.h"
-%module cvc4
-%nspace;
+%module CVC4
+// nspace completely broken with Java packaging
+//%nspace;
%{
-namespace CVC4 {}
+namespace CVC4 { class Exception; }
using namespace CVC4;
%}
+%exception {
+ try {
+ $action
+ } catch(CVC4::Exception& e) {
+ ::std::cerr << e << ::std::endl;
+ jclass clazz = jenv->FindClass("java/lang/RuntimeException");
+ jenv->ThrowNew(clazz, e.toString().c_str());
+ }
+}
+
+%include "std_string.i" // map std::string to java.lang.String
+
%include "util/integer.i"
%include "util/rational.i"
+%include "util/stats.i"
%include "util/exception.i"
%include "util/language.i"
%include "util/options.i"
%include "util/cardinality.i"
-%include "util/stats.i"
%include "util/bool.i"
%include "util/sexpr.i"
%include "util/datatype.i"
@@ -40,3 +53,5 @@ using namespace CVC4;
%include "smt/bad_option_exception.i"
%include "smt/no_such_function_exception.i"
%include "smt/modal_exception.i"
+
+%include "parser/cvc4parser.i"
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback