Lines Matching refs:value

16     // create a JSON value with different types
34 json value = {{"one", 1}, {"two", 2}};
37 auto& p1 = value.get_ref<test_type&>();
38 CHECK(&p1 == value.get_ptr<test_type*>());
39 CHECK(p1 == value.get<test_type>());
41 const auto& p2 = value.get_ref<const test_type&>();
42 CHECK(&p2 == value.get_ptr<const test_type*>());
43 CHECK(p2 == value.get<test_type>());
46 CHECK_NOTHROW(value.get_ref<json::object_t&>());
47 CHECK_THROWS_WITH_AS(value.get_ref<json::array_t&>(),
49 CHECK_THROWS_WITH_AS(value.get_ref<json::string_t&>(),
51 CHECK_THROWS_WITH_AS(value.get_ref<json::boolean_t&>(),
53 CHECK_THROWS_WITH_AS(value.get_ref<json::number_integer_t&>(),
55 CHECK_THROWS_WITH_AS(value.get_ref<json::number_unsigned_t&>(),
57 CHECK_THROWS_WITH_AS(value.get_ref<json::number_float_t&>(),
64 const json value = {{"one", 1}, {"two", 2}};
67 // test_type& p1 = value.get_ref<test_type&>();
70 const auto& p2 = value.get_ref<const test_type&>();
71 CHECK(&p2 == value.get_ptr<const test_type*>());
72 CHECK(p2 == value.get<test_type>());
78 json value = {1, 2, 3, 4};
81 auto& p1 = value.get_ref<test_type&>();
82 CHECK(&p1 == value.get_ptr<test_type*>());
83 CHECK(p1 == value.get<test_type>());
85 const auto& p2 = value.get_ref<const test_type&>();
86 CHECK(&p2 == value.get_ptr<const test_type*>());
87 CHECK(p2 == value.get<test_type>());
90 CHECK_THROWS_WITH_AS(value.get_ref<json::object_t&>(),
92 CHECK_NOTHROW(value.get_ref<json::array_t&>());
93 CHECK_THROWS_WITH_AS(value.get_ref<json::string_t&>(),
95 CHECK_THROWS_WITH_AS(value.get_ref<json::boolean_t&>(),
97 CHECK_THROWS_WITH_AS(value.get_ref<json::number_integer_t&>(),
99 CHECK_THROWS_WITH_AS(value.get_ref<json::number_unsigned_t&>(),
101 CHECK_THROWS_WITH_AS(value.get_ref<json::number_float_t&>(),
108 json value = "hello";
111 auto& p1 = value.get_ref<test_type&>();
112 CHECK(&p1 == value.get_ptr<test_type*>());
113 CHECK(p1 == value.get<test_type>());
115 const auto& p2 = value.get_ref<const test_type&>();
116 CHECK(&p2 == value.get_ptr<const test_type*>());
117 CHECK(p2 == value.get<test_type>());
120 CHECK_THROWS_WITH_AS(value.get_ref<json::object_t&>(),
122 CHECK_THROWS_WITH_AS(value.get_ref<json::array_t&>(),
124 CHECK_NOTHROW(value.get_ref<json::string_t&>());
125 CHECK_THROWS_WITH_AS(value.get_ref<json::boolean_t&>(),
127 CHECK_THROWS_WITH_AS(value.get_ref<json::number_integer_t&>(),
129 CHECK_THROWS_WITH_AS(value.get_ref<json::number_unsigned_t&>(),
131 CHECK_THROWS_WITH_AS(value.get_ref<json::number_float_t&>(),
138 json value = false;
141 auto& p1 = value.get_ref<test_type&>();
142 CHECK(&p1 == value.get_ptr<test_type*>());
143 CHECK(p1 == value.get<test_type>());
145 const auto& p2 = value.get_ref<const test_type&>();
146 CHECK(&p2 == value.get_ptr<const test_type*>());
147 CHECK(p2 == value.get<test_type>());
150 CHECK_THROWS_WITH_AS(value.get_ref<json::object_t&>(),
152 CHECK_THROWS_WITH_AS(value.get_ref<json::array_t&>(),
154 CHECK_THROWS_WITH_AS(value.get_ref<json::string_t&>(),
156 CHECK_NOTHROW(value.get_ref<json::boolean_t&>());
157 CHECK_THROWS_WITH_AS(value.get_ref<json::number_integer_t&>(),
159 CHECK_THROWS_WITH_AS(value.get_ref<json::number_unsigned_t&>(),
161 CHECK_THROWS_WITH_AS(value.get_ref<json::number_float_t&>(),
168 json value = -23;
171 auto& p1 = value.get_ref<test_type&>();
172 CHECK(&p1 == value.get_ptr<test_type*>());
173 CHECK(p1 == value.get<test_type>());
175 const auto& p2 = value.get_ref<const test_type&>();
176 CHECK(&p2 == value.get_ptr<const test_type*>());
177 CHECK(p2 == value.get<test_type>());
180 CHECK_THROWS_WITH_AS(value.get_ref<json::object_t&>(),
182 CHECK_THROWS_WITH_AS(value.get_ref<json::array_t&>(),
184 CHECK_THROWS_WITH_AS(value.get_ref<json::string_t&>(),
186 CHECK_THROWS_WITH_AS(value.get_ref<json::boolean_t&>(),
188 CHECK_NOTHROW(value.get_ref<json::number_integer_t&>());
189 CHECK_THROWS_WITH_AS(value.get_ref<json::number_unsigned_t&>(),
191 CHECK_THROWS_WITH_AS(value.get_ref<json::number_float_t&>(),
198 json value = 23u;
201 auto& p1 = value.get_ref<test_type&>();
202 CHECK(&p1 == value.get_ptr<test_type*>());
203 CHECK(p1 == value.get<test_type>());
205 const auto& p2 = value.get_ref<const test_type&>();
206 CHECK(&p2 == value.get_ptr<const test_type*>());
207 CHECK(p2 == value.get<test_type>());
210 CHECK_THROWS_WITH_AS(value.get_ref<json::object_t&>(),
212 CHECK_THROWS_WITH_AS(value.get_ref<json::array_t&>(),
214 CHECK_THROWS_WITH_AS(value.get_ref<json::string_t&>(),
216 CHECK_THROWS_WITH_AS(value.get_ref<json::boolean_t&>(),
218 //CHECK_THROWS_WITH_AS(value.get_ref<json::number_integer_t&>(),
220 CHECK_NOTHROW(value.get_ref<json::number_unsigned_t&>());
221 CHECK_THROWS_WITH_AS(value.get_ref<json::number_float_t&>(), "[json.exception.type_error.303] incompatible ReferenceType for get_ref, actual type is number", json::type_error&);
227 json value = 42.23;
230 auto& p1 = value.get_ref<test_type&>();
231 CHECK(&p1 == value.get_ptr<test_type*>());
232 CHECK(p1 == value.get<test_type>());
234 const auto& p2 = value.get_ref<const test_type&>();
235 CHECK(&p2 == value.get_ptr<const test_type*>());
236 CHECK(p2 == value.get<test_type>());
239 CHECK_THROWS_WITH_AS(value.get_ref<json::object_t&>(), "[json.exception.type_error.303] incompatible ReferenceType for get_ref, actual type is number", json::type_error&);
240 CHECK_THROWS_WITH_AS(value.get_ref<json::array_t&>(), "[json.exception.type_error.303] incompatible ReferenceType for get_ref, actual type is number", json::type_error&);
241 CHECK_THROWS_WITH_AS(value.get_ref<json::string_t&>(), "[json.exception.type_error.303] incompatible ReferenceType for get_ref, actual type is number", json::type_error&);
242 CHECK_THROWS_WITH_AS(value.get_ref<json::boolean_t&>(), "[json.exception.type_error.303] incompatible ReferenceType for get_ref, actual type is number", json::type_error&);
243 CHECK_THROWS_WITH_AS(value.get_ref<json::number_integer_t&>(), "[json.exception.type_error.303] incompatible ReferenceType for get_ref, actual type is number", json::type_error&);
244 CHECK_THROWS_WITH_AS(value.get_ref<json::number_unsigned_t&>(), "[json.exception.type_error.303] incompatible ReferenceType for get_ref, actual type is number", json::type_error&);
245 CHECK_NOTHROW(value.get_ref<json::number_float_t&>());