diff options
Diffstat (limited to 'libstdc++/stl/pair.h')
-rw-r--r-- | libstdc++/stl/pair.h | 50 |
1 files changed, 19 insertions, 31 deletions
diff --git a/libstdc++/stl/pair.h b/libstdc++/stl/pair.h index ca20d8baf8a..00f5caddb61 100644 --- a/libstdc++/stl/pair.h +++ b/libstdc++/stl/pair.h @@ -12,7 +12,7 @@ * purpose. It is provided "as is" without express or implied warranty. * * - * Copyright (c) 1996 + * Copyright (c) 1996,1997 * Silicon Graphics Computer Systems, Inc. * * Permission to use, copy, modify, distribute and sell this software @@ -24,40 +24,28 @@ * purpose. It is provided "as is" without express or implied warranty. */ -#ifndef PAIR_H -#define PAIR_H +#ifndef __SGI_STL_PAIR_H +#define __SGI_STL_PAIR_H +#ifndef __STL_CONFIG_H #include <stl_config.h> - -template <class T1, class T2> -struct pair { - typedef T1 first_type; - typedef T2 second_type; - - T1 first; - T2 second; - pair() : first(T1()), second(T2()) {} - pair(const T1& a, const T2& b) : first(a), second(b) {} - -#ifdef __STL_MEMBER_TEMPLATES - template <class U1, class U2> - pair(const pair<U1, U2>& p) : first(p.first), second(p.second) {} #endif -}; +#ifndef __SGI_STL_INTERNAL_RELOPS +#include <stl_relops.h> +#endif +#ifndef __SGI_STL_INTERNAL_PAIR_H +#include <stl_pair.h> +#endif -template <class T1, class T2> -inline bool operator==(const pair<T1, T2>& x, const pair<T1, T2>& y) { - return x.first == y.first && x.second == y.second; -} +#ifdef __STL_USE_NAMESPACES -template <class T1, class T2> -inline bool operator<(const pair<T1, T2>& x, const pair<T1, T2>& y) { - return x.first < y.first || (!(y.first < x.first) && x.second < y.second); -} +using __STD::pair; +using __STD::make_pair; -template <class T1, class T2> -inline pair<T1, T2> make_pair(const T1& x, const T2& y) { - return pair<T1, T2>(x, y); -} +#endif /* __STL_USE_NAMESPACES */ -#endif +#endif /* __SGI_STL_PAIR_H */ + +// Local Variables: +// mode:C++ +// End: |