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
CLong
andSizeT
pointer read/write methods. - Renamed most pointer byteOffset methods with an -AtOffset suffix (for instance,
Pointer.getInt(long)
becomesgetIntAtOffset(long)
) - Inverted charset and
StringType
arguments inPointer.getString
/.setString
methods - Renamed
Pointer.withIO(PointerIO<U>)
toPointer.as(PointerIO<U>)
- Added
Pointer.asUntyped()
(equiv. toPointer.as((Class<?>)null)
) - Allow
pointerToBuffer
on a non-direct buffer (and addedPointer.updateBuffer
to 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>_LIBRARY
environment 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.