Lines Matching refs:_Compare
497 template <class _Key, class _CP, class _Compare,
498 bool = is_empty<_Compare>::value && !__libcpp_is_final<_Compare>::value>
500 : private _Compare
505 _NOEXCEPT_(is_nothrow_default_constructible<_Compare>::value)
506 : _Compare() {}
508 __map_value_compare(_Compare c)
509 _NOEXCEPT_(is_nothrow_copy_constructible<_Compare>::value)
510 : _Compare(c) {}
512 const _Compare& key_comp() const _NOEXCEPT {return *this;}
515 … {return static_cast<const _Compare&>(*this)(__x.__get_value().first, __y.__get_value().first);}
518 {return static_cast<const _Compare&>(*this)(__x.__get_value().first, __y);}
521 {return static_cast<const _Compare&>(*this)(__x, __y.__get_value().first);}
523 _NOEXCEPT_(__is_nothrow_swappable<_Compare>::value)
526 swap(static_cast<_Compare&>(*this), static_cast<_Compare&>(__y));
532 typename enable_if<__is_transparent<_Compare, _K2>::value, bool>::type
534 {return static_cast<const _Compare&>(*this) (__x, __y.__get_value().first);}
538 typename enable_if<__is_transparent<_Compare, _K2>::value, bool>::type
540 {return static_cast<const _Compare&>(*this) (__x.__get_value().first, __y);}
544 template <class _Key, class _CP, class _Compare>
545 class __map_value_compare<_Key, _CP, _Compare, false>
547 _Compare comp;
552 _NOEXCEPT_(is_nothrow_default_constructible<_Compare>::value)
555 __map_value_compare(_Compare c)
556 _NOEXCEPT_(is_nothrow_copy_constructible<_Compare>::value)
559 const _Compare& key_comp() const _NOEXCEPT {return comp;}
571 _NOEXCEPT_(__is_nothrow_swappable<_Compare>::value)
580 typename enable_if<__is_transparent<_Compare, _K2>::value, bool>::type
586 typename enable_if<__is_transparent<_Compare, _K2>::value, bool>::type
592 template <class _Key, class _CP, class _Compare, bool __b>
595 swap(__map_value_compare<_Key, _CP, _Compare, __b>& __x,
596 __map_value_compare<_Key, _CP, _Compare, __b>& __y)
650 template <class _Key, class _Tp, class _Compare, class _Allocator>
652 template <class _Key, class _Tp, class _Compare, class _Allocator>
898 template <class _Key, class _Tp, class _Compare = less<_Key>,
907 typedef typename __identity<_Compare>::type key_compare;
1091 static_assert(sizeof(__diagnose_non_const_comparator<_Key, _Compare>()), "");
1386 typename enable_if<__is_transparent<_Compare, _K2>::value,iterator>::type
1390 typename enable_if<__is_transparent<_Compare, _K2>::value,const_iterator>::type
1400 typename enable_if<__is_transparent<_Compare, _K2>::value,size_type>::type
1418 typename enable_if<__is_transparent<_Compare, _K2>::value,iterator>::type
1423 typename enable_if<__is_transparent<_Compare, _K2>::value,const_iterator>::type
1436 typename enable_if<__is_transparent<_Compare, _K2>::value,iterator>::type
1440 typename enable_if<__is_transparent<_Compare, _K2>::value,const_iterator>::type
1453 typename enable_if<__is_transparent<_Compare, _K2>::value,pair<iterator,iterator>>::type
1457 …typename enable_if<__is_transparent<_Compare, _K2>::value,pair<const_iterator,const_iterator>>::ty…
1477 template<class _InputIterator, class _Compare = less<__iter_key_type<_InputIterator>>,
1479 class = _EnableIf<!__is_allocator<_Compare>::value, void>,
1481 map(_InputIterator, _InputIterator, _Compare = _Compare(), _Allocator = _Allocator())
1482 -> map<__iter_key_type<_InputIterator>, __iter_mapped_type<_InputIterator>, _Compare, _Allocator>;
1484 template<class _Key, class _Tp, class _Compare = less<remove_const_t<_Key>>,
1486 class = _EnableIf<!__is_allocator<_Compare>::value, void>,
1488 map(initializer_list<pair<_Key, _Tp>>, _Compare = _Compare(), _Allocator = _Allocator())
1489 -> map<remove_const_t<_Key>, _Tp, _Compare, _Allocator>;
1504 template <class _Key, class _Tp, class _Compare, class _Allocator>
1505 map<_Key, _Tp, _Compare, _Allocator>::map(map&& __m, const allocator_type& __a)
1517 template <class _Key, class _Tp, class _Compare, class _Allocator>
1519 map<_Key, _Tp, _Compare, _Allocator>::operator[](const key_type& __k)
1527 template <class _Key, class _Tp, class _Compare, class _Allocator>
1529 map<_Key, _Tp, _Compare, _Allocator>::operator[](key_type&& __k)
1539 template <class _Key, class _Tp, class _Compare, class _Allocator>
1540 typename map<_Key, _Tp, _Compare, _Allocator>::__node_holder
1541 map<_Key, _Tp, _Compare, _Allocator>::__construct_node_with_key(const key_type& __k)
1552 template <class _Key, class _Tp, class _Compare, class _Allocator>
1554 map<_Key, _Tp, _Compare, _Allocator>::operator[](const key_type& __k)
1570 template <class _Key, class _Tp, class _Compare, class _Allocator>
1572 map<_Key, _Tp, _Compare, _Allocator>::at(const key_type& __k)
1581 template <class _Key, class _Tp, class _Compare, class _Allocator>
1583 map<_Key, _Tp, _Compare, _Allocator>::at(const key_type& __k) const
1593 template <class _Key, class _Tp, class _Compare, class _Allocator>
1596 operator==(const map<_Key, _Tp, _Compare, _Allocator>& __x,
1597 const map<_Key, _Tp, _Compare, _Allocator>& __y)
1602 template <class _Key, class _Tp, class _Compare, class _Allocator>
1605 operator< (const map<_Key, _Tp, _Compare, _Allocator>& __x,
1606 const map<_Key, _Tp, _Compare, _Allocator>& __y)
1611 template <class _Key, class _Tp, class _Compare, class _Allocator>
1614 operator!=(const map<_Key, _Tp, _Compare, _Allocator>& __x,
1615 const map<_Key, _Tp, _Compare, _Allocator>& __y)
1620 template <class _Key, class _Tp, class _Compare, class _Allocator>
1623 operator> (const map<_Key, _Tp, _Compare, _Allocator>& __x,
1624 const map<_Key, _Tp, _Compare, _Allocator>& __y)
1629 template <class _Key, class _Tp, class _Compare, class _Allocator>
1632 operator>=(const map<_Key, _Tp, _Compare, _Allocator>& __x,
1633 const map<_Key, _Tp, _Compare, _Allocator>& __y)
1638 template <class _Key, class _Tp, class _Compare, class _Allocator>
1641 operator<=(const map<_Key, _Tp, _Compare, _Allocator>& __x,
1642 const map<_Key, _Tp, _Compare, _Allocator>& __y)
1647 template <class _Key, class _Tp, class _Compare, class _Allocator>
1650 swap(map<_Key, _Tp, _Compare, _Allocator>& __x,
1651 map<_Key, _Tp, _Compare, _Allocator>& __y)
1658 template <class _Key, class _Tp, class _Compare, class _Allocator,
1661 typename map<_Key, _Tp, _Compare, _Allocator>::size_type
1662 erase_if(map<_Key, _Tp, _Compare, _Allocator>& __c, _Predicate __pred) {
1668 template <class _Key, class _Tp, class _Compare = less<_Key>,
1677 typedef typename __identity<_Compare>::type key_compare;
1862 static_assert(sizeof(__diagnose_non_const_comparator<_Key, _Compare>()), "");
2052 typename enable_if<__is_transparent<_Compare, _K2>::value,iterator>::type
2056 typename enable_if<__is_transparent<_Compare, _K2>::value,const_iterator>::type
2066 typename enable_if<__is_transparent<_Compare, _K2>::value,size_type>::type
2084 typename enable_if<__is_transparent<_Compare, _K2>::value,iterator>::type
2089 typename enable_if<__is_transparent<_Compare, _K2>::value,const_iterator>::type
2102 typename enable_if<__is_transparent<_Compare, _K2>::value,iterator>::type
2106 typename enable_if<__is_transparent<_Compare, _K2>::value,const_iterator>::type
2119 typename enable_if<__is_transparent<_Compare, _K2>::value,pair<iterator,iterator>>::type
2123 …typename enable_if<__is_transparent<_Compare, _K2>::value,pair<const_iterator,const_iterator>>::ty…
2137 template<class _InputIterator, class _Compare = less<__iter_key_type<_InputIterator>>,
2139 class = _EnableIf<!__is_allocator<_Compare>::value, void>,
2141 multimap(_InputIterator, _InputIterator, _Compare = _Compare(), _Allocator = _Allocator())
2142 …-> multimap<__iter_key_type<_InputIterator>, __iter_mapped_type<_InputIterator>, _Compare, _Alloca…
2144 template<class _Key, class _Tp, class _Compare = less<remove_const_t<_Key>>,
2146 class = _EnableIf<!__is_allocator<_Compare>::value, void>,
2148 multimap(initializer_list<pair<_Key, _Tp>>, _Compare = _Compare(), _Allocator = _Allocator())
2149 -> multimap<remove_const_t<_Key>, _Tp, _Compare, _Allocator>;
2164 template <class _Key, class _Tp, class _Compare, class _Allocator>
2165 multimap<_Key, _Tp, _Compare, _Allocator>::multimap(multimap&& __m, const allocator_type& __a)
2178 template <class _Key, class _Tp, class _Compare, class _Allocator>
2181 operator==(const multimap<_Key, _Tp, _Compare, _Allocator>& __x,
2182 const multimap<_Key, _Tp, _Compare, _Allocator>& __y)
2187 template <class _Key, class _Tp, class _Compare, class _Allocator>
2190 operator< (const multimap<_Key, _Tp, _Compare, _Allocator>& __x,
2191 const multimap<_Key, _Tp, _Compare, _Allocator>& __y)
2196 template <class _Key, class _Tp, class _Compare, class _Allocator>
2199 operator!=(const multimap<_Key, _Tp, _Compare, _Allocator>& __x,
2200 const multimap<_Key, _Tp, _Compare, _Allocator>& __y)
2205 template <class _Key, class _Tp, class _Compare, class _Allocator>
2208 operator> (const multimap<_Key, _Tp, _Compare, _Allocator>& __x,
2209 const multimap<_Key, _Tp, _Compare, _Allocator>& __y)
2214 template <class _Key, class _Tp, class _Compare, class _Allocator>
2217 operator>=(const multimap<_Key, _Tp, _Compare, _Allocator>& __x,
2218 const multimap<_Key, _Tp, _Compare, _Allocator>& __y)
2223 template <class _Key, class _Tp, class _Compare, class _Allocator>
2226 operator<=(const multimap<_Key, _Tp, _Compare, _Allocator>& __x,
2227 const multimap<_Key, _Tp, _Compare, _Allocator>& __y)
2232 template <class _Key, class _Tp, class _Compare, class _Allocator>
2235 swap(multimap<_Key, _Tp, _Compare, _Allocator>& __x,
2236 multimap<_Key, _Tp, _Compare, _Allocator>& __y)
2243 template <class _Key, class _Tp, class _Compare, class _Allocator,
2246 typename multimap<_Key, _Tp, _Compare, _Allocator>::size_type
2247 erase_if(multimap<_Key, _Tp, _Compare, _Allocator>& __c,