PLCnext API Documentation 25.0.2.69
Public Member Functions | List of all members
Arp::Base::Core::PimplPtr< T, Copyable > Class Template Reference

Adapter class to implement PImpl idiom. More...

#include <PimplPtr.hxx>

Public Member Functions

template<class ... Args>
 PimplPtr (Args &&... args)
 Variadic constructor.
 
 PimplPtr (const PimplPtr &arg)=delete
 
 PimplPtr (PimplPtr &&arg) noexcept
 Default move constructor.
 
PimplPtroperator= (const PimplPtr &arg)=delete
 
PimplPtroperator= (PimplPtr &&arg) noexcept
 Default assignment move operator.
 
 ~PimplPtr (void)
 Default destructor.
 
Impl * operator-> (void)
 Arrow operator to access pointee.
 
const Impl * operator-> (void) const
 
Impl & operator* (void)
 Indirect operator to access pointee.
 
const Impl & operator* (void) const
 
 operator bool (void) const noexcept
 Checks if the pointer points to a valid object
 

Detailed Description

template<class T, bool Copyable = false>
class Arp::Base::Core::PimplPtr< T, Copyable >

Adapter class to implement PImpl idiom.

This helper class ensures const correctness and implements memory management using PImpl pattern.


The documentation for this class was generated from the following files: