diff options
author | Volker Hilsheimer <volker.hilsheimer@qt.io> | 2023-09-17 13:19:52 +0200 |
---|---|---|
committer | Volker Hilsheimer <volker.hilsheimer@qt.io> | 2023-09-26 19:58:25 +0200 |
commit | 281f499b2025a0bf84ae62f1bb2e8a8ae4e6d2e4 (patch) | |
tree | 5a824c95bf2c1921b4db287aa192a1243c1beb3d | |
parent | 74b67c8f844baff744acbd2cdc69e5ef0384ac16 (diff) |
JNI: remove compatibility alias for CTString
Add compile-time testing to make sure that we can declare a JNI
class String that maps to java/lang/String.
Change-Id: I2b68b2b46112e56b279f3fcddc3d71847a005924
Reviewed-by: Petri Virkkunen <petri.virkkunen@qt.io>
Reviewed-by: Zoltan Gera <zoltan.gera@qt.io>
Reviewed-by: Tinja Paavoseppä <tinja.paavoseppa@qt.io>
-rw-r--r-- | src/corelib/kernel/qjnitypes_impl.h | 4 | ||||
-rw-r--r-- | tests/auto/corelib/kernel/qjnitypes/tst_qjnitypes.cpp | 6 |
2 files changed, 6 insertions, 4 deletions
diff --git a/src/corelib/kernel/qjnitypes_impl.h b/src/corelib/kernel/qjnitypes_impl.h index 5f87c97e5b..feab8c4781 100644 --- a/src/corelib/kernel/qjnitypes_impl.h +++ b/src/corelib/kernel/qjnitypes_impl.h @@ -131,10 +131,6 @@ struct CTString } }; -// compatibility alias until submodules are ported -template<size_t N_WITH_NULL, typename BaseType = char> -using String = CTString<N_WITH_NULL, BaseType>; - // Helper types that allow us to disable variadic overloads that would conflict // with overloads that take a const char*. template<typename T, size_t N = 0> struct IsStringType : std::false_type {}; diff --git a/tests/auto/corelib/kernel/qjnitypes/tst_qjnitypes.cpp b/tests/auto/corelib/kernel/qjnitypes/tst_qjnitypes.cpp index cbffb24ff8..856368355c 100644 --- a/tests/auto/corelib/kernel/qjnitypes/tst_qjnitypes.cpp +++ b/tests/auto/corelib/kernel/qjnitypes/tst_qjnitypes.cpp @@ -56,6 +56,12 @@ static_assert(QtJniTypes::Traits<QtJniTypes::JavaType>::signature() == "Lorg/qtp Q_DECLARE_JNI_TYPE(ArrayType, "[Lorg/qtproject/qt/ArrayType;") static_assert(QtJniTypes::Traits<QtJniTypes::ArrayType>::signature() == "[Lorg/qtproject/qt/ArrayType;"); +Q_DECLARE_JNI_CLASS(String, "java/lang/String"); +static_assert(QtJniTypes::Traits<jstring>::className() == "java/lang/String"); +static_assert(QtJniTypes::Traits<QtJniTypes::String>::className() == "java/lang/String"); +static_assert(QtJniTypes::Traits<QtJniTypes::String>::signature() == "Ljava/lang/String;"); +static_assert(QtJniTypes::Traits<QtJniTypes::String[]>::signature() == "[Ljava/lang/String;"); + Q_DECLARE_JNI_CLASS(QtTextToSpeech, "org/qtproject/qt/android/speech/QtTextToSpeech") static_assert(QtJniTypes::Traits<QtJniTypes::QtTextToSpeech>::className() == "org/qtproject/qt/android/speech/QtTextToSpeech"); |