diff options
author | Volker Hilsheimer <volker.hilsheimer@qt.io> | 2023-09-14 21:15:20 +0200 |
---|---|---|
committer | Volker Hilsheimer <volker.hilsheimer@qt.io> | 2023-10-16 18:43:16 +0200 |
commit | 80d4d55e250af1d643805bde3821987112cf09c1 (patch) | |
tree | 985611d8fcddadcdc7890479c83d8abdb9f3a5d5 /src/network/access/qhttpnetworkconnection.cpp | |
parent | 53f9768e6424f7b00946005f82f11d82facee35a (diff) |
JNI: add QJniArray class for easier working with arrays
Implements an iterator API and other standard member access functions
for sequential containers so that we can use ranged-for over an object
that is a jarray. Provides read-only access to individual elements
(which is mostly relevant for arrays of objects), or the entire data()
as a contiguous memory block (which is useful for arrays of primitive
types).
QJniObject call functions can return QJniArray<T> when the return type
is either explicitly QJniArray<T> or T[], or their Qt equivalent (e.g.
a jbyteArray can be taken or returned as a QByteArray). If the return
type is a jarray type, then a QJniObject is returned as before.
Arrays can be created from a Qt container through a constructor or the
generic fromData named constructor in the QJniArrayBase class, which
implements the generic logic.
Not documented as public API yet.
Added a compile-time test to verify that types are mapped correctly.
The function test coverage is added to the QJniObject auto-test, as
that already provides the Java test class with functions taking and
returning arrays of different types.
Change-Id: I0750fc4f4cce7314df3b10e122eafbcfd68297b6
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
Diffstat (limited to 'src/network/access/qhttpnetworkconnection.cpp')
0 files changed, 0 insertions, 0 deletions