libstdc++
Collaboration diagram for Heap-Based:

Modules

 Base and Policy Classes
 

Classes

class  __gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >
 

Typedefs

typedef _Alloc __gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::allocator_type
 
typedef Cmp_Fn __gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::cmp_fn
 
typedef base_type::const_iterator __gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::const_iterator
 
typedef __rebind_va::const_pointer __gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::const_pointer
 
typedef __rebind_va::const_reference __gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::const_reference
 
typedef Tag __gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::container_category
 
typedef allocator_type::difference_type __gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::difference_type
 
typedef base_type::iterator __gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::iterator
 
typedef base_type::point_const_iterator __gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::point_const_iterator
 
typedef base_type::point_iterator __gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::point_iterator
 
typedef __rebind_va::pointer __gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::pointer
 
typedef __rebind_va::reference __gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::reference
 
typedef allocator_type::size_type __gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::size_type
 
typedef _Tv __gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::value_type
 

Functions

 __gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::priority_queue (const cmp_fn &r_cmp_fn)
 
 __gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::priority_queue (const priority_queue &other)
 
template<typename It >
 __gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::priority_queue (It first_it, It last_it)
 
template<typename It >
 __gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::priority_queue (It first_it, It last_it, const cmp_fn &r_cmp_fn)
 
priority_queue__gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::operator= (const priority_queue &other)
 
void __gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::swap (priority_queue &other)
 

Detailed Description

Typedef Documentation

◆ allocator_type

template<typename _Tv , typename Cmp_Fn = std::less<_Tv>, typename Tag = pairing_heap_tag, typename _Alloc = std::allocator<char>>
typedef _Alloc __gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::allocator_type

Definition at line 90 of file priority_queue.hpp.

◆ cmp_fn

template<typename _Tv , typename Cmp_Fn = std::less<_Tv>, typename Tag = pairing_heap_tag, typename _Alloc = std::allocator<char>>
typedef Cmp_Fn __gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::cmp_fn

Definition at line 88 of file priority_queue.hpp.

◆ const_iterator

template<typename _Tv , typename Cmp_Fn = std::less<_Tv>, typename Tag = pairing_heap_tag, typename _Alloc = std::allocator<char>>
typedef base_type::const_iterator __gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::const_iterator

Definition at line 109 of file priority_queue.hpp.

◆ const_pointer

template<typename _Tv , typename Cmp_Fn = std::less<_Tv>, typename Tag = pairing_heap_tag, typename _Alloc = std::allocator<char>>
typedef __rebind_va::const_pointer __gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::const_pointer

Definition at line 104 of file priority_queue.hpp.

◆ const_reference

template<typename _Tv , typename Cmp_Fn = std::less<_Tv>, typename Tag = pairing_heap_tag, typename _Alloc = std::allocator<char>>
typedef __rebind_va::const_reference __gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::const_reference

Definition at line 102 of file priority_queue.hpp.

◆ container_category

template<typename _Tv , typename Cmp_Fn = std::less<_Tv>, typename Tag = pairing_heap_tag, typename _Alloc = std::allocator<char>>
typedef Tag __gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::container_category

Definition at line 89 of file priority_queue.hpp.

◆ difference_type

template<typename _Tv , typename Cmp_Fn = std::less<_Tv>, typename Tag = pairing_heap_tag, typename _Alloc = std::allocator<char>>
typedef allocator_type::difference_type __gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::difference_type

Definition at line 92 of file priority_queue.hpp.

◆ iterator

template<typename _Tv , typename Cmp_Fn = std::less<_Tv>, typename Tag = pairing_heap_tag, typename _Alloc = std::allocator<char>>
typedef base_type::iterator __gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::iterator

Definition at line 108 of file priority_queue.hpp.

◆ point_const_iterator

template<typename _Tv , typename Cmp_Fn = std::less<_Tv>, typename Tag = pairing_heap_tag, typename _Alloc = std::allocator<char>>
typedef base_type::point_const_iterator __gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::point_const_iterator

Definition at line 107 of file priority_queue.hpp.

◆ point_iterator

template<typename _Tv , typename Cmp_Fn = std::less<_Tv>, typename Tag = pairing_heap_tag, typename _Alloc = std::allocator<char>>
typedef base_type::point_iterator __gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::point_iterator

Definition at line 106 of file priority_queue.hpp.

◆ pointer

template<typename _Tv , typename Cmp_Fn = std::less<_Tv>, typename Tag = pairing_heap_tag, typename _Alloc = std::allocator<char>>
typedef __rebind_va::pointer __gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::pointer

Definition at line 103 of file priority_queue.hpp.

◆ reference

template<typename _Tv , typename Cmp_Fn = std::less<_Tv>, typename Tag = pairing_heap_tag, typename _Alloc = std::allocator<char>>
typedef __rebind_va::reference __gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::reference

Definition at line 101 of file priority_queue.hpp.

◆ size_type

template<typename _Tv , typename Cmp_Fn = std::less<_Tv>, typename Tag = pairing_heap_tag, typename _Alloc = std::allocator<char>>
typedef allocator_type::size_type __gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::size_type

Definition at line 91 of file priority_queue.hpp.

◆ value_type

template<typename _Tv , typename Cmp_Fn = std::less<_Tv>, typename Tag = pairing_heap_tag, typename _Alloc = std::allocator<char>>
typedef _Tv __gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::value_type

Definition at line 87 of file priority_queue.hpp.

Function Documentation

◆ priority_queue() [1/5]

template<typename _Tv , typename Cmp_Fn = std::less<_Tv>, typename Tag = pairing_heap_tag, typename _Alloc = std::allocator<char>>
__gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::priority_queue ( )
inline

Definition at line 111 of file priority_queue.hpp.

◆ priority_queue() [2/5]

template<typename _Tv , typename Cmp_Fn = std::less<_Tv>, typename Tag = pairing_heap_tag, typename _Alloc = std::allocator<char>>
__gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::priority_queue ( const cmp_fn &  r_cmp_fn)
inline

Constructor taking some policy objects. r_cmp_fn will be copied by the Cmp_Fn object of the container object.

Definition at line 115 of file priority_queue.hpp.

◆ priority_queue() [3/5]

template<typename _Tv , typename Cmp_Fn = std::less<_Tv>, typename Tag = pairing_heap_tag, typename _Alloc = std::allocator<char>>
__gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::priority_queue ( const priority_queue< _Tv, Cmp_Fn, Tag, _Alloc > &  other)
inline

Definition at line 133 of file priority_queue.hpp.

◆ priority_queue() [4/5]

template<typename _Tv , typename Cmp_Fn = std::less<_Tv>, typename Tag = pairing_heap_tag, typename _Alloc = std::allocator<char>>
template<typename It >
__gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::priority_queue ( It  first_it,
It  last_it 
)
inline

Constructor taking __iterators to a range of value_types. The value_types between first_it and last_it will be inserted into the container object.

Definition at line 121 of file priority_queue.hpp.

◆ priority_queue() [5/5]

template<typename _Tv , typename Cmp_Fn = std::less<_Tv>, typename Tag = pairing_heap_tag, typename _Alloc = std::allocator<char>>
template<typename It >
__gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::priority_queue ( It  first_it,
It  last_it,
const cmp_fn &  r_cmp_fn 
)
inline

Constructor taking __iterators to a range of value_types and some policy objects The value_types between first_it and last_it will be inserted into the container object. r_cmp_fn will be copied by the cmp_fn object of the container object.

Definition at line 129 of file priority_queue.hpp.

◆ ~priority_queue()

template<typename _Tv , typename Cmp_Fn = std::less<_Tv>, typename Tag = pairing_heap_tag, typename _Alloc = std::allocator<char>>
virtual __gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::~priority_queue ( )
inlinevirtual

Definition at line 137 of file priority_queue.hpp.

◆ operator=()

template<typename _Tv , typename Cmp_Fn = std::less<_Tv>, typename Tag = pairing_heap_tag, typename _Alloc = std::allocator<char>>
priority_queue & __gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::operator= ( const priority_queue< _Tv, Cmp_Fn, Tag, _Alloc > &  other)
inline

Definition at line 140 of file priority_queue.hpp.

◆ swap()

template<typename _Tv , typename Cmp_Fn = std::less<_Tv>, typename Tag = pairing_heap_tag, typename _Alloc = std::allocator<char>>
void __gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::swap ( priority_queue< _Tv, Cmp_Fn, Tag, _Alloc > &  other)
inline

Definition at line 151 of file priority_queue.hpp.