Ark Server API (ASA) - Wiki
Loading...
Searching...
No Matches
TPimplPtr< T, EPimplPtrMode::DeepCopy > Struct Template Reference

#include <PimplPtr.h>

+ Inheritance diagram for TPimplPtr< T, EPimplPtrMode::DeepCopy >:
+ Collaboration diagram for TPimplPtr< T, EPimplPtrMode::DeepCopy >:

Public Member Functions

 TPimplPtr ()=default
 
 ~TPimplPtr ()=default
 
 TPimplPtr (const TPimplPtr &A)
 
TPimplPtroperator= (const TPimplPtr &A)
 
 TPimplPtr (TPimplPtr &&)=default
 
TPimplPtroperator= (TPimplPtr &&)=default
 
 TPimplPtr (TYPE_OF_NULLPTR)
 
FORCEINLINE TPimplPtroperator= (TYPE_OF_NULLPTR A)
 
bool IsValid () const
 
TGet () const
 
void Reset ()
 

Private Types

using Super = TPimplPtr<T, EPimplPtrMode::NoCopy>
 

Friends

template<typename U , EPimplPtrMode M, typename... ArgTypes>
TPimplPtr< U, M > MakePimpl (ArgTypes &&... Args)
 

Additional Inherited Members

- Private Member Functions inherited from TPimplPtr< T, EPimplPtrMode::NoCopy >
 TPimplPtr ()=default
 
 TPimplPtr (TYPE_OF_NULLPTR)
 
 ~TPimplPtr ()
 
 TPimplPtr (const TPimplPtr &)=delete
 
TPimplPtroperator= (const TPimplPtr &)=delete
 
 TPimplPtr (TPimplPtr &&Other)
 
TPimplPtroperator= (TPimplPtr &&Other)
 
TPimplPtroperator= (TYPE_OF_NULLPTR)
 
bool IsValid () const
 
 operator bool () const
 
Toperator-> () const
 
TGet () const
 
Toperator* () const
 
void Reset ()
 
FORCEINLINE bool operator== (TYPE_OF_NULLPTR)
 
FORCEINLINE bool operator!= (TYPE_OF_NULLPTR)
 

Detailed Description

template<typename T>
struct TPimplPtr< T, EPimplPtrMode::DeepCopy >

Definition at line 244 of file PimplPtr.h.

Member Typedef Documentation

◆ Super

Definition at line 247 of file PimplPtr.h.

Constructor & Destructor Documentation

◆ TPimplPtr() [1/4]

◆ ~TPimplPtr()

template<typename T >
TPimplPtr< T, EPimplPtrMode::DeepCopy >::~TPimplPtr ( )
default

◆ TPimplPtr() [2/4]

Definition at line 259 of file PimplPtr.h.

+ Here is the call graph for this function:

◆ TPimplPtr() [3/4]

◆ TPimplPtr() [4/4]

Definition at line 288 of file PimplPtr.h.

Member Function Documentation

◆ Get()

template<typename T >
T * TPimplPtr< T, EPimplPtrMode::NoCopy >::Get ( ) const
inline

Definition at line 217 of file PimplPtr.h.

◆ IsValid()

template<typename T >
bool TPimplPtr< T, EPimplPtrMode::NoCopy >::IsValid ( ) const
inline

Definition at line 202 of file PimplPtr.h.

◆ operator=() [1/3]

Definition at line 267 of file PimplPtr.h.

+ Here is the call graph for this function:

◆ operator=() [2/3]

◆ operator=() [3/3]

Definition at line 292 of file PimplPtr.h.

+ Here is the call graph for this function:

◆ Reset()

template<typename T >
void TPimplPtr< T, EPimplPtrMode::NoCopy >::Reset ( )
inline

Definition at line 227 of file PimplPtr.h.

Friends And Related Symbol Documentation

◆ MakePimpl

template<typename T >
template<typename U , EPimplPtrMode M, typename... ArgTypes>
TPimplPtr< U, M > MakePimpl ( ArgTypes &&... Args)
friend

Heap-allocates an instance of T with the given arguments and returns it as a TPimplPtr.

Usage: TPimplPtr<FMyType> MyPtr = MakePimpl<FMyType>(...arguments...);

DeepCopy Usage: TPimplPtr<FMyType, EPimplPtrMode::DeepCopy> MyPtr = MakePimpl<FMyType, EPimplPtrMode::DeepCopy>(...arguments...);

Definition at line 319 of file PimplPtr.h.


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