6 #ifndef METALL_JSON_EQUAL_HPP
7 #define METALL_JSON_EQUAL_HPP
14 namespace bj = boost::json;
17 template <
typename char_type,
typename char_traits,
typename allocator_type>
20 const bj::key_value_pair &bj_key_value) {
24 template <
typename char_type,
typename char_traits,
typename allocator_type>
26 const bj::key_value_pair &bj_key_value,
28 return key_value == bj_key_value;
31 template <
typename char_type,
typename char_traits,
typename allocator_type>
34 const bj::key_value_pair &bj_key_value) {
35 return !(key_value == bj_key_value);
38 template <
typename char_type,
typename char_traits,
typename allocator_type>
40 const bj::key_value_pair &bj_key_value,
42 return key_value != bj_key_value;
45 template <
typename allocator_type>
47 const bj::value &bj_value) {
51 template <
typename allocator_type>
54 return value == bj_value;
57 template <
typename allocator_type>
59 const bj::value &bj_value) {
60 return !(
value == bj_value);
63 template <
typename allocator_type>
66 return value != bj_value;
69 template <
typename allocator_type>
71 const bj::array &bj_array) {
75 template <
typename allocator_type>
78 return array == bj_array;
81 template <
typename allocator_type>
83 const bj::array &bj_array) {
84 return !(
array == bj_array);
87 template <
typename allocator_type>
90 return array != bj_array;
93 template <
typename allocator_type>
95 const bj::object &bj_object) {
99 template <
typename allocator_type>
102 return object == bj_object;
105 template <
typename allocator_type>
107 const bj::object &bj_object) {
108 return !(
object == bj_object);
111 template <
typename allocator_type>
114 return object != bj_object;
117 template <
typename char_t,
typename traits,
typename allocator>
123 template <
typename char_t,
typename traits,
typename allocator>
126 return string == bj_string;
129 template <
typename char_t,
typename traits,
typename allocator>
132 return !(
string == bj_string);
135 template <
typename char_t,
typename traits,
typename allocator>
138 return string != bj_string;