libstdc++
GNU C++ library
Loading...
Searching...
No Matches

◆ _S_compare()

template<class _CharT, class _Alloc>
int __gnu_cxx::rope< _CharT, _Alloc >::_S_compare ( const _RopeRep * __x,
const _RopeRep * __y )
staticprivate

Definition at line 1429 of file ropeimpl.h.

1431 {
1434
1435 if (0 == __right)
1436 return 0 != __left;
1437 if (0 == __left)
1438 return -1;
1439 __left_len = __left->_M_size;
1440 __right_len = __right->_M_size;
1441 if (__detail::_S_leaf == __left->_M_tag)
1442 {
1444 if (__detail::_S_leaf == __right->_M_tag)
1445 {
1447 return lexicographical_compare_3way(__l->_M_data,
1448 __l->_M_data + __left_len,
1449 __r->_M_data, __r->_M_data
1450 + __right_len);
1451 }
1452 else
1453 {
1456 return lexicographical_compare_3way(__l->_M_data, __l->_M_data
1457 + __left_len,
1458 __rstart, __rend);
1459 }
1460 }
1461 else
1462 {
1465 if (__detail::_S_leaf == __right->_M_tag)
1466 {
1469 __r->_M_data, __r->_M_data
1470 + __right_len);
1471 }
1472 else
1473 {
1477 __rstart, __rend);
1478 }
1479 }
1480 }
_Rope_const_iterator< _CharT, _Alloc > const_iterator
Definition rope:1561
_Rope_RopeLeaf< _CharT, _Alloc > _RopeLeaf
Definition rope:1593

References __gnu_cxx::_Rope_RopeLeaf< _CharT, _Alloc >::_M_data, __gnu_cxx::_Rope_rep_base< _CharT, _Alloc >::_M_size, __gnu_cxx::_Rope_RopeRep< _CharT, _Alloc >::_M_tag, __gnu_cxx::__detail::_S_leaf, and __gnu_cxx::lexicographical_compare_3way().

Referenced by __gnu_cxx::rope< char >::compare().

Here is the call graph for this function:
Here is the caller graph for this function: