20#include "gdbsupport/common-defs.h"
21#include "gdbsupport/selftest.h"
22#include "gdbsupport/filtered-iterator.h"
70 return !(*
this == other);
115 int array[] = { 4, 4, 5, 6, 7, 8, 9 };
116 std::vector<int> even_ints;
117 const std::vector<int> expected_even_ints { 4, 4, 6, 8 };
119 filtered_iterator<int_array_iterator, even_numbers_only>
120 iter (array, ARRAY_SIZE (array));
121 filtered_iterator<int_array_iterator, even_numbers_only> end;
123 for (; iter != end; ++iter)
124 even_ints.push_back (*iter);
126 gdb_assert (even_ints == expected_even_ints);
134 int array[] = { 4, 4, 5, 6, 7, 8, 9 };
136 filtered_iterator<int_array_iterator, even_numbers_only>
137 iter1(array, ARRAY_SIZE (array));
138 filtered_iterator<int_array_iterator, even_numbers_only>
139 iter2(array, ARRAY_SIZE (array));
142 gdb_assert (iter1 == iter2);
143 gdb_assert (!(iter1 != iter2));
147 gdb_assert (!(iter1 == iter2));
148 gdb_assert (iter1 != iter2);
152 gdb_assert (iter1 == iter2);
153 gdb_assert (!(iter1 != iter2));
162 selftests::register_test (
"filtered_iterator",
164 selftests::register_test (
"filtered_iterator_eq",
void _initialize_filtered_iterator_selftests()
static void test_filtered_iterator()
static void test_filtered_iterator_eq()
bool operator!=(const int_array_iterator &other) const
bool operator==(const int_array_iterator &other) const
std::forward_iterator_tag iterator_category
int_array_iterator(int *array, size_t size)