1 // This is an implementation file which
2 // is intended to be included multiple times with different _STLP_ASSOCIATIVE_CONTAINER
3 // setting
4 
5 #if !defined (_STLP_EQUAL_OPERATOR_SPECIALIZED)
6 _STLP_TEMPLATE_HEADER
7 inline bool _STLP_CALL operator==(const _STLP_TEMPLATE_CONTAINER& __x,
8                                   const _STLP_TEMPLATE_CONTAINER& __y) {
9   return __x.size() == __y.size() &&
10          equal(__x.begin(), __x.end(), __y.begin());
11 }
12 #endif /* _STLP_EQUAL_OPERATOR_SPECIALIZED */
13 
14 _STLP_TEMPLATE_HEADER
15 inline bool _STLP_CALL operator<(const _STLP_TEMPLATE_CONTAINER& __x,
16                                  const _STLP_TEMPLATE_CONTAINER& __y) {
17   return lexicographical_compare(__x.begin(), __x.end(),
18                                  __y.begin(), __y.end());
19 }
20 
_STLP_RELOPS_OPERATORS(_STLP_TEMPLATE_HEADER,_STLP_TEMPLATE_CONTAINER)21 _STLP_RELOPS_OPERATORS( _STLP_TEMPLATE_HEADER , _STLP_TEMPLATE_CONTAINER )
22 
23 #if defined (_STLP_FUNCTION_TMPL_PARTIAL_ORDER)
24 _STLP_TEMPLATE_HEADER
25 inline void _STLP_CALL swap(_STLP_TEMPLATE_CONTAINER& __x,
26                             _STLP_TEMPLATE_CONTAINER& __y) {
27   __x.swap(__y);
28 }
29 #endif /* _STLP_FUNCTION_TMPL_PARTIAL_ORDER */
30