__gnu_pbds::lu_counter_policy< Max_Count, _Alloc >(3cxx)

NAME
__gnu_pbds::lu_counter_policy< Max_Count, _Alloc >

SYNOPSIS

#include <list_update_policy.hpp>

Inherits __gnu_pbds::detail::lu_counter_policy_base< _Alloc::size_type >.

  Public Types

enum { max_count }
typedef _Alloc allocator_type
typedef __rebind_m::other::reference metadata_reference
Reference to metadata on which this functor operates.
typedef detail::lu_counter_metadata< size_type > metadata_type
Metadata on which this functor operates.
typedef allocator_type::size_type size_type

  Public Member Functions

metadata_type operator() () const
Creates a metadata object.
bool operator() (metadata_reference r_data) const
Decides whether a metadata object should be moved to the front of the list.

  Private Member Functions

bool operator() (Metadata_Reference r_data, size_type m_max_count) const
lu_counter_metadata< size_type > operator() (size_type max_size) const

Detailed Description

  template<std::size_t Max_Count = 5, typename _Alloc = std::allocator<char>>
class __gnu_pbds::lu_counter_policy< Max_Count, _Alloc >"A list-update policy that moves elements to the front of the list based on the counter algorithm.

Definition at line 92 of file list_update_policy.hpp.

Member Typedef Documentation

  template<std::size_t Max_Count = 5, typename _Alloc = std::allocator<char>> typedef _Alloc __gnu_pbds::lu_counter_policy< Max_Count, _Alloc >::allocator_type

Definition at line 96 of file list_update_policy.hpp.

  template<std::size_t Max_Count = 5, typename _Alloc = std::allocator<char>> typedef __rebind_m::other::reference __gnu_pbds::lu_counter_policy< Max_Count, _Alloc >::metadata_reference

Reference to metadata on which this functor operates.

Definition at line 115 of file list_update_policy.hpp.

  template<std::size_t Max_Count = 5, typename _Alloc = std::allocator<char>> typedef detail::lu_counter_metadata<size_type> __gnu_pbds::lu_counter_policy< Max_Count, _Alloc >::metadata_type

Metadata on which this functor operates.

Definition at line 107 of file list_update_policy.hpp.

  template<std::size_t Max_Count = 5, typename _Alloc = std::allocator<char>> typedef allocator_type::size_type __gnu_pbds::lu_counter_policy< Max_Count, _Alloc >::size_type

Definition at line 97 of file list_update_policy.hpp.

Member Enumeration Documentation

  template<std::size_t Max_Count = 5, typename _Alloc = std::allocator<char>> anonymous enum

Enumerator

max_count
    When some element is accessed this number of times, it will be moved to the front of the list.

Definition at line 99 of file list_update_policy.hpp.

Member Function Documentation

  template<std::size_t Max_Count = 5, typename _Alloc = std::allocator<char>> metadata_type __gnu_pbds::lu_counter_policy< Max_Count, _Alloc >::operator() () const [inline]

Creates a metadata object.

Definition at line 119 of file list_update_policy.hpp.

References __gnu_pbds::lu_counter_policy< Max_Count, _Alloc >::max_count.

  template<std::size_t Max_Count = 5, typename _Alloc = std::allocator<char>> bool __gnu_pbds::lu_counter_policy< Max_Count, _Alloc >::operator() (metadata_reference r_data) const [inline]

Decides whether a metadata object should be moved to the front of the list.

Definition at line 125 of file list_update_policy.hpp.

References __gnu_pbds::lu_counter_policy< Max_Count, _Alloc >::max_count.

Author

Generated automatically by Doxygen for libstdc++ from the source code.