QtBase  v6.3.1
Public Types | Public Member Functions | Static Public Attributes | List of all members
hb_sorted_array_t< Type > Struct Template Reference

#include <hb-array.hh>

Inheritance diagram for hb_sorted_array_t< Type >:
Inheritance graph
[legend]
Collaboration diagram for hb_sorted_array_t< Type >:
Collaboration graph
[legend]

Public Types

typedef hb_iter_t< hb_sorted_array_t, Type & > iter_base_t
 
- Public Types inherited from hb_iter_t< hb_sorted_array_t< Type >, Type & >
typedef Typeitem_t
 
- Public Types inherited from hb_array_t< Type >
typedef Type__item_t__
 
- Public Types inherited from hb_iter_t< iter_t, Item >
typedef Item item_t
 

Public Member Functions

 HB_ITER_USING (iter_base_t)
 
 hb_sorted_array_t ()=default
 
 hb_sorted_array_t (const hb_sorted_array_t &)=default
 
 ~hb_sorted_array_t ()=default
 
hb_sorted_array_toperator= (const hb_sorted_array_t &)=default
 
hb_sorted_array_toperator= (hb_sorted_array_t &&)=default
 
constexpr hb_sorted_array_t (std::nullptr_t)
 
constexpr hb_sorted_array_t (Type *array_, unsigned int length_)
 
template<unsigned int length_>
constexpr hb_sorted_array_t (Type(&array_)[length_])
 
template<typename U , hb_enable_if(hb_is_cr_convertible(U, Type)) >
constexpr hb_sorted_array_t (const hb_array_t< U > &o)
 
template<typename U , hb_enable_if(hb_is_cr_convertible(U, Type)) >
hb_sorted_array_toperator= (const hb_array_t< U > &o)
 
bool operator!= (const hb_sorted_array_t &o) const
 
hb_sorted_array_t sub_array (unsigned int start_offset, unsigned int *seg_count) const
 
hb_sorted_array_t sub_array (unsigned int start_offset, unsigned int seg_count) const
 
hb_sorted_array_t truncate (unsigned length) const
 
template<typename T >
Typebsearch (const T &x, Type *not_found=nullptr)
 
template<typename T >
const Typebsearch (const T &x, const Type *not_found=nullptr) const
 
template<typename T >
bool bfind (const T &x, unsigned int *i=nullptr, hb_not_found_t not_found=HB_NOT_FOUND_DONT_STORE, unsigned int to_store=(unsigned int) -1) const
 
template<typename T >
bool bsearch_impl (const T &x, unsigned *pos) const
 
- Public Member Functions inherited from hb_iter_t< hb_sorted_array_t< Type >, Type & >
constexpr unsigned get_item_size () const
 
hb_sorted_array_t< Typeiter () const
 
hb_sorted_array_t< Typeoperator+ () const
 
hb_sorted_array_t< Typeoperator+ (unsigned count) const
 
hb_sorted_array_t< Typebegin () const
 
hb_sorted_array_t< Typeend () const
 
 operator bool () const
 
unsigned len () const
 
hb_remove_reference< item_t > * operator-> () const
 
item_t operator* () const
 
item_t operator* ()
 
item_t operator[] (unsigned i) const
 
item_t operator[] (unsigned i)
 
hb_sorted_array_t< Type > & operator+= (unsigned count) &
 
hb_sorted_array_t< Typeoperator+= (unsigned count) &&
 
hb_sorted_array_t< Type > & operator++ () &
 
hb_sorted_array_t< Typeoperator++ () &&
 
hb_sorted_array_t< Typeoperator++ (int)
 
hb_sorted_array_t< Type > & operator-= (unsigned count) &
 
hb_sorted_array_t< Typeoperator-= (unsigned count) &&
 
hb_sorted_array_t< Type > & operator-- () &
 
hb_sorted_array_t< Typeoperator-- () &&
 
hb_sorted_array_t< Typeoperator-- (int)
 
hb_sorted_array_t< Typeoperator- (unsigned count) const
 
hb_sorted_array_t< Type > & operator>> (T &v) &
 
hb_sorted_array_t< Typeoperator>> (T &v) &&
 
hb_sorted_array_t< Type > & operator<< (const T v) &
 
hb_sorted_array_t< Typeoperator<< (const T v) &&
 
- Public Member Functions inherited from hb_array_t< Type >
 hb_array_t ()=default
 
 hb_array_t (const hb_array_t &)=default
 
 ~hb_array_t ()=default
 
hb_array_toperator= (const hb_array_t &)=default
 
hb_array_toperator= (hb_array_t &&)=default
 
constexpr hb_array_t (std::nullptr_t)
 
constexpr hb_array_t (Type *array_, unsigned int length_)
 
template<unsigned int length_>
constexpr hb_array_t (Type(&array_)[length_])
 
template<typename U , hb_enable_if(hb_is_cr_convertible(U, Type)) >
constexpr hb_array_t (const hb_array_t< U > &o)
 
template<typename U , hb_enable_if(hb_is_cr_convertible(U, Type)) >
hb_array_toperator= (const hb_array_t< U > &o)
 
Type__item_at__ (unsigned i) const
 
void __forward__ (unsigned n)
 
void __rewind__ (unsigned n)
 
unsigned __len__ () const
 
bool operator!= (const hb_array_t &o) const
 
Typeoperator& () const
 
 operator hb_array_t< const Type > ()
 
template<typename T >
 operator T* () const
 
HB_INTERNAL bool operator== (const hb_array_t &o) const
 
uint32_t hash () const
 
int cmp (const hb_array_t &a) const
 
template<typename T >
Typelsearch (const T &x, Type *not_found=nullptr)
 
template<typename T >
const Typelsearch (const T &x, const Type *not_found=nullptr) const
 
template<typename T >
bool lfind (const T &x, unsigned *pos=nullptr, hb_not_found_t not_found=HB_NOT_FOUND_DONT_STORE, unsigned int to_store=(unsigned int) -1) const
 
hb_sorted_array_t< Typeqsort (int(*cmp_)(const void *, const void *))
 
hb_sorted_array_t< Typeqsort ()
 
void qsort (unsigned int start, unsigned int end)
 
unsigned int get_size () const
 
void reverse (unsigned start=0, unsigned end=-1)
 
hb_array_t sub_array (unsigned int start_offset=0, unsigned int *seg_count=nullptr) const
 
hb_array_t sub_array (unsigned int start_offset, unsigned int seg_count) const
 
hb_array_t truncate (unsigned length) const
 
template<typename T , unsigned P = sizeof (Type), hb_enable_if(P==1) >
const Tas () const
 
template<typename T , unsigned P = sizeof (Type), hb_enable_if(P==1) >
bool check_range (const T *p, unsigned int size=T::static_size) const
 
void fini ()
 
template<typename hb_serialize_context_t >
hb_array_t copy (hb_serialize_context_t *c) const
 
template<typename hb_sanitize_context_t >
bool sanitize (hb_sanitize_context_t *c) const
 
uint32_t hash () const
 
- Public Member Functions inherited from hb_iter_t< iter_t, Item >
constexpr unsigned get_item_size () const
 
iter_t iter () const
 
iter_t operator+ () const
 
iter_t begin () const
 
iter_t end () const
 
 operator bool () const
 
unsigned len () const
 
template<typename T = item_t, hb_enable_if(std::is_reference< T >::value) >
hb_remove_reference< item_t > * operator-> () const
 
item_t operator* () const
 
item_t operator* ()
 
item_t operator[] (unsigned i) const
 
item_t operator[] (unsigned i)
 
iter_t & operator+= (unsigned count) &
 
iter_t operator+= (unsigned count) &&
 
iter_t & operator++ () &
 
iter_t operator++ () &&
 
iter_t & operator-= (unsigned count) &
 
iter_t operator-= (unsigned count) &&
 
iter_t & operator-- () &
 
iter_t operator-- () &&
 
iter_t operator+ (unsigned count) const
 
iter_t operator++ (int)
 
iter_t operator- (unsigned count) const
 
iter_t operator-- (int)
 
template<typename T >
iter_t & operator>> (T &v) &
 
template<typename T >
iter_t operator>> (T &v) &&
 
template<typename T >
iter_t & operator<< (const T v) &
 
template<typename T >
iter_t operator<< (const T v) &&
 
- Public Member Functions inherited from hb_iter_fallback_mixin_t< iter_t, item_t >
item_t __item__ () const
 
item_t __item_at__ (unsigned i) const
 
bool __more__ () const
 
unsigned __len__ () const
 
void __next__ ()
 
void __forward__ (unsigned n)
 
void __prev__ ()
 
void __rewind__ (unsigned n)
 
iter_t __end__ () const
 

Static Public Attributes

static constexpr bool is_random_access_iterator = true
 
static constexpr bool is_sorted_iterator = true
 
- Static Public Attributes inherited from hb_iter_t< hb_sorted_array_t< Type >, Type & >
static constexpr bool is_iterator
 
static constexpr bool is_random_access_iterator
 
static constexpr bool is_sorted_iterator
 
- Static Public Attributes inherited from hb_array_t< Type >
static constexpr bool is_random_access_iterator = true
 
- Static Public Attributes inherited from hb_iter_t< iter_t, Item >
static constexpr bool is_iterator = true
 
static constexpr bool is_random_access_iterator = false
 
static constexpr bool is_sorted_iterator = false
 

Additional Inherited Members

- Static Public Member Functions inherited from hb_array_t< Type >
static HB_INTERNAL int cmp (const void *pa, const void *pb)
 
- Public Attributes inherited from hb_array_t< Type >
TypearrayZ = nullptr
 
unsigned int length = 0
 
unsigned int backwards_length = 0
 
- Protected Member Functions inherited from hb_iter_t< hb_sorted_array_t< Type >, Type & >
 hb_iter_t ()=default
 
 hb_iter_t (const hb_iter_t &o HB_UNUSED)=default
 
 hb_iter_t (hb_iter_t &&o HB_UNUSED)=default
 
hb_iter_toperator= (const hb_iter_t &o HB_UNUSED)=default
 
hb_iter_toperator= (hb_iter_t &&o HB_UNUSED)=default
 
- Protected Member Functions inherited from hb_iter_with_fallback_t< hb_array_t< Type >, Type & >
 hb_iter_with_fallback_t ()=default
 
 hb_iter_with_fallback_t (const hb_iter_with_fallback_t &o HB_UNUSED)=default
 
 hb_iter_with_fallback_t (hb_iter_with_fallback_t &&o HB_UNUSED)=default
 
hb_iter_with_fallback_toperator= (const hb_iter_with_fallback_t &o HB_UNUSED)=default
 
hb_iter_with_fallback_toperator= (hb_iter_with_fallback_t &&o HB_UNUSED)=default
 
- Protected Member Functions inherited from hb_iter_t< iter_t, Item >
 hb_iter_t ()=default
 
 hb_iter_t (const hb_iter_t &o HB_UNUSED)=default
 
 hb_iter_t (hb_iter_t &&o HB_UNUSED)=default
 
hb_iter_toperator= (const hb_iter_t &o HB_UNUSED)=default
 
hb_iter_toperator= (hb_iter_t &&o HB_UNUSED)=default
 
- Protected Member Functions inherited from hb_iter_fallback_mixin_t< iter_t, item_t >
 hb_iter_fallback_mixin_t ()=default
 
 hb_iter_fallback_mixin_t (const hb_iter_fallback_mixin_t &o HB_UNUSED)=default
 
 hb_iter_fallback_mixin_t (hb_iter_fallback_mixin_t &&o HB_UNUSED)=default
 
hb_iter_fallback_mixin_toperator= (const hb_iter_fallback_mixin_t &o HB_UNUSED)=default
 
hb_iter_fallback_mixin_toperator= (hb_iter_fallback_mixin_t &&o HB_UNUSED)=default
 

Detailed Description

template<typename Type>
struct hb_sorted_array_t< Type >

Definition at line 302 of file hb-array.hh.

Member Typedef Documentation

◆ iter_base_t

template<typename Type >
typedef hb_iter_t<hb_sorted_array_t, Type&> hb_sorted_array_t< Type >::iter_base_t

Definition at line 306 of file hb-array.hh.

Constructor & Destructor Documentation

◆ hb_sorted_array_t() [1/6]

template<typename Type >
hb_sorted_array_t< Type >::hb_sorted_array_t ( )
default
Here is the caller graph for this function:

◆ hb_sorted_array_t() [2/6]

template<typename Type >
hb_sorted_array_t< Type >::hb_sorted_array_t ( const hb_sorted_array_t< Type > &  )
default

◆ ~hb_sorted_array_t()

template<typename Type >
hb_sorted_array_t< Type >::~hb_sorted_array_t ( )
default

◆ hb_sorted_array_t() [3/6]

template<typename Type >
constexpr hb_sorted_array_t< Type >::hb_sorted_array_t ( std::nullptr_t  )
inlineconstexpr

Definition at line 317 of file hb-array.hh.

◆ hb_sorted_array_t() [4/6]

template<typename Type >
constexpr hb_sorted_array_t< Type >::hb_sorted_array_t ( Type array_,
unsigned int  length_ 
)
inlineconstexpr

Definition at line 318 of file hb-array.hh.

◆ hb_sorted_array_t() [5/6]

template<typename Type >
template<unsigned int length_>
constexpr hb_sorted_array_t< Type >::hb_sorted_array_t ( Type(&)  array_[length_])
inlineconstexpr

Definition at line 320 of file hb-array.hh.

◆ hb_sorted_array_t() [6/6]

template<typename Type >
template<typename U , hb_enable_if(hb_is_cr_convertible(U, Type)) >
constexpr hb_sorted_array_t< Type >::hb_sorted_array_t ( const hb_array_t< U > &  o)
inlineconstexpr

Definition at line 324 of file hb-array.hh.

Member Function Documentation

◆ bfind()

template<typename Type >
template<typename T >
bool hb_sorted_array_t< Type >::bfind ( const T x,
unsigned int *  i = nullptr,
hb_not_found_t  not_found = HB_NOT_FOUND_DONT_STORE,
unsigned int  to_store = (unsigned int) -1 
) const
inline

Definition at line 356 of file hb-array.hh.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ bsearch() [1/2]

template<typename Type >
template<typename T >
const Type* hb_sorted_array_t< Type >::bsearch ( const T x,
const Type not_found = nullptr 
) const
inline

Definition at line 350 of file hb-array.hh.

Here is the call graph for this function:

◆ bsearch() [2/2]

template<typename Type >
template<typename T >
Type* hb_sorted_array_t< Type >::bsearch ( const T x,
Type not_found = nullptr 
)
inline

Definition at line 344 of file hb-array.hh.

Here is the call graph for this function:

◆ bsearch_impl()

template<typename Type >
template<typename T >
bool hb_sorted_array_t< Type >::bsearch_impl ( const T x,
unsigned *  pos 
) const
inline

Definition at line 388 of file hb-array.hh.

Here is the caller graph for this function:

◆ HB_ITER_USING()

template<typename Type >
hb_sorted_array_t< Type >::HB_ITER_USING ( iter_base_t  )

◆ operator!=()

template<typename Type >
bool hb_sorted_array_t< Type >::operator!= ( const hb_sorted_array_t< Type > &  o) const
inline

Definition at line 333 of file hb-array.hh.

◆ operator=() [1/3]

template<typename Type >
template<typename U , hb_enable_if(hb_is_cr_convertible(U, Type)) >
hb_sorted_array_t& hb_sorted_array_t< Type >::operator= ( const hb_array_t< U > &  o)
inline

Definition at line 329 of file hb-array.hh.

◆ operator=() [2/3]

template<typename Type >
hb_sorted_array_t& hb_sorted_array_t< Type >::operator= ( const hb_sorted_array_t< Type > &  )
default

◆ operator=() [3/3]

template<typename Type >
hb_sorted_array_t& hb_sorted_array_t< Type >::operator= ( hb_sorted_array_t< Type > &&  )
default

◆ sub_array() [1/2]

template<typename Type >
hb_sorted_array_t hb_sorted_array_t< Type >::sub_array ( unsigned int  start_offset,
unsigned int *  seg_count 
) const
inline

Definition at line 336 of file hb-array.hh.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ sub_array() [2/2]

template<typename Type >
hb_sorted_array_t hb_sorted_array_t< Type >::sub_array ( unsigned int  start_offset,
unsigned int  seg_count 
) const
inline

Definition at line 338 of file hb-array.hh.

Here is the call graph for this function:

◆ truncate()

template<typename Type >
hb_sorted_array_t hb_sorted_array_t< Type >::truncate ( unsigned  length) const
inline

Definition at line 341 of file hb-array.hh.

Here is the call graph for this function:

Member Data Documentation

◆ is_random_access_iterator

template<typename Type >
constexpr bool hb_sorted_array_t< Type >::is_random_access_iterator = true
staticconstexpr

Definition at line 308 of file hb-array.hh.

◆ is_sorted_iterator

template<typename Type >
constexpr bool hb_sorted_array_t< Type >::is_sorted_iterator = true
staticconstexpr

Definition at line 309 of file hb-array.hh.


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