Skip to content
This repository was archived by the owner on Aug 8, 2023. It is now read-only.

Commit 6fdf07e

Browse files
committed
[core] Use mbgl::underlying_type in style properties
1 parent 7885089 commit 6fdf07e

File tree

12 files changed

+228
-216
lines changed

12 files changed

+228
-216
lines changed

src/mbgl/style/layers/background_layer.cpp

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
#include <mbgl/style/conversion/transition_options.hpp>
1010
#include <mbgl/style/conversion/json.hpp>
1111
#include <mbgl/style/conversion_impl.hpp>
12+
#include <mbgl/util/traits.hpp>
1213

1314
#include <mapbox/eternal.hpp>
1415

@@ -147,7 +148,7 @@ TransitionOptions BackgroundLayer::getBackgroundPatternTransition() const {
147148
using namespace conversion;
148149

149150
optional<Error> BackgroundLayer::setPaintProperty(const std::string& name, const Convertible& value) {
150-
enum class Property : uint8_t {
151+
enum class Property {
151152
BackgroundColor,
152153
BackgroundOpacity,
153154
BackgroundPattern,
@@ -157,12 +158,12 @@ optional<Error> BackgroundLayer::setPaintProperty(const std::string& name, const
157158
};
158159

159160
MAPBOX_ETERNAL_CONSTEXPR const auto properties = mapbox::eternal::hash_map<mapbox::eternal::string, uint8_t>({
160-
{ "background-color", static_cast<uint8_t>(Property::BackgroundColor) },
161-
{ "background-opacity", static_cast<uint8_t>(Property::BackgroundOpacity) },
162-
{ "background-pattern", static_cast<uint8_t>(Property::BackgroundPattern) },
163-
{ "background-color-transition", static_cast<uint8_t>(Property::BackgroundColorTransition) },
164-
{ "background-opacity-transition", static_cast<uint8_t>(Property::BackgroundOpacityTransition) },
165-
{ "background-pattern-transition", static_cast<uint8_t>(Property::BackgroundPatternTransition) }
161+
{ "background-color", mbgl::underlying_type(Property::BackgroundColor) },
162+
{ "background-opacity", mbgl::underlying_type(Property::BackgroundOpacity) },
163+
{ "background-pattern", mbgl::underlying_type(Property::BackgroundPattern) },
164+
{ "background-color-transition", mbgl::underlying_type(Property::BackgroundColorTransition) },
165+
{ "background-opacity-transition", mbgl::underlying_type(Property::BackgroundOpacityTransition) },
166+
{ "background-pattern-transition", mbgl::underlying_type(Property::BackgroundPatternTransition) }
166167
});
167168

168169
const auto it = properties.find(name.c_str());

src/mbgl/style/layers/circle_layer.cpp

Lines changed: 24 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
#include <mbgl/style/conversion/transition_options.hpp>
1010
#include <mbgl/style/conversion/json.hpp>
1111
#include <mbgl/style/conversion_impl.hpp>
12+
#include <mbgl/util/traits.hpp>
1213

1314
#include <mapbox/eternal.hpp>
1415

@@ -363,7 +364,7 @@ TransitionOptions CircleLayer::getCircleTranslateAnchorTransition() const {
363364
using namespace conversion;
364365

365366
optional<Error> CircleLayer::setPaintProperty(const std::string& name, const Convertible& value) {
366-
enum class Property : uint8_t {
367+
enum class Property {
367368
CircleBlur,
368369
CircleColor,
369370
CircleOpacity,
@@ -389,28 +390,28 @@ optional<Error> CircleLayer::setPaintProperty(const std::string& name, const Con
389390
};
390391

391392
MAPBOX_ETERNAL_CONSTEXPR const auto properties = mapbox::eternal::hash_map<mapbox::eternal::string, uint8_t>({
392-
{ "circle-blur", static_cast<uint8_t>(Property::CircleBlur) },
393-
{ "circle-color", static_cast<uint8_t>(Property::CircleColor) },
394-
{ "circle-opacity", static_cast<uint8_t>(Property::CircleOpacity) },
395-
{ "circle-pitch-alignment", static_cast<uint8_t>(Property::CirclePitchAlignment) },
396-
{ "circle-pitch-scale", static_cast<uint8_t>(Property::CirclePitchScale) },
397-
{ "circle-radius", static_cast<uint8_t>(Property::CircleRadius) },
398-
{ "circle-stroke-color", static_cast<uint8_t>(Property::CircleStrokeColor) },
399-
{ "circle-stroke-opacity", static_cast<uint8_t>(Property::CircleStrokeOpacity) },
400-
{ "circle-stroke-width", static_cast<uint8_t>(Property::CircleStrokeWidth) },
401-
{ "circle-translate", static_cast<uint8_t>(Property::CircleTranslate) },
402-
{ "circle-translate-anchor", static_cast<uint8_t>(Property::CircleTranslateAnchor) },
403-
{ "circle-blur-transition", static_cast<uint8_t>(Property::CircleBlurTransition) },
404-
{ "circle-color-transition", static_cast<uint8_t>(Property::CircleColorTransition) },
405-
{ "circle-opacity-transition", static_cast<uint8_t>(Property::CircleOpacityTransition) },
406-
{ "circle-pitch-alignment-transition", static_cast<uint8_t>(Property::CirclePitchAlignmentTransition) },
407-
{ "circle-pitch-scale-transition", static_cast<uint8_t>(Property::CirclePitchScaleTransition) },
408-
{ "circle-radius-transition", static_cast<uint8_t>(Property::CircleRadiusTransition) },
409-
{ "circle-stroke-color-transition", static_cast<uint8_t>(Property::CircleStrokeColorTransition) },
410-
{ "circle-stroke-opacity-transition", static_cast<uint8_t>(Property::CircleStrokeOpacityTransition) },
411-
{ "circle-stroke-width-transition", static_cast<uint8_t>(Property::CircleStrokeWidthTransition) },
412-
{ "circle-translate-transition", static_cast<uint8_t>(Property::CircleTranslateTransition) },
413-
{ "circle-translate-anchor-transition", static_cast<uint8_t>(Property::CircleTranslateAnchorTransition) }
393+
{ "circle-blur", mbgl::underlying_type(Property::CircleBlur) },
394+
{ "circle-color", mbgl::underlying_type(Property::CircleColor) },
395+
{ "circle-opacity", mbgl::underlying_type(Property::CircleOpacity) },
396+
{ "circle-pitch-alignment", mbgl::underlying_type(Property::CirclePitchAlignment) },
397+
{ "circle-pitch-scale", mbgl::underlying_type(Property::CirclePitchScale) },
398+
{ "circle-radius", mbgl::underlying_type(Property::CircleRadius) },
399+
{ "circle-stroke-color", mbgl::underlying_type(Property::CircleStrokeColor) },
400+
{ "circle-stroke-opacity", mbgl::underlying_type(Property::CircleStrokeOpacity) },
401+
{ "circle-stroke-width", mbgl::underlying_type(Property::CircleStrokeWidth) },
402+
{ "circle-translate", mbgl::underlying_type(Property::CircleTranslate) },
403+
{ "circle-translate-anchor", mbgl::underlying_type(Property::CircleTranslateAnchor) },
404+
{ "circle-blur-transition", mbgl::underlying_type(Property::CircleBlurTransition) },
405+
{ "circle-color-transition", mbgl::underlying_type(Property::CircleColorTransition) },
406+
{ "circle-opacity-transition", mbgl::underlying_type(Property::CircleOpacityTransition) },
407+
{ "circle-pitch-alignment-transition", mbgl::underlying_type(Property::CirclePitchAlignmentTransition) },
408+
{ "circle-pitch-scale-transition", mbgl::underlying_type(Property::CirclePitchScaleTransition) },
409+
{ "circle-radius-transition", mbgl::underlying_type(Property::CircleRadiusTransition) },
410+
{ "circle-stroke-color-transition", mbgl::underlying_type(Property::CircleStrokeColorTransition) },
411+
{ "circle-stroke-opacity-transition", mbgl::underlying_type(Property::CircleStrokeOpacityTransition) },
412+
{ "circle-stroke-width-transition", mbgl::underlying_type(Property::CircleStrokeWidthTransition) },
413+
{ "circle-translate-transition", mbgl::underlying_type(Property::CircleTranslateTransition) },
414+
{ "circle-translate-anchor-transition", mbgl::underlying_type(Property::CircleTranslateAnchorTransition) }
414415
});
415416

416417
const auto it = properties.find(name.c_str());

src/mbgl/style/layers/fill_extrusion_layer.cpp

Lines changed: 18 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
#include <mbgl/style/conversion/transition_options.hpp>
1010
#include <mbgl/style/conversion/json.hpp>
1111
#include <mbgl/style/conversion_impl.hpp>
12+
#include <mbgl/util/traits.hpp>
1213

1314
#include <mapbox/eternal.hpp>
1415

@@ -282,7 +283,7 @@ TransitionOptions FillExtrusionLayer::getFillExtrusionVerticalGradientTransition
282283
using namespace conversion;
283284

284285
optional<Error> FillExtrusionLayer::setPaintProperty(const std::string& name, const Convertible& value) {
285-
enum class Property : uint8_t {
286+
enum class Property {
286287
FillExtrusionBase,
287288
FillExtrusionColor,
288289
FillExtrusionHeight,
@@ -302,22 +303,22 @@ optional<Error> FillExtrusionLayer::setPaintProperty(const std::string& name, co
302303
};
303304

304305
MAPBOX_ETERNAL_CONSTEXPR const auto properties = mapbox::eternal::hash_map<mapbox::eternal::string, uint8_t>({
305-
{ "fill-extrusion-base", static_cast<uint8_t>(Property::FillExtrusionBase) },
306-
{ "fill-extrusion-color", static_cast<uint8_t>(Property::FillExtrusionColor) },
307-
{ "fill-extrusion-height", static_cast<uint8_t>(Property::FillExtrusionHeight) },
308-
{ "fill-extrusion-opacity", static_cast<uint8_t>(Property::FillExtrusionOpacity) },
309-
{ "fill-extrusion-pattern", static_cast<uint8_t>(Property::FillExtrusionPattern) },
310-
{ "fill-extrusion-translate", static_cast<uint8_t>(Property::FillExtrusionTranslate) },
311-
{ "fill-extrusion-translate-anchor", static_cast<uint8_t>(Property::FillExtrusionTranslateAnchor) },
312-
{ "fill-extrusion-vertical-gradient", static_cast<uint8_t>(Property::FillExtrusionVerticalGradient) },
313-
{ "fill-extrusion-base-transition", static_cast<uint8_t>(Property::FillExtrusionBaseTransition) },
314-
{ "fill-extrusion-color-transition", static_cast<uint8_t>(Property::FillExtrusionColorTransition) },
315-
{ "fill-extrusion-height-transition", static_cast<uint8_t>(Property::FillExtrusionHeightTransition) },
316-
{ "fill-extrusion-opacity-transition", static_cast<uint8_t>(Property::FillExtrusionOpacityTransition) },
317-
{ "fill-extrusion-pattern-transition", static_cast<uint8_t>(Property::FillExtrusionPatternTransition) },
318-
{ "fill-extrusion-translate-transition", static_cast<uint8_t>(Property::FillExtrusionTranslateTransition) },
319-
{ "fill-extrusion-translate-anchor-transition", static_cast<uint8_t>(Property::FillExtrusionTranslateAnchorTransition) },
320-
{ "fill-extrusion-vertical-gradient-transition", static_cast<uint8_t>(Property::FillExtrusionVerticalGradientTransition) }
306+
{ "fill-extrusion-base", mbgl::underlying_type(Property::FillExtrusionBase) },
307+
{ "fill-extrusion-color", mbgl::underlying_type(Property::FillExtrusionColor) },
308+
{ "fill-extrusion-height", mbgl::underlying_type(Property::FillExtrusionHeight) },
309+
{ "fill-extrusion-opacity", mbgl::underlying_type(Property::FillExtrusionOpacity) },
310+
{ "fill-extrusion-pattern", mbgl::underlying_type(Property::FillExtrusionPattern) },
311+
{ "fill-extrusion-translate", mbgl::underlying_type(Property::FillExtrusionTranslate) },
312+
{ "fill-extrusion-translate-anchor", mbgl::underlying_type(Property::FillExtrusionTranslateAnchor) },
313+
{ "fill-extrusion-vertical-gradient", mbgl::underlying_type(Property::FillExtrusionVerticalGradient) },
314+
{ "fill-extrusion-base-transition", mbgl::underlying_type(Property::FillExtrusionBaseTransition) },
315+
{ "fill-extrusion-color-transition", mbgl::underlying_type(Property::FillExtrusionColorTransition) },
316+
{ "fill-extrusion-height-transition", mbgl::underlying_type(Property::FillExtrusionHeightTransition) },
317+
{ "fill-extrusion-opacity-transition", mbgl::underlying_type(Property::FillExtrusionOpacityTransition) },
318+
{ "fill-extrusion-pattern-transition", mbgl::underlying_type(Property::FillExtrusionPatternTransition) },
319+
{ "fill-extrusion-translate-transition", mbgl::underlying_type(Property::FillExtrusionTranslateTransition) },
320+
{ "fill-extrusion-translate-anchor-transition", mbgl::underlying_type(Property::FillExtrusionTranslateAnchorTransition) },
321+
{ "fill-extrusion-vertical-gradient-transition", mbgl::underlying_type(Property::FillExtrusionVerticalGradientTransition) }
321322
});
322323

323324
const auto it = properties.find(name.c_str());

src/mbgl/style/layers/fill_layer.cpp

Lines changed: 16 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
#include <mbgl/style/conversion/transition_options.hpp>
1010
#include <mbgl/style/conversion/json.hpp>
1111
#include <mbgl/style/conversion_impl.hpp>
12+
#include <mbgl/util/traits.hpp>
1213

1314
#include <mapbox/eternal.hpp>
1415

@@ -255,7 +256,7 @@ TransitionOptions FillLayer::getFillTranslateAnchorTransition() const {
255256
using namespace conversion;
256257

257258
optional<Error> FillLayer::setPaintProperty(const std::string& name, const Convertible& value) {
258-
enum class Property : uint8_t {
259+
enum class Property {
259260
FillAntialias,
260261
FillColor,
261262
FillOpacity,
@@ -273,20 +274,20 @@ optional<Error> FillLayer::setPaintProperty(const std::string& name, const Conve
273274
};
274275

275276
MAPBOX_ETERNAL_CONSTEXPR const auto properties = mapbox::eternal::hash_map<mapbox::eternal::string, uint8_t>({
276-
{ "fill-antialias", static_cast<uint8_t>(Property::FillAntialias) },
277-
{ "fill-color", static_cast<uint8_t>(Property::FillColor) },
278-
{ "fill-opacity", static_cast<uint8_t>(Property::FillOpacity) },
279-
{ "fill-outline-color", static_cast<uint8_t>(Property::FillOutlineColor) },
280-
{ "fill-pattern", static_cast<uint8_t>(Property::FillPattern) },
281-
{ "fill-translate", static_cast<uint8_t>(Property::FillTranslate) },
282-
{ "fill-translate-anchor", static_cast<uint8_t>(Property::FillTranslateAnchor) },
283-
{ "fill-antialias-transition", static_cast<uint8_t>(Property::FillAntialiasTransition) },
284-
{ "fill-color-transition", static_cast<uint8_t>(Property::FillColorTransition) },
285-
{ "fill-opacity-transition", static_cast<uint8_t>(Property::FillOpacityTransition) },
286-
{ "fill-outline-color-transition", static_cast<uint8_t>(Property::FillOutlineColorTransition) },
287-
{ "fill-pattern-transition", static_cast<uint8_t>(Property::FillPatternTransition) },
288-
{ "fill-translate-transition", static_cast<uint8_t>(Property::FillTranslateTransition) },
289-
{ "fill-translate-anchor-transition", static_cast<uint8_t>(Property::FillTranslateAnchorTransition) }
277+
{ "fill-antialias", mbgl::underlying_type(Property::FillAntialias) },
278+
{ "fill-color", mbgl::underlying_type(Property::FillColor) },
279+
{ "fill-opacity", mbgl::underlying_type(Property::FillOpacity) },
280+
{ "fill-outline-color", mbgl::underlying_type(Property::FillOutlineColor) },
281+
{ "fill-pattern", mbgl::underlying_type(Property::FillPattern) },
282+
{ "fill-translate", mbgl::underlying_type(Property::FillTranslate) },
283+
{ "fill-translate-anchor", mbgl::underlying_type(Property::FillTranslateAnchor) },
284+
{ "fill-antialias-transition", mbgl::underlying_type(Property::FillAntialiasTransition) },
285+
{ "fill-color-transition", mbgl::underlying_type(Property::FillColorTransition) },
286+
{ "fill-opacity-transition", mbgl::underlying_type(Property::FillOpacityTransition) },
287+
{ "fill-outline-color-transition", mbgl::underlying_type(Property::FillOutlineColorTransition) },
288+
{ "fill-pattern-transition", mbgl::underlying_type(Property::FillPatternTransition) },
289+
{ "fill-translate-transition", mbgl::underlying_type(Property::FillTranslateTransition) },
290+
{ "fill-translate-anchor-transition", mbgl::underlying_type(Property::FillTranslateAnchorTransition) }
290291
});
291292

292293
const auto it = properties.find(name.c_str());

src/mbgl/style/layers/heatmap_layer.cpp

Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
#include <mbgl/style/conversion/transition_options.hpp>
1010
#include <mbgl/style/conversion/json.hpp>
1111
#include <mbgl/style/conversion_impl.hpp>
12+
#include <mbgl/util/traits.hpp>
1213

1314
#include <mapbox/eternal.hpp>
1415

@@ -203,7 +204,7 @@ TransitionOptions HeatmapLayer::getHeatmapWeightTransition() const {
203204
using namespace conversion;
204205

205206
optional<Error> HeatmapLayer::setPaintProperty(const std::string& name, const Convertible& value) {
206-
enum class Property : uint8_t {
207+
enum class Property {
207208
HeatmapColor,
208209
HeatmapIntensity,
209210
HeatmapOpacity,
@@ -217,16 +218,16 @@ optional<Error> HeatmapLayer::setPaintProperty(const std::string& name, const Co
217218
};
218219

219220
MAPBOX_ETERNAL_CONSTEXPR const auto properties = mapbox::eternal::hash_map<mapbox::eternal::string, uint8_t>({
220-
{ "heatmap-color", static_cast<uint8_t>(Property::HeatmapColor) },
221-
{ "heatmap-intensity", static_cast<uint8_t>(Property::HeatmapIntensity) },
222-
{ "heatmap-opacity", static_cast<uint8_t>(Property::HeatmapOpacity) },
223-
{ "heatmap-radius", static_cast<uint8_t>(Property::HeatmapRadius) },
224-
{ "heatmap-weight", static_cast<uint8_t>(Property::HeatmapWeight) },
225-
{ "heatmap-color-transition", static_cast<uint8_t>(Property::HeatmapColorTransition) },
226-
{ "heatmap-intensity-transition", static_cast<uint8_t>(Property::HeatmapIntensityTransition) },
227-
{ "heatmap-opacity-transition", static_cast<uint8_t>(Property::HeatmapOpacityTransition) },
228-
{ "heatmap-radius-transition", static_cast<uint8_t>(Property::HeatmapRadiusTransition) },
229-
{ "heatmap-weight-transition", static_cast<uint8_t>(Property::HeatmapWeightTransition) }
221+
{ "heatmap-color", mbgl::underlying_type(Property::HeatmapColor) },
222+
{ "heatmap-intensity", mbgl::underlying_type(Property::HeatmapIntensity) },
223+
{ "heatmap-opacity", mbgl::underlying_type(Property::HeatmapOpacity) },
224+
{ "heatmap-radius", mbgl::underlying_type(Property::HeatmapRadius) },
225+
{ "heatmap-weight", mbgl::underlying_type(Property::HeatmapWeight) },
226+
{ "heatmap-color-transition", mbgl::underlying_type(Property::HeatmapColorTransition) },
227+
{ "heatmap-intensity-transition", mbgl::underlying_type(Property::HeatmapIntensityTransition) },
228+
{ "heatmap-opacity-transition", mbgl::underlying_type(Property::HeatmapOpacityTransition) },
229+
{ "heatmap-radius-transition", mbgl::underlying_type(Property::HeatmapRadiusTransition) },
230+
{ "heatmap-weight-transition", mbgl::underlying_type(Property::HeatmapWeightTransition) }
230231
});
231232

232233
const auto it = properties.find(name.c_str());

0 commit comments

Comments
 (0)