Changeset View
Changeset View
Standalone View
Standalone View
test/std/containers/unord/unord.multimap/local_iterators.pass.cpp
Show All 16 Lines | |||||
// local_iterator end (size_type n); | // local_iterator end (size_type n); | ||||
// const_local_iterator begin (size_type n) const; | // const_local_iterator begin (size_type n) const; | ||||
// const_local_iterator end (size_type n) const; | // const_local_iterator end (size_type n) const; | ||||
// const_local_iterator cbegin(size_type n) const; | // const_local_iterator cbegin(size_type n) const; | ||||
// const_local_iterator cend (size_type n) const; | // const_local_iterator cend (size_type n) const; | ||||
#include <unordered_map> | #include <unordered_map> | ||||
#include <string> | #include <string> | ||||
#include <set> | |||||
#include <cassert> | #include <cassert> | ||||
#include "min_allocator.h" | #include "min_allocator.h" | ||||
int main() | int main() | ||||
{ | { | ||||
{ | { | ||||
typedef std::unordered_multimap<int, std::string> C; | typedef std::unordered_multimap<int, std::string> C; | ||||
Show All 14 Lines | int main() | ||||
I i = c.begin(b); | I i = c.begin(b); | ||||
I j = c.end(b); | I j = c.end(b); | ||||
assert(std::distance(i, j) == 0); | assert(std::distance(i, j) == 0); | ||||
b = c.bucket(1); | b = c.bucket(1); | ||||
i = c.begin(b); | i = c.begin(b); | ||||
j = c.end(b); | j = c.end(b); | ||||
assert(std::distance(i, j) == 2); | assert(std::distance(i, j) == 2); | ||||
{ | |||||
std::set<std::string> s = {"one", "four"}; | |||||
for ( int n = 0; n < 2; ++n ) | |||||
{ | |||||
assert(i->first == 1); | assert(i->first == 1); | ||||
assert(i->second == "one"); | assert(s.find(i->second) != s.end()); | ||||
s.erase(s.find(i->second)); | |||||
++i; | ++i; | ||||
assert(i->first == 1); | } | ||||
assert(i->second == "four"); | } | ||||
b = c.bucket(2); | b = c.bucket(2); | ||||
i = c.begin(b); | i = c.begin(b); | ||||
j = c.end(b); | j = c.end(b); | ||||
assert(std::distance(i, j) == 2); | assert(std::distance(i, j) == 2); | ||||
{ | |||||
std::set<std::string> s = {"two", "four"}; | |||||
for ( int n = 0; n < 2; ++n ) | |||||
{ | |||||
assert(i->first == 2); | assert(i->first == 2); | ||||
assert(i->second == "two"); | assert(s.find(i->second) != s.end()); | ||||
s.erase(s.find(i->second)); | |||||
++i; | ++i; | ||||
assert(i->first == 2); | } | ||||
assert(i->second == "four"); | } | ||||
b = c.bucket(3); | b = c.bucket(3); | ||||
i = c.begin(b); | i = c.begin(b); | ||||
j = c.end(b); | j = c.end(b); | ||||
assert(std::distance(i, j) == 1); | assert(std::distance(i, j) == 1); | ||||
assert(i->first == 3); | assert(i->first == 3); | ||||
assert(i->second == "three"); | assert(i->second == "three"); | ||||
Show All 33 Lines | int main() | ||||
I i = c.begin(b); | I i = c.begin(b); | ||||
I j = c.end(b); | I j = c.end(b); | ||||
assert(std::distance(i, j) == 0); | assert(std::distance(i, j) == 0); | ||||
b = c.bucket(1); | b = c.bucket(1); | ||||
i = c.begin(b); | i = c.begin(b); | ||||
j = c.end(b); | j = c.end(b); | ||||
assert(std::distance(i, j) == 2); | assert(std::distance(i, j) == 2); | ||||
{ | |||||
std::set<std::string> s = {"one", "four"}; | |||||
for ( int n = 0; n < 2; ++n ) | |||||
{ | |||||
assert(i->first == 1); | assert(i->first == 1); | ||||
assert(i->second == "one"); | assert(s.find(i->second) != s.end()); | ||||
s.erase(s.find(i->second)); | |||||
++i; | ++i; | ||||
assert(i->first == 1); | } | ||||
assert(i->second == "four"); | } | ||||
b = c.bucket(2); | b = c.bucket(2); | ||||
i = c.begin(b); | i = c.begin(b); | ||||
j = c.end(b); | j = c.end(b); | ||||
assert(std::distance(i, j) == 2); | assert(std::distance(i, j) == 2); | ||||
{ | |||||
std::set<std::string> s = {"two", "four"}; | |||||
for ( int n = 0; n < 2; ++n ) | |||||
{ | |||||
assert(i->first == 2); | assert(i->first == 2); | ||||
assert(i->second == "two"); | assert(s.find(i->second) != s.end()); | ||||
s.erase(s.find(i->second)); | |||||
++i; | ++i; | ||||
assert(i->first == 2); | } | ||||
assert(i->second == "four"); | } | ||||
b = c.bucket(3); | b = c.bucket(3); | ||||
i = c.begin(b); | i = c.begin(b); | ||||
j = c.end(b); | j = c.end(b); | ||||
assert(std::distance(i, j) == 1); | assert(std::distance(i, j) == 1); | ||||
assert(i->first == 3); | assert(i->first == 3); | ||||
assert(i->second == "three"); | assert(i->second == "three"); | ||||
Show All 33 Lines | int main() | ||||
I i = c.cbegin(b); | I i = c.cbegin(b); | ||||
I j = c.cend(b); | I j = c.cend(b); | ||||
assert(std::distance(i, j) == 0); | assert(std::distance(i, j) == 0); | ||||
b = c.bucket(1); | b = c.bucket(1); | ||||
i = c.cbegin(b); | i = c.cbegin(b); | ||||
j = c.cend(b); | j = c.cend(b); | ||||
assert(std::distance(i, j) == 2); | assert(std::distance(i, j) == 2); | ||||
{ | |||||
std::set<std::string> s = {"one", "four"}; | |||||
for ( int n = 0; n < 2; ++n ) | |||||
{ | |||||
assert(i->first == 1); | assert(i->first == 1); | ||||
assert(i->second == "one"); | assert(s.find(i->second) != s.end()); | ||||
s.erase(s.find(i->second)); | |||||
++i; | ++i; | ||||
assert(i->first == 1); | } | ||||
assert(i->second == "four"); | } | ||||
b = c.bucket(2); | b = c.bucket(2); | ||||
i = c.cbegin(b); | i = c.cbegin(b); | ||||
j = c.cend(b); | j = c.cend(b); | ||||
assert(std::distance(i, j) == 2); | assert(std::distance(i, j) == 2); | ||||
{ | |||||
std::set<std::string> s = {"two", "four"}; | |||||
for ( int n = 0; n < 2; ++n ) | |||||
{ | |||||
assert(i->first == 2); | assert(i->first == 2); | ||||
assert(i->second == "two"); | assert(s.find(i->second) != s.end()); | ||||
s.erase(s.find(i->second)); | |||||
++i; | ++i; | ||||
assert(i->first == 2); | } | ||||
assert(i->second == "four"); | } | ||||
b = c.bucket(3); | b = c.bucket(3); | ||||
i = c.cbegin(b); | i = c.cbegin(b); | ||||
j = c.cend(b); | j = c.cend(b); | ||||
assert(std::distance(i, j) == 1); | assert(std::distance(i, j) == 1); | ||||
assert(i->first == 3); | assert(i->first == 3); | ||||
assert(i->second == "three"); | assert(i->second == "three"); | ||||
Show All 33 Lines | int main() | ||||
I i = c.cbegin(b); | I i = c.cbegin(b); | ||||
I j = c.cend(b); | I j = c.cend(b); | ||||
assert(std::distance(i, j) == 0); | assert(std::distance(i, j) == 0); | ||||
b = c.bucket(1); | b = c.bucket(1); | ||||
i = c.cbegin(b); | i = c.cbegin(b); | ||||
j = c.cend(b); | j = c.cend(b); | ||||
assert(std::distance(i, j) == 2); | assert(std::distance(i, j) == 2); | ||||
{ | |||||
std::set<std::string> s = {"one", "four"}; | |||||
for ( int n = 0; n < 2; ++n ) | |||||
{ | |||||
assert(i->first == 1); | assert(i->first == 1); | ||||
assert(i->second == "one"); | assert(s.find(i->second) != s.end()); | ||||
s.erase(s.find(i->second)); | |||||
++i; | ++i; | ||||
assert(i->first == 1); | } | ||||
assert(i->second == "four"); | } | ||||
b = c.bucket(2); | b = c.bucket(2); | ||||
i = c.cbegin(b); | i = c.cbegin(b); | ||||
j = c.cend(b); | j = c.cend(b); | ||||
assert(std::distance(i, j) == 2); | assert(std::distance(i, j) == 2); | ||||
{ | |||||
std::set<std::string> s = {"two", "four"}; | |||||
for ( int n = 0; n < 2; ++n ) | |||||
{ | |||||
assert(i->first == 2); | assert(i->first == 2); | ||||
assert(i->second == "two"); | assert(s.find(i->second) != s.end()); | ||||
s.erase(s.find(i->second)); | |||||
++i; | ++i; | ||||
assert(i->first == 2); | } | ||||
assert(i->second == "four"); | } | ||||
b = c.bucket(3); | b = c.bucket(3); | ||||
i = c.cbegin(b); | i = c.cbegin(b); | ||||
j = c.cend(b); | j = c.cend(b); | ||||
assert(std::distance(i, j) == 1); | assert(std::distance(i, j) == 1); | ||||
assert(i->first == 3); | assert(i->first == 3); | ||||
assert(i->second == "three"); | assert(i->second == "three"); | ||||
Show All 35 Lines | #if TEST_STD_VER >= 11 | ||||
I i = c.begin(b); | I i = c.begin(b); | ||||
I j = c.end(b); | I j = c.end(b); | ||||
assert(std::distance(i, j) == 0); | assert(std::distance(i, j) == 0); | ||||
b = c.bucket(1); | b = c.bucket(1); | ||||
i = c.begin(b); | i = c.begin(b); | ||||
j = c.end(b); | j = c.end(b); | ||||
assert(std::distance(i, j) == 2); | assert(std::distance(i, j) == 2); | ||||
{ | |||||
std::set<std::string> s = {"one", "four"}; | |||||
for ( int n = 0; n < 2; ++n ) | |||||
{ | |||||
assert(i->first == 1); | assert(i->first == 1); | ||||
assert(i->second == "one"); | assert(s.find(i->second) != s.end()); | ||||
s.erase(s.find(i->second)); | |||||
++i; | ++i; | ||||
assert(i->first == 1); | } | ||||
assert(i->second == "four"); | } | ||||
b = c.bucket(2); | b = c.bucket(2); | ||||
i = c.begin(b); | i = c.begin(b); | ||||
j = c.end(b); | j = c.end(b); | ||||
assert(std::distance(i, j) == 2); | assert(std::distance(i, j) == 2); | ||||
{ | |||||
std::set<std::string> s = {"two", "four"}; | |||||
for ( int n = 0; n < 2; ++n ) | |||||
{ | |||||
assert(i->first == 2); | assert(i->first == 2); | ||||
assert(i->second == "two"); | assert(s.find(i->second) != s.end()); | ||||
s.erase(s.find(i->second)); | |||||
++i; | ++i; | ||||
assert(i->first == 2); | } | ||||
assert(i->second == "four"); | } | ||||
b = c.bucket(3); | b = c.bucket(3); | ||||
i = c.begin(b); | i = c.begin(b); | ||||
j = c.end(b); | j = c.end(b); | ||||
assert(std::distance(i, j) == 1); | assert(std::distance(i, j) == 1); | ||||
assert(i->first == 3); | assert(i->first == 3); | ||||
assert(i->second == "three"); | assert(i->second == "three"); | ||||
Show All 34 Lines | #if TEST_STD_VER >= 11 | ||||
I i = c.begin(b); | I i = c.begin(b); | ||||
I j = c.end(b); | I j = c.end(b); | ||||
assert(std::distance(i, j) == 0); | assert(std::distance(i, j) == 0); | ||||
b = c.bucket(1); | b = c.bucket(1); | ||||
i = c.begin(b); | i = c.begin(b); | ||||
j = c.end(b); | j = c.end(b); | ||||
assert(std::distance(i, j) == 2); | assert(std::distance(i, j) == 2); | ||||
{ | |||||
std::set<std::string> s = {"one", "four"}; | |||||
for ( int n = 0; n < 2; ++n ) | |||||
{ | |||||
assert(i->first == 1); | assert(i->first == 1); | ||||
assert(i->second == "one"); | assert(s.find(i->second) != s.end()); | ||||
s.erase(s.find(i->second)); | |||||
++i; | ++i; | ||||
assert(i->first == 1); | } | ||||
assert(i->second == "four"); | } | ||||
b = c.bucket(2); | b = c.bucket(2); | ||||
i = c.begin(b); | i = c.begin(b); | ||||
j = c.end(b); | j = c.end(b); | ||||
assert(std::distance(i, j) == 2); | assert(std::distance(i, j) == 2); | ||||
{ | |||||
std::set<std::string> s = {"two", "four"}; | |||||
for ( int n = 0; n < 2; ++n ) | |||||
{ | |||||
assert(i->first == 2); | assert(i->first == 2); | ||||
assert(i->second == "two"); | assert(s.find(i->second) != s.end()); | ||||
s.erase(s.find(i->second)); | |||||
++i; | ++i; | ||||
assert(i->first == 2); | } | ||||
assert(i->second == "four"); | } | ||||
b = c.bucket(3); | b = c.bucket(3); | ||||
i = c.begin(b); | i = c.begin(b); | ||||
j = c.end(b); | j = c.end(b); | ||||
assert(std::distance(i, j) == 1); | assert(std::distance(i, j) == 1); | ||||
assert(i->first == 3); | assert(i->first == 3); | ||||
assert(i->second == "three"); | assert(i->second == "three"); | ||||
Show All 34 Lines | #if TEST_STD_VER >= 11 | ||||
I i = c.cbegin(b); | I i = c.cbegin(b); | ||||
I j = c.cend(b); | I j = c.cend(b); | ||||
assert(std::distance(i, j) == 0); | assert(std::distance(i, j) == 0); | ||||
b = c.bucket(1); | b = c.bucket(1); | ||||
i = c.cbegin(b); | i = c.cbegin(b); | ||||
j = c.cend(b); | j = c.cend(b); | ||||
assert(std::distance(i, j) == 2); | assert(std::distance(i, j) == 2); | ||||
{ | |||||
std::set<std::string> s = {"one", "four"}; | |||||
for ( int n = 0; n < 2; ++n ) | |||||
{ | |||||
assert(i->first == 1); | assert(i->first == 1); | ||||
assert(i->second == "one"); | assert(s.find(i->second) != s.end()); | ||||
s.erase(s.find(i->second)); | |||||
++i; | ++i; | ||||
assert(i->first == 1); | } | ||||
assert(i->second == "four"); | } | ||||
b = c.bucket(2); | b = c.bucket(2); | ||||
i = c.cbegin(b); | i = c.cbegin(b); | ||||
j = c.cend(b); | j = c.cend(b); | ||||
assert(std::distance(i, j) == 2); | assert(std::distance(i, j) == 2); | ||||
{ | |||||
std::set<std::string> s = {"two", "four"}; | |||||
for ( int n = 0; n < 2; ++n ) | |||||
{ | |||||
assert(i->first == 2); | assert(i->first == 2); | ||||
assert(i->second == "two"); | assert(s.find(i->second) != s.end()); | ||||
s.erase(s.find(i->second)); | |||||
++i; | ++i; | ||||
assert(i->first == 2); | } | ||||
assert(i->second == "four"); | } | ||||
b = c.bucket(3); | b = c.bucket(3); | ||||
i = c.cbegin(b); | i = c.cbegin(b); | ||||
j = c.cend(b); | j = c.cend(b); | ||||
assert(std::distance(i, j) == 1); | assert(std::distance(i, j) == 1); | ||||
assert(i->first == 3); | assert(i->first == 3); | ||||
assert(i->second == "three"); | assert(i->second == "three"); | ||||
Show All 34 Lines | #if TEST_STD_VER >= 11 | ||||
I i = c.cbegin(b); | I i = c.cbegin(b); | ||||
I j = c.cend(b); | I j = c.cend(b); | ||||
assert(std::distance(i, j) == 0); | assert(std::distance(i, j) == 0); | ||||
b = c.bucket(1); | b = c.bucket(1); | ||||
i = c.cbegin(b); | i = c.cbegin(b); | ||||
j = c.cend(b); | j = c.cend(b); | ||||
assert(std::distance(i, j) == 2); | assert(std::distance(i, j) == 2); | ||||
{ | |||||
std::set<std::string> s = {"one", "four"}; | |||||
for ( int n = 0; n < 2; ++n ) | |||||
{ | |||||
assert(i->first == 1); | assert(i->first == 1); | ||||
assert(i->second == "one"); | assert(s.find(i->second) != s.end()); | ||||
s.erase(s.find(i->second)); | |||||
++i; | ++i; | ||||
assert(i->first == 1); | } | ||||
assert(i->second == "four"); | } | ||||
b = c.bucket(2); | b = c.bucket(2); | ||||
i = c.cbegin(b); | i = c.cbegin(b); | ||||
j = c.cend(b); | j = c.cend(b); | ||||
assert(std::distance(i, j) == 2); | assert(std::distance(i, j) == 2); | ||||
{ | |||||
std::set<std::string> s = {"two", "four"}; | |||||
for ( int n = 0; n < 2; ++n ) | |||||
{ | |||||
assert(i->first == 2); | assert(i->first == 2); | ||||
assert(i->second == "two"); | assert(s.find(i->second) != s.end()); | ||||
s.erase(s.find(i->second)); | |||||
++i; | ++i; | ||||
assert(i->first == 2); | } | ||||
assert(i->second == "four"); | } | ||||
b = c.bucket(3); | b = c.bucket(3); | ||||
i = c.cbegin(b); | i = c.cbegin(b); | ||||
j = c.cend(b); | j = c.cend(b); | ||||
assert(std::distance(i, j) == 1); | assert(std::distance(i, j) == 1); | ||||
assert(i->first == 3); | assert(i->first == 3); | ||||
assert(i->second == "three"); | assert(i->second == "three"); | ||||
Show All 19 Lines |