summaryrefslogtreecommitdiff
path: root/src/mbgl/style/conversion/constant.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mbgl/style/conversion/constant.cpp')
-rw-r--r--src/mbgl/style/conversion/constant.cpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/mbgl/style/conversion/constant.cpp b/src/mbgl/style/conversion/constant.cpp
index 0fcaab433b..0ed5fad425 100644
--- a/src/mbgl/style/conversion/constant.cpp
+++ b/src/mbgl/style/conversion/constant.cpp
@@ -168,6 +168,24 @@ optional<std::vector<std::string>> Converter<std::vector<std::string>>::operator
return result;
}
+optional<RadialOffsetType> Converter<RadialOffsetType>::operator()(const Convertible& value, Error& error) const {
+ Converter<std::vector<float>> arrayConverter;
+ if (auto val = arrayConverter(value, error)) {
+ RadialOffsetType result = std::move(*val);
+ return result;
+ }
+
+ Converter<float> numberConverter;
+ if (auto val = numberConverter(value, error)) {
+ RadialOffsetType result(2, *val);
+ return result;
+ }
+
+ error.message = "value must be an array of numbers or a number";
+
+ return nullopt;
+}
+
} // namespace conversion
} // namespace style
} // namespace mbgl