summaryrefslogtreecommitdiff
path: root/platform/android/src/conversion/constant.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'platform/android/src/conversion/constant.hpp')
-rw-r--r--platform/android/src/conversion/constant.hpp16
1 files changed, 16 insertions, 0 deletions
diff --git a/platform/android/src/conversion/constant.hpp b/platform/android/src/conversion/constant.hpp
index a9239fe845..b291f29f04 100644
--- a/platform/android/src/conversion/constant.hpp
+++ b/platform/android/src/conversion/constant.hpp
@@ -72,6 +72,17 @@ struct Converter<jni::Local<jni::Object<>>, std::array<float, N>> {
}
};
+template <std::size_t N>
+struct Converter<jni::Local<jni::Object<>>, std::array<double, N>> {
+ Result<jni::Local<jni::Object<>>> operator()(jni::JNIEnv& env, const std::array<double, N>& value) const {
+ std::vector<double> v;
+ for (const double& id : value) {
+ v.push_back(id);
+ }
+ return convert<jni::Local<jni::Object<>>, std::vector<double>>(env, v);
+ }
+};
+
template <>
struct Converter<jni::Local<jni::Object<>>, std::vector<std::string>> {
Result<jni::Local<jni::Object<>>> operator()(jni::JNIEnv& env, const std::vector<std::string>& value) const;
@@ -82,6 +93,11 @@ struct Converter<jni::Local<jni::Object<>>, std::vector<float>> {
Result<jni::Local<jni::Object<>>> operator()(jni::JNIEnv& env, const std::vector<float>& value) const;
};
+template <>
+struct Converter<jni::Local<jni::Object<>>, std::vector<double>> {
+ Result<jni::Local<jni::Object<>>> operator()(jni::JNIEnv& env, const std::vector<double>& value) const;
+};
+
template <class T>
struct Converter<jni::Local<jni::Object<>>, T, typename std::enable_if_t<std::is_enum<T>::value>> {
Result<jni::Local<jni::Object<>>> operator()(jni::JNIEnv& env, const T& value) const {