summaryrefslogtreecommitdiff
path: root/platform/android/src/style/conversion/property_expression.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'platform/android/src/style/conversion/property_expression.hpp')
-rw-r--r--platform/android/src/style/conversion/property_expression.hpp31
1 files changed, 31 insertions, 0 deletions
diff --git a/platform/android/src/style/conversion/property_expression.hpp b/platform/android/src/style/conversion/property_expression.hpp
new file mode 100644
index 0000000000..ae9d4ea41c
--- /dev/null
+++ b/platform/android/src/style/conversion/property_expression.hpp
@@ -0,0 +1,31 @@
+#pragma once
+
+#include <mbgl/style/property_value.hpp>
+#include "../../conversion/conversion.hpp"
+#include "../../conversion/constant.hpp"
+#include "types.hpp"
+#include "../../java/lang.hpp"
+
+#include <jni/jni.hpp>
+#include "../../gson/json_element.hpp"
+
+#include <tuple>
+#include <map>
+
+namespace mbgl {
+namespace android {
+namespace conversion {
+
+template <class T>
+struct Converter<jni::Object<android::gson::JsonElement>, mbgl::style::PropertyExpression<T>> {
+
+ Result<jni::Object<android::gson::JsonElement>> operator()(jni::JNIEnv& env, const mbgl::style::PropertyExpression<T>& value) const {
+ // Convert expressions
+ mbgl::Value expressionValue = value.getExpression().serialize();
+ return gson::JsonElement::New(env, expressionValue);
+ }
+};
+
+} // namespace conversion
+} // namespace android
+} // namespace mbgl