mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-09-19 17:24:14 +08:00
Add selftests for range_contains and insert_into_bit_range_vector
Add some selftests for these two functions. To to make it easier to compare sequences of ranges, add operator== and operator!= to compare two gdb::array_view, and add operator== in struct range. gdb/ChangeLog: * value.c: Include "selftest.h" and "common/array-view.h". (struct range) <operator ==>: New. (test_ranges_contain): New. (check_ranges_vector): New. (test_insert_into_bit_range_vector): New. (_initialize_values): Register selftests. * common/array-view.h (operator==, operator!=): New.
This commit is contained in:

committed by
Simon Marchi

parent
b24531ed17
commit
d5f4488f09
@ -174,6 +174,33 @@ private:
|
||||
size_type m_size;
|
||||
};
|
||||
|
||||
/* Compare LHS and RHS for (deep) equality. That is, whether LHS and
|
||||
RHS have the same sizes, and whether each pair of elements of LHS
|
||||
and RHS at the same position compares equal. */
|
||||
|
||||
template <typename T>
|
||||
bool
|
||||
operator== (const gdb::array_view<T> &lhs, const gdb::array_view<T> &rhs)
|
||||
{
|
||||
if (lhs.size () != rhs.size ())
|
||||
return false;
|
||||
|
||||
for (size_t i = 0; i < lhs.size (); i++)
|
||||
if (!(lhs[i] == rhs[i]))
|
||||
return false;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/* Compare two array_views for inequality. */
|
||||
|
||||
template <typename T>
|
||||
bool
|
||||
operator!= (const gdb::array_view<T> &lhs, const gdb::array_view<T> &rhs)
|
||||
{
|
||||
return !(lhs == rhs);
|
||||
}
|
||||
|
||||
} /* namespace gdb */
|
||||
|
||||
#endif
|
||||
|
Reference in New Issue
Block a user