line |
true |
false |
branch |
107
|
5 |
3 |
while (__x->_M_left != 0) __x = __x->_M_left; |
121
|
5 |
3 |
while (__x->_M_right != 0) __x = __x->_M_right; |
368
|
2 |
47 |
if (_M_root) |
372
|
1 |
1 |
if (_M_nodes->_M_left) |
395
|
7 |
8 |
if (__node) |
409
|
8 |
7 |
if (!_M_nodes) |
414
|
6 |
1 |
if (_M_nodes) |
416
|
3 |
3 |
if (_M_nodes->_M_right == __node) |
420
|
2 |
1 |
if (_M_nodes->_M_left) |
424
|
2 |
2 |
while (_M_nodes->_M_right) |
427
|
0 |
2 |
if (_M_nodes->_M_left) |
528
|
0 |
0 |
::new(__node) _Rb_tree_node<_Val>; |
|
58 |
0 |
::new(__node) _Rb_tree_node<_Val>; |
|
8 |
0 |
::new(__node) _Rb_tree_node<_Val>; |
|
4 |
0 |
::new(__node) _Rb_tree_node<_Val>; |
529
|
0 |
0 |
_Alloc_traits::construct(_M_get_Node_allocator(), |
|
58 |
0 |
_Alloc_traits::construct(_M_get_Node_allocator(), |
|
8 |
0 |
_Alloc_traits::construct(_M_get_Node_allocator(), |
|
4 |
0 |
_Alloc_traits::construct(_M_get_Node_allocator(), |
1454
|
49 |
0 |
if (this != &__x) |
1458
|
0 |
49 |
if (_Alloc_traits::_S_propagate_on_copy_assign()) |
1462
|
0 |
0 |
if (!_Alloc_traits::_S_always_equal() |
1468
|
0 |
0 |
std::__alloc_on_copy(__this_alloc, __that_alloc); |
1476
|
3 |
46 |
if (__x._M_root() != 0) |
1478
|
3 |
0 |
_M_root() = _M_copy(__x._M_begin(), _M_end(), __roan); |
1579
|
5 |
4 |
if (__x->_M_right) |
1580
|
5 |
0 |
__top->_M_right = _M_copy(_S_right(__x), __top, __node_gen); |
1584
|
6 |
9 |
while (__x != 0) |
1586
|
6 |
0 |
_Link_type __y = _M_clone_node(__x, __node_gen); |
1589
|
1 |
5 |
if (__x->_M_right) |
1590
|
1 |
0 |
__y->_M_right = _M_copy(_S_right(__x), __y, __node_gen); |
1596
|
0 |
0 |
{ |
1610
|
0 |
0 |
while (__x != 0) |
|
136 |
926 |
while (__x != 0) |
1627
|
34 |
23 |
while (__x != 0) |
|
53 |
34 |
while (__x != 0) |
1628
|
20 |
14 |
if (!_M_impl._M_key_compare(_S_key(__x), __k)) |
|
29 |
24 |
if (!_M_impl._M_key_compare(_S_key(__x), __k)) |
1643
|
17 |
9 |
while (__x != 0) |
1644
|
6 |
11 |
if (!_M_impl._M_key_compare(_S_key(__x), __k)) |
1659
|
10 |
17 |
while (__x != 0) |
1660
|
2 |
8 |
if (_M_impl._M_key_compare(__k, _S_key(__x))) |
1675
|
6 |
5 |
while (__x != 0) |
1676
|
2 |
4 |
if (_M_impl._M_key_compare(__k, _S_key(__x))) |
1694
|
32 |
5 |
while (__x != 0) |
1696
|
5 |
27 |
if (_M_impl._M_key_compare(_S_key(__x), __k)) |
1698
|
10 |
17 |
else if (_M_impl._M_key_compare(__k, _S_key(__x))) |
1707
|
17 |
0 |
_M_upper_bound(__xu, __yu, __k)); |
1725
|
11 |
0 |
while (__x != 0) |
1727
|
1 |
10 |
if (_M_impl._M_key_compare(_S_key(__x), __k)) |
1729
|
5 |
5 |
else if (_M_impl._M_key_compare(__k, _S_key(__x))) |
1738
|
5 |
0 |
_M_upper_bound(__xu, __yu, __k)); |
1807
|
0 |
0 |
while (__x != 0) |
1810
|
0 |
0 |
__comp = _M_impl._M_key_compare(__k, _S_key(__x)); |
1811
|
0 |
0 |
__x = __comp ? _S_left(__x) : _S_right(__x); |
1814
|
0 |
0 |
if (__comp) |
1816
|
0 |
0 |
if (__j == begin()) |
1821
|
0 |
0 |
if (_M_impl._M_key_compare(_S_key(__j._M_node), __k)) |
|
0 |
0 |
if (_M_impl._M_key_compare(_S_key(__j._M_node), __k)) |
1838
|
132 |
111 |
while (__x != 0) |
1841
|
132 |
0 |
__x = _M_impl._M_key_compare(__k, _S_key(__x)) ? |
|
132 |
0 |
__x = _M_impl._M_key_compare(__k, _S_key(__x)) ? |
|
48 |
84 |
__x = _M_impl._M_key_compare(__k, _S_key(__x)) ? |
1910
|
0 |
0 |
if (__pos._M_node == _M_end()) |
1912
|
0 |
0 |
if (size() > 0 |
1913
|
0 |
0 |
&& _M_impl._M_key_compare(_S_key(_M_rightmost()), __k)) |
1916
|
0 |
0 |
return _M_get_insert_unique_pos(__k); |
1918
|
0 |
0 |
else if (_M_impl._M_key_compare(__k, _S_key(__pos._M_node))) |
|
0 |
0 |
else if (_M_impl._M_key_compare(__k, _S_key(__pos._M_node))) |
1922
|
0 |
0 |
if (__pos._M_node == _M_leftmost()) // begin() |
1924
|
0 |
0 |
else if (_M_impl._M_key_compare(_S_key((--__before)._M_node), __k)) |
|
0 |
0 |
else if (_M_impl._M_key_compare(_S_key((--__before)._M_node), __k)) |
1926
|
0 |
0 |
if (_S_right(__before._M_node) == 0) |
1932
|
0 |
0 |
return _M_get_insert_unique_pos(__k); |
1934
|
0 |
0 |
else if (_M_impl._M_key_compare(_S_key(__pos._M_node), __k)) |
|
0 |
0 |
else if (_M_impl._M_key_compare(_S_key(__pos._M_node), __k)) |
1938
|
0 |
0 |
if (__pos._M_node == _M_rightmost()) |
1940
|
0 |
0 |
else if (_M_impl._M_key_compare(__k, _S_key((++__after)._M_node))) |
|
0 |
0 |
else if (_M_impl._M_key_compare(__k, _S_key((++__after)._M_node))) |
1942
|
0 |
0 |
if (_S_right(__pos._M_node) == 0) |
1948
|
0 |
0 |
return _M_get_insert_unique_pos(__k); |
2074
|
0 |
0 |
_S_key(__p))); |
|
13 |
53 |
_S_key(__p))); |
2153
|
8 |
0 |
auto __res = _M_get_insert_equal_pos(_S_key(__z)); |
|
8 |
0 |
auto __res = _M_get_insert_equal_pos(_S_key(__z)); |
|
4 |
0 |
auto __res = _M_get_insert_equal_pos(_S_key(__z)); |
|
4 |
0 |
auto __res = _M_get_insert_equal_pos(_S_key(__z)); |
2154
|
8 |
0 |
return _M_insert_node(__res.first, __res.second, __z); |
|
4 |
0 |
return _M_insert_node(__res.first, __res.second, __z); |
2174
|
0 |
0 |
auto __res = _M_get_insert_hint_unique_pos(__pos, _S_key(__z)); |
|
0 |
0 |
auto __res = _M_get_insert_hint_unique_pos(__pos, _S_key(__z)); |
2176
|
0 |
0 |
if (__res.second) |
2177
|
0 |
0 |
return _M_insert_node(__res.first, __res.second, __z); |
2259
|
4 |
6 |
if (__first == begin() && __last == end()) |
|
1 |
3 |
if (__first == begin() && __last == end()) |
|
4 |
6 |
if (__first == begin() && __last == end()) |
|
4 |
6 |
if (__first == begin() && __last == end()) |
|
10 |
0 |
if (__first == begin() && __last == end()) |
|
10 |
0 |
if (__first == begin() && __last == end()) |
|
1 |
9 |
if (__first == begin() && __last == end()) |
2262
|
7 |
9 |
while (__first != __last) |
2272
|
3 |
0 |
pair __p = equal_range(__x); |
2274
|
3 |
0 |
erase(__p.first, __p.second); |
2295
|
292 |
0 |
iterator __j = _M_lower_bound(_M_begin(), _M_end(), __k); |
|
17 |
0 |
iterator __j = _M_lower_bound(_M_begin(), _M_end(), __k); |
2296
|
0 |
292 |
return (__j == end() |
|
0 |
0 |
return (__j == end() |
|
0 |
17 |
return (__j == end() |
|
0 |
0 |
return (__j == end() |
2297
|
17 |
0 |
|| _M_impl._M_key_compare(__k, |
2298
|
251 |
41 |
_S_key(__j._M_node))) ? end() : __j; |
|
17 |
0 |
_S_key(__j._M_node))) ? end() : __j; |
|
17 |
0 |
_S_key(__j._M_node))) ? end() : __j; |
|
3 |
14 |
_S_key(__j._M_node))) ? end() : __j; |
2320
|
3 |
0 |
pair __p = equal_range(__k); |
2321
|
3 |
0 |
const size_type __n = std::distance(__p.first, __p.second); |