#include "constant.hpp" #include "collection.hpp" #include namespace mbgl { namespace android { namespace conversion { Result>> Converter>, bool>::operator()(jni::JNIEnv& env, const bool& value) const { return jni::Box(env, value ? jni::jni_true : jni::jni_false); } Result>> Converter>, float>::operator()(jni::JNIEnv& env, const float& value) const { return jni::Box(env, value); } Result>> Converter>, double>::operator()(jni::JNIEnv& env, const double& value) const { return jni::Box(env, value); } Result>> Converter>, std::string>::operator()(jni::JNIEnv& env, const std::string& value) const { return jni::Make(env, value); } Result>> Converter>, Color>::operator()(jni::JNIEnv& env, const Color& value) const { std::string result; result.reserve(32); result += "rgba("; result += util::toString(value.r); result += ", "; result += util::toString(value.g); result += ", "; result += util::toString(value.b); result += ", "; result += util::toString(value.a); result += ")"; return jni::Make(env, result); } Result>> Converter>, style::expression::Formatted>::operator()(jni::JNIEnv& env, const style::expression::Formatted& value) const { return jni::Make(env, value.toString()); } Result>> Converter>, std::vector>::operator()(jni::JNIEnv& env, const std::vector& value) const { auto result = jni::Array::New(env, value.size()); for (std::size_t i = 0; i < value.size(); i++) { result.Set(env, i, jni::Make(env, value.at(i))); } return result; } Result>> Converter>, std::vector>::operator()(jni::JNIEnv& env, const std::vector& value) const { auto result = jni::Array::New(env, value.size()); for (std::size_t i = 0; i < value.size(); i++) { result.Set(env, i, jni::Box(env, value.at(i))); } return result; } } // namespace conversion } // namespace style } // namespace mbgl