Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
q20 Namespace Reference

Namespaces

namespace  chrono
 
namespace  detail
 
namespace  ranges
 

Classes

struct  identity
 
struct  is_bounded_array
 
struct  is_bounded_array< T[N]>
 
struct  is_unbounded_array
 
struct  is_unbounded_array< T[]>
 
struct  type_identity
 

Typedefs

template<typename Dereferencable>
using iter_reference_t = decltype(*std::declval<Dereferencable&>())
 
template<typename T>
using remove_cvref = std::remove_cv<std::remove_reference_t<T>>
 
template<typename T>
using remove_cvref_t = std::remove_cv_t<std::remove_reference_t<T>>
 
template<typename T>
using type_identity_t = typename type_identity<T>::type
 

Functions

template<typename T, typename... Args, typename Enable = std::void_t<decltype(::new (std::declval<void *>()) T(std::declval<Args>()...))>>
T * construct_at (T *ptr, Args &&... args)
 
template<typename T>
std::enable_if_t<!std::is_array_v< T >, std::unique_ptr< T > > make_unique_for_overwrite ()
 
template<typename T>
std::enable_if_t< q20::is_unbounded_array_v< T >, std::unique_ptr< T > > make_unique_for_overwrite (std::size_t n)
 
template<typename T, typename... Args>
std::enable_if_t< q20::is_bounded_array_v< T > > make_unique_for_overwrite (Args &&...)=delete
 
template<typename T>
constexpr T * to_address (T *p) noexcept
 
template<typename Ptr, typename std::enable_if_t<!std::is_pointer_v< Ptr >, bool > = true>
constexpr auto to_address (const Ptr &ptr) noexcept
 
template<typename InputIterator, typename OutputIterator>
constexpr OutputIterator copy (InputIterator first, InputIterator last, OutputIterator dest)
 
template<typename InputIterator, typename OutputIterator, typename UnaryPredicate>
constexpr OutputIterator copy_if (InputIterator first, InputIterator last, OutputIterator dest, UnaryPredicate pred)
 
template<typename InputIterator, typename Size, typename OutputIterator>
constexpr OutputIterator copy_n (InputIterator first, Size n, OutputIterator dest)
 
template<typename ForwardIterator, typename Value>
constexpr void fill (ForwardIterator first, ForwardIterator last, const Value &value)
 
template<typename OutputIterator, typename Size, typename Value>
constexpr OutputIterator fill_n (OutputIterator first, Size n, const Value &value)
 
template<typename ForwardIterator, typename BinaryPredicate = std::less<>>
constexpr ForwardIterator is_sorted_until (ForwardIterator first, ForwardIterator last, BinaryPredicate p={})
 
template<typename ForwardIterator, typename BinaryPredicate = std::less<>>
constexpr bool is_sorted (ForwardIterator first, ForwardIterator last, BinaryPredicate p={})
 
template<typename InputIterator, typename OutputIterator, typename UnaryFunction>
constexpr OutputIterator transform (InputIterator first, InputIterator last, OutputIterator dest, UnaryFunction op)
 
template<class C>
constexpr auto ssize (const C &c) -> std::common_type_t< std::ptrdiff_t, std::make_signed_t< decltype(c.size())> >
 
template<class T, std::ptrdiff_t N>
constexpr std::ptrdiff_t ssize (const T(&)[N]) noexcept
 
template<typename T, typename U>
constexpr std::vector< T, std::allocator< T > >::size_type erase (std::vector< T, std::allocator< T > > &c, const U &value)
 
template<typename T, typename Pred>
constexpr std::vector< T, std::allocator< T > >::size_type erase_if (std::vector< T, std::allocator< T > > &c, Pred pred)
 
constexpr bool is_constant_evaluated () noexcept
 
template<class T, class U>
constexpr bool cmp_equal (T t, U u) noexcept
 
template<class T, class U>
constexpr bool cmp_not_equal (T t, U u) noexcept
 
template<class T, class U>
constexpr bool cmp_less (T t, U u) noexcept
 
template<class T, class U>
constexpr bool cmp_greater (T t, U u) noexcept
 
template<class T, class U>
constexpr bool cmp_less_equal (T t, U u) noexcept
 
template<class T, class U>
constexpr bool cmp_greater_equal (T t, U u) noexcept
 
template<class R, class T>
constexpr bool in_range (T t) noexcept
 
template<typename T, typename U = T>
constexpr T exchange (T &obj, U &&newValue)
 

Variables

constexpr auto dynamic_extent = std::size_t(-1)
 
template<typename T>
constexpr bool is_bounded_array_v = q20::is_bounded_array<T>::value
 
template<typename T>
constexpr bool is_unbounded_array_v = q20::is_unbounded_array<T>::value
 

Typedef Documentation

◆ iter_reference_t

template<typename Dereferencable>
using q20::iter_reference_t = decltype(*std::declval<Dereferencable&>())

Definition at line 48 of file q20iterator.h.

◆ remove_cvref

template<typename T>
using q20::remove_cvref = std::remove_cv<std::remove_reference_t<T>>

Definition at line 77 of file q20type_traits.h.

◆ remove_cvref_t

template<typename T>
using q20::remove_cvref_t = std::remove_cv_t<std::remove_reference_t<T>>

Definition at line 79 of file q20type_traits.h.

◆ type_identity_t

template<typename T>
using q20::type_identity_t = typename type_identity<T>::type

Definition at line 92 of file q20type_traits.h.

Function Documentation

◆ cmp_equal()

template<class T, class U>
bool q20::cmp_equal ( T t,
U u )
constexprnoexcept

Definition at line 54 of file q20utility.h.

◆ cmp_greater()

template<class T, class U>
bool q20::cmp_greater ( T t,
U u )
constexprnoexcept

Definition at line 94 of file q20utility.h.

◆ cmp_greater_equal()

template<class T, class U>
bool q20::cmp_greater_equal ( T t,
U u )
constexprnoexcept

Definition at line 106 of file q20utility.h.

◆ cmp_less()

template<class T, class U>
bool q20::cmp_less ( T t,
U u )
constexprnoexcept

Definition at line 77 of file q20utility.h.

◆ cmp_less_equal()

template<class T, class U>
bool q20::cmp_less_equal ( T t,
U u )
constexprnoexcept

Definition at line 100 of file q20utility.h.

◆ cmp_not_equal()

template<class T, class U>
bool q20::cmp_not_equal ( T t,
U u )
constexprnoexcept

Definition at line 71 of file q20utility.h.

◆ construct_at()

template<typename T, typename... Args, typename Enable = std::void_t<decltype(::new (std::declval<void *>()) T(std::declval<Args>()...))>>
T * q20::construct_at ( T * ptr,
Args &&... args )

Definition at line 41 of file q20memory.h.

◆ copy()

template<typename InputIterator, typename OutputIterator>
OutputIterator q20::copy ( InputIterator first,
InputIterator last,
OutputIterator dest )
constexpr

Definition at line 43 of file q20algorithm.h.

◆ copy_if()

template<typename InputIterator, typename OutputIterator, typename UnaryPredicate>
OutputIterator q20::copy_if ( InputIterator first,
InputIterator last,
OutputIterator dest,
UnaryPredicate pred )
constexpr

Definition at line 55 of file q20algorithm.h.

◆ copy_n()

template<typename InputIterator, typename Size, typename OutputIterator>
OutputIterator q20::copy_n ( InputIterator first,
Size n,
OutputIterator dest )
constexpr

Definition at line 69 of file q20algorithm.h.

◆ erase()

template<typename T, typename U>
std::vector< T, std::allocator< T > >::size_type q20::erase ( std::vector< T, std::allocator< T > > & c,
const U & value )
constexpr

Definition at line 45 of file q20vector.h.

◆ erase_if()

template<typename T, typename Pred>
std::vector< T, std::allocator< T > >::size_type q20::erase_if ( std::vector< T, std::allocator< T > > & c,
Pred pred )
constexpr

Definition at line 55 of file q20vector.h.

◆ exchange()

template<typename T, typename U = T>
T q20::exchange ( T & obj,
U && newValue )
constexpr

Definition at line 127 of file q20utility.h.

◆ fill()

template<typename ForwardIterator, typename Value>
void q20::fill ( ForwardIterator first,
ForwardIterator last,
const Value & value )
constexpr

Definition at line 82 of file q20algorithm.h.

◆ fill_n()

template<typename OutputIterator, typename Size, typename Value>
OutputIterator q20::fill_n ( OutputIterator first,
Size n,
const Value & value )
constexpr

Definition at line 92 of file q20algorithm.h.

◆ in_range()

template<class R, class T>
bool q20::in_range ( T t)
constexprnoexcept

Definition at line 112 of file q20utility.h.

◆ is_constant_evaluated()

bool q20::is_constant_evaluated ( )
constexprnoexcept

Definition at line 53 of file q20type_traits.h.

◆ is_sorted()

template<typename ForwardIterator, typename BinaryPredicate = std::less<>>
bool q20::is_sorted ( ForwardIterator first,
ForwardIterator last,
BinaryPredicate p = {} )
constexpr

Definition at line 118 of file q20algorithm.h.

◆ is_sorted_until()

template<typename ForwardIterator, typename BinaryPredicate = std::less<>>
ForwardIterator q20::is_sorted_until ( ForwardIterator first,
ForwardIterator last,
BinaryPredicate p = {} )
constexpr

Definition at line 104 of file q20algorithm.h.

◆ make_unique_for_overwrite() [1/3]

template<typename T>
std::enable_if_t<!std::is_array_v< T >, std::unique_ptr< T > > q20::make_unique_for_overwrite ( )

Definition at line 57 of file q20memory.h.

◆ make_unique_for_overwrite() [2/3]

template<typename T, typename... Args>
std::enable_if_t< q20::is_bounded_array_v< T > > q20::make_unique_for_overwrite ( Args && ...)
delete

◆ make_unique_for_overwrite() [3/3]

template<typename T>
std::enable_if_t< q20::is_unbounded_array_v< T >, std::unique_ptr< T > > q20::make_unique_for_overwrite ( std::size_t n)

Definition at line 64 of file q20memory.h.

◆ ssize() [1/2]

template<class C>
auto q20::ssize ( const C & c) -> std::common_type_t<std::ptrdiff_t, std::make_signed_t<decltype(c.size())>>
constexpr

Definition at line 33 of file q20iterator.h.

◆ ssize() [2/2]

template<class T, std::ptrdiff_t N>
std::ptrdiff_t q20::ssize ( const T(&)[N])
constexprnoexcept

Definition at line 37 of file q20iterator.h.

◆ to_address() [1/2]

template<typename Ptr, typename std::enable_if_t<!std::is_pointer_v< Ptr >, bool > = true>
auto q20::to_address ( const Ptr & ptr)
constexprnoexcept

Definition at line 111 of file q20memory.h.

◆ to_address() [2/2]

template<typename T>
T * q20::to_address ( T * p)
constexprnoexcept

Definition at line 83 of file q20memory.h.

◆ transform()

template<typename InputIterator, typename OutputIterator, typename UnaryFunction>
OutputIterator q20::transform ( InputIterator first,
InputIterator last,
OutputIterator dest,
UnaryFunction op )
constexpr

Definition at line 125 of file q20algorithm.h.

Variable Documentation

◆ dynamic_extent

auto q20::dynamic_extent = std::size_t(-1)
inlineconstexpr

Definition at line 26 of file qspan.h.

Referenced by QSpan< T >::as_bytes, QSpan< T >::as_writable_bytes, and QSpan< T >::subspan().

◆ is_bounded_array_v

template<typename T>
bool q20::is_bounded_array_v = q20::is_bounded_array<T>::value
inlineconstexpr

Definition at line 42 of file q20type_traits.h.

◆ is_unbounded_array_v

template<typename T>
bool q20::is_unbounded_array_v = q20::is_unbounded_array<T>::value
inlineconstexpr

Definition at line 43 of file q20type_traits.h.