From d6c958ba5fab8318be09d0c60a2eccd9ccbd7186 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Konstantin=20K=C3=A4fer?= Date: Thu, 15 Sep 2016 13:42:10 +0200 Subject: [PATCH] [test] use recursive wrapper for recursive variant types --- test/src/mbgl/test/conversion_stubs.hpp | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/test/src/mbgl/test/conversion_stubs.hpp b/test/src/mbgl/test/conversion_stubs.hpp index 63ed4e8b7..b80a2c98b 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; using ValueVector = std::vector; -class Value : public mbgl::variant { - using variant::variant; +class Value : public mbgl::variant, + mapbox::util::recursive_wrapper> { + 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(); + return value.is>(); } inline std::size_t arrayLength(const Value& value) { - return value.get().size(); + return value.get>().get().size(); } inline Value arrayMember(const Value& value, std::size_t i) { - return value.get()[i]; + return value.get>().get()[i]; } inline bool isObject(const Value& value) { - return value.is(); + return value.is>(); } inline optional objectMember(const Value& value, const char* key) {