__gnu_pbds::lu_counter_policy< Max_Count, _Alloc > Class Template Reference
Inheritance diagram for __gnu_pbds::lu_counter_policy< Max_Count, _Alloc >:
[legend]

## Public Types

enum | { max_count }
typedef _Alloc | allocator_type
typedef detail::rebind_traits< _Alloc, metadata_type >::reference | metadata_reference
typedef detail::lu_counter_metadata< size_type > | metadata_type
typedef allocator_type::size_type | size_type

## Public Member Functions

metadata_type | operator() () const
bool | operator() (metadata_reference r_data) const

## 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 91 of file list_update_policy.hpp.

## Member Typedef Documentation

## metadata_reference

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

typedef detail::rebind_traits<_Alloc, metadata_type>::reference __gnu_pbds::lu_counter_policy< Max_Count, _Alloc >::metadata_reference

Reference to metadata on which this functor operates.

Definition at line 114 of file list_update_policy.hpp.

## metadata_type

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 106 of file list_update_policy.hpp.

## Member Enumeration Documentation

## anonymous enum

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 98 of file list_update_policy.hpp.

## Member Function Documentation

## operator()() [1/2]

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 118 of file list_update_policy.hpp.

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

## operator()() [2/2]

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 124 of file list_update_policy.hpp.

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

The documentation for this class was generated from the following file:

- list_update_policy.hpp