00001
00002
00003
00004
00005 template <class _Key, class _Compare, class _Alloc>
00006 inline bool _STLP_CALL operator==(const _STLP_SET_FLAVOR<_Key,_Compare,_Alloc>& __x,
00007 const _STLP_SET_FLAVOR<_Key,_Compare,_Alloc>& __y) {
00008 return __x.size() == __y.size() &&
00009 equal(__x.begin(), __x.end(), __y.begin());
00010 }
00011
00012 template <class _Key, class _Compare, class _Alloc>
00013 inline bool _STLP_CALL operator<(const _STLP_SET_FLAVOR<_Key,_Compare,_Alloc>& __x,
00014 const _STLP_SET_FLAVOR<_Key,_Compare,_Alloc>& __y) {
00015 return lexicographical_compare(__x.begin(), __x.end(),
00016 __y.begin(), __y.end());
00017 }
00018
00019 #ifdef _STLP_USE_SEPARATE_RELOPS_NAMESPACE
00020
00021 template <class _Key, class _Compare, class _Alloc>
00022 inline bool _STLP_CALL operator!=(const _STLP_SET_FLAVOR<_Key,_Compare,_Alloc>& __x,
00023 const _STLP_SET_FLAVOR<_Key,_Compare,_Alloc>& __y) {
00024 return !(__x == __y);
00025 }
00026
00027 template <class _Key, class _Compare, class _Alloc>
00028 inline bool _STLP_CALL operator>(const _STLP_SET_FLAVOR<_Key,_Compare,_Alloc>& __x,
00029 const _STLP_SET_FLAVOR<_Key,_Compare,_Alloc>& __y) {
00030 return __y < __x;
00031 }
00032
00033 template <class _Key, class _Compare, class _Alloc>
00034 inline bool _STLP_CALL operator<=(const _STLP_SET_FLAVOR<_Key,_Compare,_Alloc>& __x,
00035 const _STLP_SET_FLAVOR<_Key,_Compare,_Alloc>& __y) {
00036 return !(__y < __x);
00037 }
00038
00039 template <class _Key, class _Compare, class _Alloc>
00040 inline bool _STLP_CALL operator>=(const _STLP_SET_FLAVOR<_Key,_Compare,_Alloc>& __x,
00041 const _STLP_SET_FLAVOR<_Key,_Compare,_Alloc>& __y) {
00042 return !(__x < __y);
00043 }
00044 #endif
00045
00046 #ifdef _STLP_FUNCTION_TMPL_PARTIAL_ORDER
00047
00048 template <class _Key, class _Compare, class _Alloc>
00049 inline void _STLP_CALL swap(_STLP_SET_FLAVOR<_Key,_Compare,_Alloc>& __x,
00050 _STLP_SET_FLAVOR<_Key,_Compare,_Alloc>& __y) {
00051 __x.swap(__y);
00052 }
00053
00054 #endif