line |
true |
false |
branch |
528
|
78 |
0 |
::new(__node) _Rb_tree_node<_Val>; |
529
|
78 |
0 |
_Alloc_traits::construct(_M_get_Node_allocator(), |
1610
|
78 |
156 |
while (__x != 0) |
1627
|
377 |
533 |
while (__x != 0) |
1628
|
377 |
0 |
if (!_M_impl._M_key_compare(_S_key(__x), __k)) |
1807
|
0 |
78 |
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
|
78 |
0 |
if (__comp) |
1816
|
78 |
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)) |
1910
|
78 |
0 |
if (__pos._M_node == _M_end()) |
1912
|
0 |
78 |
if (size() > 0 |
1913
|
0 |
0 |
&& _M_impl._M_key_compare(_S_key(_M_rightmost()), __k)) |
1916
|
78 |
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))); |
2174
|
78 |
0 |
auto __res = _M_get_insert_hint_unique_pos(__pos, _S_key(__z)); |
|
78 |
0 |
auto __res = _M_get_insert_hint_unique_pos(__pos, _S_key(__z)); |
2176
|
78 |
0 |
if (__res.second) |
2177
|
78 |
0 |
return _M_insert_node(__res.first, __res.second, __z); |
2295
|
455 |
0 |
iterator __j = _M_lower_bound(_M_begin(), _M_end(), __k); |
2296
|
0 |
455 |
return (__j == end() |
|
0 |
0 |
return (__j == end() |
2298
|
377 |
78 |
_S_key(__j._M_node))) ? end() : __j; |