NCBI C++ ToolKit
Public Types | Static Public Member Functions | List of all members
ct::const_set< _Ty, _Backend > Class Template Reference

Search Toolkit Book for ct::const_set

#include <util/compile_time.hpp>

+ Inheritance diagram for ct::const_set< _Ty, _Backend >:
+ Collaboration diagram for ct::const_set< _Ty, _Backend >:

Public Types

using _MyBase = const_set_map_base< simple_sort_traits< _Ty >, _Backend >
 
using _MyType = const_set< _Ty, _Backend >
 
using init_type = typename _MyBase::init_type
 
using value_type = typename _MyBase::value_type
 
using key_type = value_type
 
- Public Types inherited from compile_time_bits::const_set_map_base< simple_sort_traits< _Ty >, void >
using value_type = typename _Traits::value_type
 
using size_type = std::size_t
 
using difference_type = std::ptrdiff_t
 
using reference = const value_type &
 
using const_reference = const value_type &
 
using pointer = const value_type *
 
using const_pointer = const value_type *
 
using iterator = const value_type *
 
using const_iterator = const value_type *
 
using reverse_iterator = std::reverse_iterator< iterator >
 
using const_reverse_iterator = std::reverse_iterator< const_iterator >
 
using traits_type = simple_sort_traits< _Ty >
 
using hash_type = typename _Traits::hash_type
 
using intermediate = typename _Traits::key_type
 
using init_key_type = typename _Traits::init_key_type
 
using init_type = typename _Traits::init_type
 
using sorter_type = TInsertSorter< simple_sort_traits< _Ty >, tag_DuplicatesNo >
 
using index_type = std::conditional_t< can_index, hash_type, typename _Traits::value_type >
 
using backend_type = std::conditional_t< std::is_void< void >::value, portable_backend< index_type, value_type >, void >
 
using key_compare = typename _Traits::hashed_key_type::value_compare
 

Static Public Member Functions

template<size_t N>
static constexpr auto construct (init_type const (&init)[N])
 
template<size_t N>
static constexpr auto construct (const std::array< init_type, N > &init)
 

Additional Inherited Members

- Public Member Functions inherited from compile_time_bits::const_set_map_base< simple_sort_traits< _Ty >, void >
constexpr size_type size () const noexcept
 
constexpr size_type max_size () const noexcept
 
constexpr size_type capacity () const noexcept
 
constexpr bool empty () const noexcept
 
constexpr const_iterator begin () const noexcept
 
constexpr const_iterator cbegin () const noexcept
 
constexpr const_iterator end () const noexcept
 
constexpr const_iterator cend () const noexcept
 
constexpr const_reverse_iterator rbegin () const noexcept
 
constexpr const_reverse_iterator rcbegin () const noexcept
 
constexpr const_reverse_iterator rend () const noexcept
 
constexpr const_reverse_iterator rcend () const noexcept
 
const_iterator lower_bound (intermediate _key) const
 
const_iterator upper_bound (intermediate _key) const
 
std::pair< const_iterator, const_iteratorequal_range (intermediate _key) const
 
const_iterator find (intermediate _key) const
 
size_t get_alignment () const
 
const auto & get_backend () const noexcept
 
constexpr const_set_map_base ()=default
 
constexpr const_set_map_base (const backend_type &backend)
 
constexpr const_set_map_base (const _Other &_other)
 
- Static Public Attributes inherited from compile_time_bits::const_set_map_base< simple_sort_traits< _Ty >, void >
static constexpr bool can_index
 
static constexpr bool is_presorted
 
- Static Protected Member Functions inherited from compile_time_bits::const_set_map_base< simple_sort_traits< _Ty >, void >
static constexpr auto make_backend (const _ArrayType &init)
 
static constexpr auto presorted (const _ArrayType &init)
 
- Protected Attributes inherited from compile_time_bits::const_set_map_base< simple_sort_traits< _Ty >, void >
backend_type m_backend
 

Detailed Description

template<typename _Ty, typename _Backend = void>
class ct::const_set< _Ty, _Backend >

Definition at line 115 of file compile_time.hpp.

Member Typedef Documentation

◆ _MyBase

template<typename _Ty , typename _Backend = void>
using ct::const_set< _Ty, _Backend >::_MyBase = const_set_map_base<simple_sort_traits<_Ty>, _Backend>

Definition at line 118 of file compile_time.hpp.

◆ _MyType

template<typename _Ty , typename _Backend = void>
using ct::const_set< _Ty, _Backend >::_MyType = const_set<_Ty, _Backend>

Definition at line 119 of file compile_time.hpp.

◆ init_type

template<typename _Ty , typename _Backend = void>
using ct::const_set< _Ty, _Backend >::init_type = typename _MyBase::init_type

Definition at line 121 of file compile_time.hpp.

◆ key_type

template<typename _Ty , typename _Backend = void>
using ct::const_set< _Ty, _Backend >::key_type = value_type

Definition at line 124 of file compile_time.hpp.

◆ value_type

template<typename _Ty , typename _Backend = void>
using ct::const_set< _Ty, _Backend >::value_type = typename _MyBase::value_type

Definition at line 123 of file compile_time.hpp.

Member Function Documentation

◆ construct() [1/2]

template<typename _Ty , typename _Backend = void>
template<size_t N>
static constexpr auto ct::const_set< _Ty, _Backend >::construct ( const std::array< init_type, N > &  init)
inlinestaticconstexpr

Definition at line 134 of file compile_time.hpp.

References init().

◆ construct() [2/2]

template<typename _Ty , typename _Backend = void>
template<size_t N>
static constexpr auto ct::const_set< _Ty, _Backend >::construct ( init_type const (&)  init[N])
inlinestaticconstexpr

Definition at line 129 of file compile_time.hpp.

References init(), and compile_time_bits::make_array().


The documentation for this class was generated from the following file:
Modified on Thu Jun 13 17:25:49 2024 by modify_doxy.py rev. 669887