summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAlexander Shalamov <alexander.shalamov@mapbox.com>2020-02-25 12:29:04 +0200
committerAlexander Shalamov <alexander.shalamov@mapbox.com>2020-02-26 18:15:23 +0200
commite55a46e5d19178a04b8244f7077ac71f12df639d (patch)
tree5a46ccacccfbb2b42f0dd82cb1fc54bebb0d50c1 /src
parent8785f77cd633be92123464310f85ea671689473c (diff)
downloadqtlocation-mapboxgl-e55a46e5d19178a04b8244f7077ac71f12df639d.tar.gz
[core] Fix Color serialization
Diffstat (limited to 'src')
-rw-r--r--src/mbgl/style/expression/value.cpp11
-rw-r--r--src/mbgl/util/color.cpp11
2 files changed, 12 insertions, 10 deletions
diff --git a/src/mbgl/style/expression/value.cpp b/src/mbgl/style/expression/value.cpp
index aac1c61655..110844f421 100644
--- a/src/mbgl/style/expression/value.cpp
+++ b/src/mbgl/style/expression/value.cpp
@@ -126,16 +126,7 @@ Value ValueConverter<mbgl::Value>::toExpressionValue(const mbgl::Value& value) {
mbgl::Value ValueConverter<mbgl::Value>::fromExpressionValue(const Value& value) {
return value.match(
- [&](const Color& color) -> mbgl::Value {
- std::array<double, 4> array = color.toArray();
- return std::vector<mbgl::Value>{
- std::string("rgba"),
- array[0],
- array[1],
- array[2],
- array[3],
- };
- },
+ [&](const Color& color) -> mbgl::Value { return color.serialize(); },
[&](const Collator&) -> mbgl::Value {
// fromExpressionValue can't be used for Collator values,
// because they have no meaningful representation as an mbgl::Value
diff --git a/src/mbgl/util/color.cpp b/src/mbgl/util/color.cpp
index 44f815e8b8..5d30d25244 100644
--- a/src/mbgl/util/color.cpp
+++ b/src/mbgl/util/color.cpp
@@ -48,4 +48,15 @@ mbgl::Value Color::toObject() const {
return mapbox::base::ValueObject{{"r", double(r)}, {"g", double(g)}, {"b", double(b)}, {"a", double(a)}};
}
+mbgl::Value Color::serialize() const {
+ std::array<double, 4> array = toArray();
+ return std::vector<mbgl::Value>{
+ std::string("rgba"),
+ array[0],
+ array[1],
+ array[2],
+ array[3],
+ };
+}
+
} // namespace mbgl