summaryrefslogtreecommitdiff
path: root/src/bindings
diff options
context:
space:
mode:
authorMorgan Deters <mdeters@gmail.com>2012-11-17 04:05:17 +0000
committerMorgan Deters <mdeters@gmail.com>2012-11-17 04:05:17 +0000
commit44498017455cce207bf9cb0a1ebbf67c4a4d77cf (patch)
tree18f0bf80ea93cfd1f0e49cf38b7f0baf2d457285 /src/bindings
parentdb35c4be8bd37746e1c27e446291c82556df1d05 (diff)
* Fix for bug 445 agreed to in meeting 11/13/2012: always dump in ALL_SUPPORTED logic
* Java bindings fixes: fixed access to ostreams, iterators * Make SmtEngine::setUserAttribute() (and others) take a const string& * Also a few compliance fixes (this commit was certified error- and warning-free by the test-and-commit script.)
Diffstat (limited to 'src/bindings')
-rw-r--r--src/bindings/Makefile.am15
-rw-r--r--src/bindings/java_iterator_adapter.h25
-rw-r--r--src/bindings/java_output_stream_adapter.h13
3 files changed, 47 insertions, 6 deletions
diff --git a/src/bindings/Makefile.am b/src/bindings/Makefile.am
index a747a3812..bd0bad6ba 100644
--- a/src/bindings/Makefile.am
+++ b/src/bindings/Makefile.am
@@ -160,7 +160,10 @@ CLEANFILES = \
ruby.cpp \
tcl.cpp
-EXTRA_DIST = swig.h
+EXTRA_DIST = \
+ swig.h \
+ java_iterator_adapter.h \
+ java_output_stream_adapter.h
MOSTLYCLEANFILES = \
.swig_deps \
@@ -171,11 +174,11 @@ java_libcvc4jni_la-java.lo java.lo: java.cpp
$(AM_V_CXX)$(LTCXXCOMPILE) -c $(JAVA_CPPFLAGS) $(java_libcvc4jni_la_CXXFLAGS) -o $@ $<
CVC4.jar: java.cpp
$(AM_V_GEN) \
- (cd java; \
- rm -fr classes; \
- mkdir -p classes; \
- $(JAVAC) -classpath . -d classes `find . -name '*.java'`; \
- cd classes); \
+ (cd java && \
+ rm -fr classes && \
+ mkdir -p classes && \
+ $(JAVAC) -classpath . -d classes `find . -name '*.java'` && \
+ cd classes) && \
$(JAR) cf $@ -C java/classes .
#java.cpp:;
csharp.lo: csharp.cpp
diff --git a/src/bindings/java_iterator_adapter.h b/src/bindings/java_iterator_adapter.h
new file mode 100644
index 000000000..16c968a47
--- /dev/null
+++ b/src/bindings/java_iterator_adapter.h
@@ -0,0 +1,25 @@
+namespace CVC4 {
+
+template <class T>
+class JavaIteratorAdapter {
+ const T& d_t;
+ typename T::const_iterator d_it;
+
+public:
+ JavaIteratorAdapter(const T& t) :
+ d_t(t),
+ d_it(d_t.begin()) {
+ }
+
+ bool hasNext() {
+ return d_it != d_t.end();
+ }
+
+ typename T::const_iterator::value_type getNext() {
+ typename T::const_iterator::value_type ret = *d_it;
+ ++d_it;
+ return ret;
+ }
+};/* class JavaIteratorAdapter<T> */
+
+}/* CVC4 namespace */
diff --git a/src/bindings/java_output_stream_adapter.h b/src/bindings/java_output_stream_adapter.h
new file mode 100644
index 000000000..e6f7d6786
--- /dev/null
+++ b/src/bindings/java_output_stream_adapter.h
@@ -0,0 +1,13 @@
+namespace CVC4 {
+
+class JavaOutputStreamAdapter {
+ std::stringstream d_ss;
+
+public:
+ JavaOutputStreamAdapter() { }
+
+ std::string toString() { return d_ss.str(); }
+
+};/* class JavaOutputStreamAdapter */
+
+}/* CVC4 namespace */
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback