/* * * Copyright (c) 1994 * Hewlett-Packard Company * * Permission to use, copy, modify, distribute and sell this software * and its documentation for any purpose is hereby granted without fee, * provided that the above copyright notice appear in all copies and * that both that copyright notice and this permission notice appear * in supporting documentation. Hewlett-Packard Company and Microsoft * Corporation make no representations about the suitability of this * software for any purpose. It is provided "as is" without express or * implied warranty. * */ #ifndef PAIR_H #define PAIR_H #include /* *Added by d:\\convert.pl --begin-- */ namespace std { /* *Added by d:\\convert.pl --end-- */ template struct pair { T1 first; T2 second; pair(const T1& a, const T2& b) : first(a), second(b) {} }; template inline bool operator==(const pair& x, const pair& y) { return x.first == y.first && x.second == y.second; } template inline bool operator<(const pair& x, const pair& y) { return x.first < y.first || (!(y.first < x.first) && x.second < y.second); } template inline pair make_pair(const T1& x, const T2& y) { return pair(x, y); } /* *Added by d:\\convert.pl --begin-- */ } /* *Added by d:\\convert.pl --end-- */ #endif