diff options
author | Morgan Deters <mdeters@gmail.com> | 2012-11-17 04:05:17 +0000 |
---|---|---|
committer | Morgan Deters <mdeters@gmail.com> | 2012-11-17 04:05:17 +0000 |
commit | 44498017455cce207bf9cb0a1ebbf67c4a4d77cf (patch) | |
tree | 18f0bf80ea93cfd1f0e49cf38b7f0baf2d457285 /src/bindings | |
parent | db35c4be8bd37746e1c27e446291c82556df1d05 (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.am | 15 | ||||
-rw-r--r-- | src/bindings/java_iterator_adapter.h | 25 | ||||
-rw-r--r-- | src/bindings/java_output_stream_adapter.h | 13 |
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 */ |