QtBase  v6.3.1
Classes | Namespaces | Macros | Typedefs | Functions | Variables
qcontainertools_impl.h File Reference
#include <QtCore/qglobal.h>
#include <QtCore/qtypeinfo.h>
#include <cstring>
#include <iterator>
#include <memory>
#include <algorithm>
Include dependency graph for qcontainertools_impl.h:

Go to the source code of this file.

Classes

struct  QtPrivate::AssociativeIteratorHasKeyAndValue< Iterator, typename >
 
struct  QtPrivate::AssociativeIteratorHasKeyAndValue< Iterator, std::void_t< decltype(std::declval< Iterator & >().key()), decltype(std::declval< Iterator & >().value())> >
 
struct  QtPrivate::AssociativeIteratorHasFirstAndSecond< Iterator, typename, typename >
 
struct  QtPrivate::AssociativeIteratorHasFirstAndSecond< Iterator, std::void_t< decltype(std::declval< Iterator & >() ->first), decltype(std::declval< Iterator & >() ->second)> >
 
struct  QtPrivate::is_invoke_result_explicitly_convertible< R, F, ArgTypes >
 

Namespaces

 QtPrivate
 

Macros

#define QCONTAINERTOOLS_IMPL_H
 

Typedefs

template<typename Iterator >
using QtPrivate::IfIsInputIterator = typename std::enable_if< std::is_convertible< typename std::iterator_traits< Iterator >::iterator_category, std::input_iterator_tag >::value, bool >::type
 
template<typename Iterator >
using QtPrivate::IfIsForwardIterator = typename std::enable_if< std::is_convertible< typename std::iterator_traits< Iterator >::iterator_category, std::forward_iterator_tag >::value, bool >::type
 
template<typename Iterator >
using QtPrivate::IfIsNotForwardIterator = typename std::enable_if< !std::is_convertible< typename std::iterator_traits< Iterator >::iterator_category, std::forward_iterator_tag >::value, bool >::type
 
template<typename Iterator >
using QtPrivate::IfAssociativeIteratorHasKeyAndValue = typename std::enable_if< AssociativeIteratorHasKeyAndValue< Iterator >::value, bool >::type
 
template<typename Iterator >
using QtPrivate::IfAssociativeIteratorHasFirstAndSecond = typename std::enable_if< AssociativeIteratorHasFirstAndSecond< Iterator >::value, bool >::type
 
template<typename T , typename U >
using QtPrivate::IfIsNotSame = typename std::enable_if<!std::is_same< T, U >::value, bool >::type
 
template<typename T , typename U >
using QtPrivate::IfIsNotConvertible = typename std::enable_if<!std::is_convertible< T, U >::value, bool >::type
 

Functions

template<typename T , typename N >
void QtPrivate::q_uninitialized_move_if_noexcept_n (T *first, N n, T *out)
 
template<typename T , typename N >
void QtPrivate::q_uninitialized_relocate_n (T *first, N n, T *out)
 
template<typename iterator , typename N >
void QtPrivate::q_relocate_overlap_n_left_move (iterator first, N n, iterator d_first)
 
template<typename T , typename N >
void QtPrivate::q_relocate_overlap_n (T *first, N n, T *d_first)
 
template<typename Container , typename InputIterator , IfIsNotForwardIterator< InputIterator > = true>
void QtPrivate::reserveIfForwardIterator (Container *, InputIterator, InputIterator)
 
template<typename Container , typename ForwardIterator , IfIsForwardIterator< ForwardIterator > = true>
void QtPrivate::reserveIfForwardIterator (Container *c, ForwardIterator f, ForwardIterator l)
 
template<typename Container , typename Predicate >
auto QtPrivate::sequential_erase_if (Container &c, Predicate &pred)
 
template<typename Container , typename T >
auto QtPrivate::sequential_erase (Container &c, const T &t)
 
template<typename Container , typename T >
auto QtPrivate::sequential_erase_with_copy (Container &c, const T &t)
 
template<typename Container , typename T >
auto QtPrivate::sequential_erase_one (Container &c, const T &t)
 
template<typename T , typename Predicate >
qsizetype QtPrivate::qset_erase_if (QSet< T > &set, Predicate &pred)
 
template<typename Container , typename Predicate >
auto QtPrivate::associative_erase_if (Container &c, Predicate &pred)
 

Variables

template<typename R , typename F , typename ... ArgTypes>
constexpr bool QtPrivate::is_invocable_explicit_r_v
 

Macro Definition Documentation

◆ QCONTAINERTOOLS_IMPL_H

#define QCONTAINERTOOLS_IMPL_H

Definition at line 48 of file qcontainertools_impl.h.