Lumiera  0.pre.03
»edit your freedom«
ScopedPtrHolder< B > Class Template Reference

#include "lib/scoped-holder.hpp"

Description

template<class B>
class lib::ScopedPtrHolder< B >

Extension to std::unique_ptr, allowing copy operations on empty pointers (i.e.

contained pointer is null).

Exceptions
error::Logicon attempt to copy otherwise

Definition at line 77 of file scoped-holder.hpp.

Public Member Functions

template<class SU >
 ScopedPtrHolder (SU *p)
 
template<class SU >
 ScopedPtrHolder (std::unique_ptr< SU > pu)
 
 ScopedPtrHolder (ScopedPtrHolder const &ref)
 
ScopedPtrHolderoperator= (ScopedPtrHolder const &ref)
 

Friends

void transfer_control (ScopedPtrHolder &from, ScopedPtrHolder &to)
 

Private Types

typedef std::unique_ptr< B > _Parent
 

Static Private Member Functions

static B * must_be_null (_Parent const &ptr)
 
+ Inheritance diagram for ScopedPtrHolder< B >:
+ Collaboration diagram for ScopedPtrHolder< B >:

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