All Classes and Interfaces
Class
Description
Specifies a C++ class to act as an adapter between a target type and one or more adaptee type(s).
An annotation indicating that a method should behave like an allocator.
An annotation indicating that a method should behave like an array allocator.
Indicates that
String
should be mapped to array of UTF-16
code units (unsigned short*
) instead of byte array (const char*
).An indexer for a
short[]
array, treated as bfloat16.An indexer for a
ShortBuffer
, treated as bfloat16.Abstract indexer for the
short
primitive type, treated as bfloat16.An indexer for a
ShortPointer
using the Raw
instance, treated as bfloat16.An indexer for a
boolean[]
array.An indexer for a
ByteBuffer
as boolean
values.Abstract indexer for the
boolean
primitive type.The peer class to native pointers and arrays of
jboolean
.An indexer for a
BooleanPointer
using the Raw
instance.The peer class to native pointers and arrays of
bool
.Classes implementing
InfoMapper
can additionally implement this interface
to receive the logger, properties, and encoding associated with the current build session.The Builder is responsible for coordinating efforts between the Parser, the
Generator, and the native compiler.
A Maven Mojo to call the
Builder
(C++ header file -> Java class -> C++ JNI -> native library).Indicates that an argument should get passed or returned by pointer.
Indicates that an argument gets passed or returned by a pointer to a pointer.
Indicates that an argument gets passed or returned by a reference to a pointer.
Indicates that an argument gets passed or returned by reference.
An indexer for a
byte[]
array.An indexer for a
ByteBuffer
.Abstract indexer for the
byte
primitive type.The peer class to native pointers and arrays of
signed char
, including strings.An indexer for a
BytePointer
using the Raw
instance.Indicates that an argument gets passed or returned by value.
A Maven Mojo to call the
Loader
on all classes found in the project,
as well as call all cachePackage()
methods found on them.Indicates a type cast required on the argument to satisfy the native compiler.
An indexer for a
char[]
array.An indexer for a
CharBuffer
.Abstract indexer for the
char
primitive type.The peer class to native pointers and arrays of
short
for UTF-16.An indexer for a
CharPointer
using the Raw
instance.An interface used by
ClassScanner
to determine which classes to load.Does the heavy lifting of collecting values off Properties annotations found
on enclosing classes.
Given a
UserClassLoader
, attempts to match and fill in a Collection
of Class
, in various ways in which users may wish to do so.A Maven Mojo to call
Loader.clearCacheDir()
.The peer class to native pointers and arrays of
long
.A wrapper for ProcessBuilder that can be overridden easily for frameworks like Gradle that don't support it well.
A shortcut annotation to
Cast
that simply adds const
to the parameter type, function, or class.Specifies the calling convention of a
FunctionPointer
.In some methods,
Generator
will generate code to transfer arrays from the
JVM to native code using the Get/Release<primitivetype>ArrayElements
methods.Documentation tags, where we keep only the ones that could be compatible between Javadoc and Doxygen.
An indexer for a
double[]
array.An indexer for a
DoubleBuffer
.Abstract indexer for the
double
primitive type.The peer class to native pointers and arrays of
double
.An indexer for a
DoublePointer
using the Raw
instance.An indexer for a
float[]
array.An indexer for a
FloatBuffer
.Abstract indexer for the
float
primitive type.The peer class to native pointers and arrays of
float
.An indexer for a
FloatPointer
using the Raw
instance.Overrides the detection of allocators, getters, and setters.
All peer classes to function pointers must derive from FunctionPointer.
The Generator is where all the C++ source code that we need gets generated.
An indexer for a
short[]
array, treated as half-precision float.An indexer for a
ShortBuffer
, treated as half-precision float.Abstract indexer for the
short
primitive type, treated as half-precision float.An indexer for a
ShortPointer
using the Raw
instance, treated as half-precision float.A hyperslab is a rectangular pattern defined by four arrays.
Allows using method arguments to call
operator[]
in some circumstances.Provides an interface for classes that compute a linear index from given array sizes.
An interface implemented to let users access data classes via an
Indexer
.Top-level class of all data indexers, providing easy-to-use and efficient
multidimensional access to primitive arrays, NIO buffers, and the raw memory interface.
Holds information useful to the
Parser
and associated with C++ identifiers.An interface to define a kind of configuration file entirely written in Java.
An indexer for an
int[]
array.An indexer for an
IntBuffer
.Abstract indexer for the
int
primitive type.The peer class to native pointers and arrays of
int
, also used for UTF-32.An indexer for an
IntPointer
using the Raw
instance.Classes implementing this interface can access and modify the
ClassProperties
produced from their Properties
when Loader.load(Class)
gets called on them.The Loader contains functionality to load native libraries, but also has a bit
of everything that does not fit anywhere else.
A simple but extensible logging interface that dumps messages to the "standard" output streams by default.
An indexer for a
long[]
array.An indexer for a
LongBuffer
.Abstract indexer for the
long
primitive type.The peer class to native pointers and arrays of
long long
.An indexer for a
LongPointer
using the Raw
instance.An annotation indicating that a method should behave like a member getter.
An annotation indicating that a method should behave like a member setter.
Names the identifier of a native C++ struct, class, union, function, variable,
operator, macro, etc.
Encloses the scope of a Java class inside the scope of the given C++ namespace.
By default, all allocators attach a deallocator to the peer object on creation.
By default,
Generator
assumes all native functions may throw exceptions.By default,
Generator
applies offsetof()
to all member variables.An Index that supports only one size (a single dimension).
This annotation must be used for native types that get declared but not defined.
A shorthand for
@Adapter("OptionalAdapter<type>")
.A
BuildMojo
that always forces BuildMojo.generate
to false,
with the goal of parsing header files instead.The Parser, just like the Generator, is a mess that is not meant to support the
entirety of C++, but an appropriate subset as used by typical C/C++ header files.
Defines native properties for a top-level enclosing class as well as indicates
classes and methods that should be generated or not, for specified platforms.
All peer classes to native types must be descended from Pointer, the topmost class.
A
Pointer.Deallocator
that calls, during garbage collection, a method with signature
static void deallocate()
from the Pointer object passed to the constructor
and that accepts it as argument.The interface to implement to produce a Deallocator usable by Pointer.
A subclass of
PhantomReference
that also acts as a linked
list to keep their references alive until they get garbage collected.A
Pointer.Deallocator
that calls, during garbage collection, a native function.A
Pointer.Deallocator
that keeps and uses a strong reference to a Buffer or another Pointer.The peer class to native pointers and arrays of
void*
.Pointer
objects attach themselves automatically on Pointer.init(long, long, long, long)
to the first PointerScope
found in PointerScope.scopeStack
that they can to based on the classes found in PointerScope.forClasses
.Makes it possible to define more than one set of properties for each platform.
Allows passing and returning Java objects with native functions and raw JNI types.
The raw memory interface supporting long indexing.
A raw memory interface based on
UnsafeRaw
that swaps the bytes.A shorthand for
@Adapter("SharedPtrAdapter<type>")
.An indexer for a
short[]
array.An indexer for a
ShortBuffer
.Abstract indexer for the
short
primitive type.The peer class to native pointers and arrays of
short
.An indexer for a
ShortPointer
using the Raw
instance.The peer class to native pointers and arrays of
size_t
.A logger that delegates messages to SLF4J.
A shorthand for
@Adapter("MoveAdapter<type>")
.A shorthand for
@Cast("std::string&") @Adapter("StringAdapter<char>")
.A shorthand for
@Adapter("VectorAdapter<type>")
.A shorthand for
@Cast("std::wstring&") @Adapter("StringAdapter<wchar_t>")
.An Index that computes a linear index from given array sizes and strides.
An indexer for a
byte[]
array, treated as unsigned.An indexer for a
ByteBuffer
, treated as unsigned.Abstract indexer for the
byte
primitive type, treated as unsigned.An indexer for a
BytePointer
using the Raw
instance, treated as unsigned.An indexer for a
int[]
array, treated as unsigned.An indexer for a
IntBuffer
, treated as unsigned.Abstract indexer for the
int
primitive type, treated as unsigned.An indexer for a
IntPointer
using the Raw
instance, treated as unsigned.An indexer for a
long[]
array, treated as unsigned.An indexer for a
LongBuffer
, treated as unsigned.Abstract indexer for the
long
primitive type, treated as unsigned.An indexer for a
LongPointer
using the Raw
instance, treated as unsigned.A shorthand for
@Adapter("UniquePtrAdapter<type>")
.The raw memory interface based on
Unsafe
.An extension of
URLClassLoader
that keeps a list of paths in memory.An indexer for a
short[]
array, treated as unsigned.An indexer for a
ShortBuffer
, treated as unsigned.Abstract indexer for the
short
primitive type, treated as unsigned.An indexer for a
ShortPointer
using the Raw
instance, treated as unsigned.An annotation indicating that a method should behave like a value getter.
An annotation indicating that a method should behave like a value setter.
Indicates that a method maps to a virtual function in C++.