summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/src/mbgl/test/conversion_stubs.hpp16
1 files changed, 10 insertions, 6 deletions
diff --git a/test/src/mbgl/test/conversion_stubs.hpp b/test/src/mbgl/test/conversion_stubs.hpp
index 63ed4e8b77..b80a2c98bd 100644
--- a/test/src/mbgl/test/conversion_stubs.hpp
+++ b/test/src/mbgl/test/conversion_stubs.hpp
@@ -15,8 +15,12 @@ namespace conversion {
class Value;
using ValueMap = std::unordered_map<std::string, Value>;
using ValueVector = std::vector<Value>;
-class Value : public mbgl::variant<std::string, float, bool, ValueMap, ValueVector> {
- using variant::variant;
+class Value : public mbgl::variant<std::string,
+ float,
+ bool,
+ mapbox::util::recursive_wrapper<ValueMap>,
+ mapbox::util::recursive_wrapper<ValueVector>> {
+ using variant::variant;
};
inline bool isUndefined(const Value&) {
@@ -25,19 +29,19 @@ inline bool isUndefined(const Value&) {
}
inline bool isArray(const Value& value) {
- return value.is<ValueVector>();
+ return value.is<mapbox::util::recursive_wrapper<ValueVector>>();
}
inline std::size_t arrayLength(const Value& value) {
- return value.get<ValueVector>().size();
+ return value.get<mapbox::util::recursive_wrapper<ValueVector>>().get().size();
}
inline Value arrayMember(const Value& value, std::size_t i) {
- return value.get<ValueVector>()[i];
+ return value.get<mapbox::util::recursive_wrapper<ValueVector>>().get()[i];
}
inline bool isObject(const Value& value) {
- return value.is<ValueMap>();
+ return value.is<mapbox::util::recursive_wrapper<ValueMap>>();
}
inline optional<Value> objectMember(const Value& value, const char* key) {