BridJ 0.3 released (r1638) : fixes, fixes and (tiny) stylistic changes
BridJ received a lot of fixes and enhancements in this new version, notably thanks to the fact I’m using it in ScalaCL (and that I have more time for my hobby projects now).
Here are the main changes :
- Fixed binding of “c” library on Unix
- Fixed iteration on unbound native-allocated pointers (issue 37).
- Fixed Visual C++ demangling (issue 36 : bad handling of back-references).
- Added
Pointer.getBuffer(),getSizeTs(),getCLongs()and other missing methods. - Fixed byteOffset-related issues in
CLongandSizeTpointer read/write methods. - Renamed most pointer byteOffset methods with an -AtOffset suffix (for instance,
Pointer.getInt(long)becomesgetIntAtOffset(long)) - Inverted charset and
StringTypearguments inPointer.getString/.setStringmethods - Renamed
Pointer.withIO(PointerIO<U>)toPointer.as(PointerIO<U>) - Added
Pointer.asUntyped()(equiv. toPointer.as((Class<?>)null)) - Allow
pointerToBufferon a non-direct buffer (and addedPointer.updateBufferto copy data back to non-direct buffer if needed) - Assume
@Runtime(CRuntime.class)by default - Autodetect calling convention on Windows (based on name mangling), unless convention is explicitely specified with
@Convention(Style.X) - Added
BRIDJ_<LIBNAME>_LIBRARYenvironment variables to hard-code the shared library path in priority - Added library alias mechanism :
BridJ.setNativeLibraryActualName,.addNativeLibraryAlias - Fixed callbacks-related Win32 crashes
- Fixed super-critical bug on Windows 32 bits with size_t arguments !
- Fixed some Pointer endianness bugs
Now what ?
- Go download BridJ or use it from Maven / sbt !
- Browse 0.3 Javadoc, paying special attention to Pointer’s Javadoc (probably the most important class in BridJ).
- Join the NativeLibs4Java Google Group to discuss BridJ and ask for support.