Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
Loading...
Searching...
No Matches
QtGlobalStatic::ApplicationHolder< QAS > Struct Template Reference

#include <qapplicationstatic.h>

+ Collaboration diagram for QtGlobalStatic::ApplicationHolder< QAS >:

Public Types

using Type = typename QAS::QAS_Type
 
using PlainType = std::remove_cv_t<Type>
 

Public Member Functions

 ApplicationHolder ()=default
 
 ~ApplicationHolder ()
 
PlainTypepointer () noexcept(MutexLockIsNoexcept &&ConstructionIsNoexcept)
 

Static Public Member Functions

static PlainTyperealPointer ()
 
static void reset ()
 

Static Public Attributes

struct { 
 
   unsigned char   data [sizeof(Type)] 
 
storage = {} 
 
static Q_CONSTINIT QBasicAtomicInteger< qint8guard = { QtGlobalStatic::Uninitialized }
 
static Q_CONSTINIT QBasicMutex mutex {}
 
static constexpr bool MutexLockIsNoexcept = noexcept(mutex.lock())
 
static constexpr bool ConstructionIsNoexcept = noexcept(QAS::innerFunction(nullptr))
 

Detailed Description

template<typename QAS>
struct QtGlobalStatic::ApplicationHolder< QAS >

Definition at line 17 of file qapplicationstatic.h.

Member Typedef Documentation

◆ PlainType

template<typename QAS >
using QtGlobalStatic::ApplicationHolder< QAS >::PlainType = std::remove_cv_t<Type>

Definition at line 20 of file qapplicationstatic.h.

◆ Type

template<typename QAS >
using QtGlobalStatic::ApplicationHolder< QAS >::Type = typename QAS::QAS_Type

Definition at line 19 of file qapplicationstatic.h.

Constructor & Destructor Documentation

◆ ApplicationHolder()

template<typename QAS >
QtGlobalStatic::ApplicationHolder< QAS >::ApplicationHolder ( )
default

◆ ~ApplicationHolder()

template<typename QAS >
QtGlobalStatic::ApplicationHolder< QAS >::~ApplicationHolder ( )
inline

Definition at line 31 of file qapplicationstatic.h.

References QtGlobalStatic::Destroyed, QtGlobalStatic::ApplicationHolder< QAS >::guard, QtGlobalStatic::Initialized, and QtGlobalStatic::ApplicationHolder< QAS >::realPointer().

+ Here is the call graph for this function:

Member Function Documentation

◆ pointer()

◆ realPointer()

template<typename QAS >
static PlainType * QtGlobalStatic::ApplicationHolder< QAS >::realPointer ( )
inlinestatic

Definition at line 40 of file qapplicationstatic.h.

References QtGlobalStatic::ApplicationHolder< QAS >::storage.

Referenced by QtGlobalStatic::ApplicationHolder< QAS >::~ApplicationHolder(), QtGlobalStatic::ApplicationHolder< QAS >::pointer(), and QtGlobalStatic::ApplicationHolder< QAS >::reset().

+ Here is the caller graph for this function:

◆ reset()

template<typename QAS >
static void QtGlobalStatic::ApplicationHolder< QAS >::reset ( )
inlinestatic

Definition at line 62 of file qapplicationstatic.h.

References QtGlobalStatic::ApplicationHolder< QAS >::guard, QtGlobalStatic::ApplicationHolder< QAS >::mutex, QtGlobalStatic::ApplicationHolder< QAS >::realPointer(), and QtGlobalStatic::Uninitialized.

+ Here is the call graph for this function:

Member Data Documentation

◆ ConstructionIsNoexcept

template<typename QAS >
constexpr bool QtGlobalStatic::ApplicationHolder< QAS >::ConstructionIsNoexcept = noexcept(QAS::innerFunction(nullptr))
staticconstexpr

Definition at line 27 of file qapplicationstatic.h.

◆ data

template<typename QAS >
unsigned char QtGlobalStatic::ApplicationHolder< QAS >::data[sizeof(Type)]

Definition at line 22 of file qapplicationstatic.h.

◆ guard

◆ mutex

template<typename QAS >
Q_CONSTINIT QBasicMutex QtGlobalStatic::ApplicationHolder< QAS >::mutex {}
inlinestatic

◆ MutexLockIsNoexcept

template<typename QAS >
constexpr bool QtGlobalStatic::ApplicationHolder< QAS >::MutexLockIsNoexcept = noexcept(mutex.lock())
staticconstexpr

Definition at line 26 of file qapplicationstatic.h.

◆ [struct]


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