Lines Matching refs:std
43 std::string m_val;
44 name(std::string rhs = "") : m_val(std::move(rhs)) {}
49 std::string m_val;
50 address(std::string rhs = "") : m_val(std::move(rhs)) {}
59 person(const age& a, name n, const country& c) : m_age(a), m_name(std::move(n)), m_country(c) {}
67 contact(person p, address a) : m_person(std::move(p)), m_address(std::move(a)) {}
73 std::vector<contact> m_contacts{};
75 contact_book(name n, std::vector<contact> c) : m_book_name(std::move(n)), m_contacts(std::move(c)) {}
153 return std::tie(lhs.m_name, lhs.m_age) == std::tie(rhs.m_name, rhs.m_age);
158 return std::tie(lhs.m_person, lhs.m_address) ==
159 std::tie(rhs.m_person, rhs.m_address);
164 return std::tie(lhs.m_book_name, lhs.m_contacts) ==
165 std::tie(rhs.m_book_name, rhs.m_contacts);
181 n.m_val = j.template get<std::string>();
187 const auto str = j.template get<std::string>();
188 const std::map<std::string, country> m =
210 a.m_val = j.get<std::string>();
222 cb.m_contacts = j["contacts"].get<std::vector<contact>>();
267 big_json["contacts"].get<std::vector<udt::contact>>();
306 const std::vector<udt::contact> contacts = big_json["contacts"];
333 std::string number{};
335 legacy_type(std::string n) : number(std::move(n)) {}
342 struct adl_serializer<std::shared_ptr<T>>
344 static void to_json(json& j, const std::shared_ptr<T>& opt)
356 static void from_json(const json& j, std::shared_ptr<T>& opt)
374 j = std::stoi(l.number);
379 l.number = std::to_string(j.get<int>());
390 std::shared_ptr<udt::person> optPerson;
407 auto optPerson = j.get<std::shared_ptr<udt::person>>();
412 optPerson = j.get<std::shared_ptr<udt::person>>();
439 struct adl_serializer<std::vector<float>>
441 using type = std::vector<float>;
462 json j = std::vector<float> {1.0, 2.0, 3.0};
464 auto f = j.get<std::vector<float>>();
466 CHECK((f == std::vector<float> {4.0, 5.0, 6.0}));
472 struct adl_serializer<std::unique_ptr<T>>
474 static void to_json(json& j, const std::unique_ptr<T>& opt)
487 static std::unique_ptr<T> from_json(const json& j)
494 return std::unique_ptr<T>(new T(j.get<T>()));
503 std::unique_ptr<udt::person> optPerson;
520 auto optPerson = j.get<std::unique_ptr<udt::person>>();
525 optPerson = j.get<std::unique_ptr<udt::person>>();
539 typename std::enable_if <
540 !(std::is_pod<U>::value && std::is_class<U>::value), int >::type = 0 >
549 typename std::enable_if <
550 std::is_pod<U>::value && std::is_class<U>::value, int >::type = 0 >
553 std::uint64_t value = 0;
557 // Why cannot we simply use: j.get<std::uint64_t>() ?
570 std::memcpy(&t, bytes, sizeof(value));
575 typename std::enable_if <
576 !(std::is_pod<U>::value && std::is_class<U>::value), int >::type = 0 >
584 typename std::enable_if <
585 std::is_pod<U>::value && std::is_class<U>::value, int >::type = 0 >
589 std::uint64_t value = 0;
590 std::memcpy(&value, bytes, sizeof(value));
606 std::string s{};
608 non_pod(std::string S) : s(std::move(S)) {}
620 np.s = j.template get<std::string>();
625 return std::tie(lhs.begin, lhs.middle, lhs.end) ==
626 std::tie(rhs.begin, rhs.middle, rhs.end);
634 static std::ostream& operator<<(std::ostream& os, small_pod l)
643 nlohmann::basic_json<std::map, std::vector, std::string, bool,
644 std::int64_t, std::uint64_t, double, std::allocator, pod_serializer>;
662 using custom_json = nlohmann::basic_json<std::map, std::vector, std::string, bool, std::int64_t, std::uint64_t, double, std::allocator, another_adl_serializer>;
721 CHECK((cj == std::vector<int> {1, 2, 3}));
757 std::vector<std::uint8_t> cv = cj.get_binary();
758 std::vector<std::uint8_t> v = j.get_binary();
766 auto m = j.get<std::map<std::string, std::string>>();
782 // std::is_constructible is broken on macOS' libc++
786 struct is_constructible_patched : std::false_type {};
789 struct is_constructible_patched<T, decltype(void(json(std::declval<T>())))> : std::true_type {};
817 // Prevent get<std::vector<Evil>>() to throw
821 CHECK_NOTHROW(j.get<std::vector<Evil>>());
831 static_assert(!std::is_convertible<json, non_convertible_type>::value, "");
839 no_iterator_type(std::initializer_list<int> l)
843 std::vector<int>::const_iterator begin() const
848 std::vector<int>::const_iterator end() const
854 std::vector<int> _v;