Lines Matching full:lhs
46 TEST_CONSTEXPR_CXX20 void check(Container1 lhs, Container2 rhs, size_t offset) {
47 if (lhs.size() == rhs.size()) {
48 assert(std::mismatch(Iter(lhs.data()), Iter(lhs.data() + lhs.size()), Iter(rhs.data())) ==
49 std::make_pair(Iter(lhs.data() + offset), Iter(rhs.data() + offset)));
51 assert(std::mismatch(Iter(lhs.data()),
52 Iter(lhs.data() + lhs.size()),
55 std::make_pair(Iter(lhs.data() + offset), Iter(rhs.data() + offset)));
60 std::mismatch(Iter(lhs.data()), Iter(lhs.data() + lhs.size()), Iter(rhs.data()), Iter(rhs.data() + rhs.size())) ==
61 std::make_pair(Iter(lhs.data() + offset), Iter(rhs.data() + offset)));
63 assert(std::mismatch(Iter(lhs.data()),
64 Iter(lhs.data() + lhs.size()),
68 std::make_pair(Iter(lhs.data() + offset), Iter(rhs.data() + offset)));
79 TEST_CONSTEXPR_CXX20 friend bool operator==(const NonTrivialMod4Comp& lhs, const NonTrivialMod4Comp& rhs) {
80 return lhs.i_ % 4 == rhs.i_ % 4;
95 TEST_CONSTEXPR_CXX20 bool operator()(int lhs, int rhs) { return lhs % 2 == rhs % 2; }
101 std::array<int, 0> lhs = {};
103 check<Iter>(lhs, rhs, 0);
107 std::array<int, 8> lhs = {0, 1, 2, 3, 0, 1, 2, 3};
109 check<Iter>(lhs, rhs, 8);
113 std::array<int, 8> lhs = {0, 1, 2, 2, 0, 1, 2, 3};
115 check<Iter>(lhs, rhs, 3);
119 std::array<int, 8> lhs = {0, 1, 2, 2, 0, 1, 2, 3};
121 check<Iter>(lhs, rhs, 2);
125 std::array<int, 2> lhs = {0, 1};
127 check<Iter>(lhs, rhs, 2);
131 std::array<int, 4> lhs = {0, 2, 3, 4};
133 assert(std::mismatch(lhs.data(), lhs.data() + lhs.size(), rhs.data(), ModTwoComp()) ==
134 std::make_pair(lhs.data() + 2, rhs.data() + 2));
136 assert(std::mismatch(lhs.data(), lhs.data() + lhs.size(), rhs.data(), rhs.data() + rhs.size(), ModTwoComp()) ==
137 std::make_pair(lhs.data() + 2, rhs.data() + 2));
155 std::array<NonTrivialMod4Comp, 8> lhs = {1, 2, 3, 4, 5, 6, 7, 8};
157 check<NonTrivialMod4Comp*>(std::move(lhs), std::move(rhs), 8);
161 std::array<NonTrivialMod4Comp, 8> lhs = {1, 2, 3, 4, 7, 6, 7, 8};
163 check<NonTrivialMod4Comp*>(std::move(lhs), std::move(rhs), 4);
168 std::array<TriviallyEqualityComparable, 8> lhs = {1, 2, 3, 4, 5, 6, 7, 8};
170 check<TriviallyEqualityComparable*>(std::move(lhs), std::move(rhs), 8);
174 std::array<TriviallyEqualityComparable, 8> lhs = {1, 2, 3, 4, 7, 6, 7, 8};
176 check<TriviallyEqualityComparable*>(std::move(lhs), std::move(rhs), 4);
191 std::vector<char> lhs(256);
193 for (size_t i = 0; i != lhs.size(); ++i) {
194 lhs[i] = 1;
195 check<char*>(lhs, rhs, i);
196 lhs[i] = 0;
198 check<char*>(lhs, rhs, i);
204 std::vector<int> lhs(256);
206 for (size_t i = 0; i != lhs.size(); ++i) {
207 lhs[i] = 1;
208 check<int*>(lhs, rhs, i);
209 lhs[i] = 0;
211 check<int*>(lhs, rhs, i);
220 std::vector<char> lhs(vec_size);
223 check<char*>(lhs, rhs, lhs.size());
224 lhs.back() = 1;
225 check<char*>(lhs, rhs, lhs.size() - 1);
226 lhs.back() = 0;
228 check<char*>(lhs, rhs, lhs.size() - 1);
232 std::vector<int> lhs(vec_size);
235 check<int*>(lhs, rhs, lhs.size());
236 lhs.back() = 1;
237 check<int*>(lhs, rhs, lhs.size() - 1);
238 lhs.back() = 0;
240 check<int*>(lhs, rhs, lhs.size() - 1);