diff options
Diffstat (limited to 'contrib/libstdc++/stl/stl_queue.h')
| -rw-r--r-- | contrib/libstdc++/stl/stl_queue.h | 202 | 
1 files changed, 0 insertions, 202 deletions
diff --git a/contrib/libstdc++/stl/stl_queue.h b/contrib/libstdc++/stl/stl_queue.h deleted file mode 100644 index c1e2b6984403..000000000000 --- a/contrib/libstdc++/stl/stl_queue.h +++ /dev/null @@ -1,202 +0,0 @@ -/* - * - * 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 makes no - * representations about the suitability of this software for any - * purpose.  It is provided "as is" without express or implied warranty. - * - * - * Copyright (c) 1996,1997 - * Silicon Graphics Computer Systems, Inc. - * - * 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.  Silicon Graphics makes no - * representations about the suitability of this software for any - * purpose.  It is provided "as is" without express or implied warranty. - */ - -/* NOTE: This is an internal header file, included by other STL headers. - *   You should not attempt to use it directly. - */ - -#ifndef __SGI_STL_INTERNAL_QUEUE_H -#define __SGI_STL_INTERNAL_QUEUE_H - -__STL_BEGIN_NAMESPACE - -#ifndef __STL_LIMITED_DEFAULT_TEMPLATES -template <class _Tp, class _Sequence = deque<_Tp> > -#else -template <class _Tp, class _Sequence> -#endif -class queue { -  friend bool operator== __STL_NULL_TMPL_ARGS (const queue&, const queue&); -  friend bool operator< __STL_NULL_TMPL_ARGS (const queue&, const queue&); -public: -  typedef typename _Sequence::value_type      value_type; -  typedef typename _Sequence::size_type       size_type; -  typedef          _Sequence                  container_type; - -  typedef typename _Sequence::reference       reference; -  typedef typename _Sequence::const_reference const_reference; -protected: -  _Sequence c; -public: -  queue() : c() {} -  explicit queue(const _Sequence& __c) : c(__c) {} - -  bool empty() const { return c.empty(); } -  size_type size() const { return c.size(); } -  reference front() { return c.front(); } -  const_reference front() const { return c.front(); } -  reference back() { return c.back(); } -  const_reference back() const { return c.back(); } -  void push(const value_type& __x) { c.push_back(__x); } -  void pop() { c.pop_front(); } -}; - -template <class _Tp, class _Sequence> -bool  -operator==(const queue<_Tp, _Sequence>& __x, const queue<_Tp, _Sequence>& __y) -{ -  return __x.c == __y.c; -} - -template <class _Tp, class _Sequence> -bool -operator<(const queue<_Tp, _Sequence>& __x, const queue<_Tp, _Sequence>& __y) -{ -  return __x.c < __y.c; -} - -#ifdef __STL_FUNCTION_TMPL_PARTIAL_ORDER - -template <class _Tp, class _Sequence> -bool -operator!=(const queue<_Tp, _Sequence>& __x, const queue<_Tp, _Sequence>& __y) -{ -  return !(__x == __y); -} - -template <class _Tp, class _Sequence> -bool  -operator>(const queue<_Tp, _Sequence>& __x, const queue<_Tp, _Sequence>& __y) -{ -  return __y < __x; -} - -template <class _Tp, class _Sequence> -bool  -operator<=(const queue<_Tp, _Sequence>& __x, const queue<_Tp, _Sequence>& __y) -{ -  return !(__y < __x); -} - -template <class _Tp, class _Sequence> -bool  -operator>=(const queue<_Tp, _Sequence>& __x, const queue<_Tp, _Sequence>& __y) -{ -  return !(__x < __y); -} - -#endif /* __STL_FUNCTION_TMPL_PARTIAL_ORDER */ - -#ifndef __STL_LIMITED_DEFAULT_TEMPLATES -template <class _Tp, class _Sequence = vector<_Tp>,  -          class _Compare = less<typename _Sequence::value_type> > -#else -template <class _Tp, class _Sequence, class _Compare> -#endif -class  priority_queue { -public: -  typedef typename _Sequence::value_type      value_type; -  typedef typename _Sequence::size_type       size_type; -  typedef          _Sequence                  container_type; - -  typedef typename _Sequence::reference       reference; -  typedef typename _Sequence::const_reference const_reference; -protected: -  _Sequence c; -  _Compare comp; -public: -  priority_queue() : c() {} -  explicit priority_queue(const _Compare& __x) :  c(), comp(__x) {} -  priority_queue(const _Compare& __x, const _Sequence& __s)  -    : c(__s), comp(__x)  -    { make_heap(c.begin(), c.end(), comp); } - -#ifdef __STL_MEMBER_TEMPLATES -  template <class _InputIterator> -  priority_queue(_InputIterator __first, _InputIterator __last)  -    : c(__first, __last) { make_heap(c.begin(), c.end(), comp); } - -  template <class _InputIterator> -  priority_queue(_InputIterator __first,  -                 _InputIterator __last, const _Compare& __x) -    : c(__first, __last), comp(__x)  -    { make_heap(c.begin(), c.end(), comp); } - -  template <class _InputIterator> -  priority_queue(_InputIterator __first, _InputIterator __last, -                 const _Compare& __x, const _Sequence& __s) -  : c(__s), comp(__x) -  {  -    c.insert(c.end(), __first, __last); -    make_heap(c.begin(), c.end(), comp); -  } - -#else /* __STL_MEMBER_TEMPLATES */ -  priority_queue(const value_type* __first, const value_type* __last)  -    : c(__first, __last) { make_heap(c.begin(), c.end(), comp); } - -  priority_queue(const value_type* __first, const value_type* __last,  -                 const _Compare& __x)  -    : c(__first, __last), comp(__x) -    { make_heap(c.begin(), c.end(), comp); } - -  priority_queue(const value_type* __first, const value_type* __last,  -                 const _Compare& __x, const _Sequence& __c) -    : c(__c), comp(__x)  -  {  -    c.insert(c.end(), __first, __last); -    make_heap(c.begin(), c.end(), comp); -  } -#endif /* __STL_MEMBER_TEMPLATES */ - -  bool empty() const { return c.empty(); } -  size_type size() const { return c.size(); } -  const_reference top() const { return c.front(); } -  void push(const value_type& __x) { -    __STL_TRY { -      c.push_back(__x);  -      push_heap(c.begin(), c.end(), comp); -    } -    __STL_UNWIND(c.clear()); -  } -  void pop() { -    __STL_TRY { -      pop_heap(c.begin(), c.end(), comp); -      c.pop_back(); -    } -    __STL_UNWIND(c.clear()); -  } -}; - -// no equality is provided - -__STL_END_NAMESPACE - -#endif /* __SGI_STL_INTERNAL_QUEUE_H */ - -// Local Variables: -// mode:C++ -// End:  | 
