Lumiera 0.pre.04~rc.1
»edit your freedom«
Loading...
Searching...
No Matches
InPlaceAnyHolder< siz, AccessPolicy >::Buff< SUB > Struct Template Reference

Description

template<size_t siz, class AccessPolicy = InPlaceAnyHolder_unrelatedTypes>
template<typename SUB>
struct lib::InPlaceAnyHolder< siz, AccessPolicy >::Buff< SUB >

concrete subclass to manage a specific kind of contained object.

Note
invariant: content_ always contains a valid SUB object

Definition at line 244 of file opaque-holder.hpp.

Public Member Functions

SUB & get () const
 < core operation: target is contained within the inline buffer
 
 ~Buff ()
 
 Buff (SUB const &obj)
 
 Buff (Buff const &oBuff)
 
Buffoperator= (Buff const &ref)
 
virtual void clone (void *targetStorage) const
 
virtual BaseP getBase () const
 
virtual bool empty () const
 
virtual bool isValid () const
 
- Public Member Functions inherited from InPlaceAnyHolder< siz, AccessPolicy >::Buffer
void * ptr ()
 
virtual ~Buffer ()
 this is an ABC with VTable
 

Additional Inherited Members

- Public Attributes inherited from InPlaceAnyHolder< siz, AccessPolicy >::Buffer
std::byte content_ [siz]
 

Constructor & Destructor Documentation

◆ ~Buff()

template<size_t siz, class AccessPolicy = InPlaceAnyHolder_unrelatedTypes>
template<typename SUB >
~Buff ( )
inline

Definition at line 254 of file opaque-holder.hpp.

References InPlaceAnyHolder< siz, AccessPolicy >::Buff< SUB >::get().

+ Here is the call graph for this function:

◆ Buff() [1/2]

template<size_t siz, class AccessPolicy = InPlaceAnyHolder_unrelatedTypes>
template<typename SUB >
Buff ( SUB const &  obj)
inlineexplicit

Definition at line 260 of file opaque-holder.hpp.

References InPlaceAnyHolder< siz, AccessPolicy >::Buffer::ptr().

+ Here is the call graph for this function:

◆ Buff() [2/2]

template<size_t siz, class AccessPolicy = InPlaceAnyHolder_unrelatedTypes>
template<typename SUB >
Buff ( Buff< SUB > const &  oBuff)
inline

Definition at line 265 of file opaque-holder.hpp.

References InPlaceAnyHolder< siz, AccessPolicy >::Buff< SUB >::get(), and InPlaceAnyHolder< siz, AccessPolicy >::Buffer::ptr().

+ Here is the call graph for this function:

Member Function Documentation

◆ get()

template<size_t siz, class AccessPolicy = InPlaceAnyHolder_unrelatedTypes>
template<typename SUB >
SUB & get ( ) const
inline

< core operation: target is contained within the inline buffer

Definition at line 249 of file opaque-holder.hpp.

References InPlaceAnyHolder< siz, AccessPolicy >::Buffer::ptr().

Referenced by InPlaceAnyHolder< siz, AccessPolicy >::Buff< SUB >::Buff(), InPlaceAnyHolder< siz, AccessPolicy >::Buff< SUB >::~Buff(), InPlaceAnyHolder< siz, AccessPolicy >::Buff< SUB >::clone(), InPlaceAnyHolder< siz, AccessPolicy >::Buff< SUB >::getBase(), WrappedStandardExeBuilder::invokeOriginalBuilder(), InPlaceAnyHolder< siz, AccessPolicy >::Buff< SUB >::isValid(), and InPlaceAnyHolder< siz, AccessPolicy >::Buff< SUB >::operator=().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ operator=()

template<size_t siz, class AccessPolicy = InPlaceAnyHolder_unrelatedTypes>
template<typename SUB >
Buff & operator= ( Buff< SUB > const &  ref)
inline
Parameters
refcurrently not used

Definition at line 271 of file opaque-holder.hpp.

References InPlaceAnyHolder< siz, AccessPolicy >::Buff< SUB >::get().

+ Here is the call graph for this function:

◆ clone()

template<size_t siz, class AccessPolicy = InPlaceAnyHolder_unrelatedTypes>
template<typename SUB >
virtual void clone ( void *  targetStorage) const
inlinevirtual

Implements InPlaceAnyHolder< siz, AccessPolicy >::Buffer.

Definition at line 281 of file opaque-holder.hpp.

References InPlaceAnyHolder< siz, AccessPolicy >::Buff< SUB >::get().

+ Here is the call graph for this function:

◆ getBase()

template<size_t siz, class AccessPolicy = InPlaceAnyHolder_unrelatedTypes>
template<typename SUB >
virtual BaseP getBase ( ) const
inlinevirtual

Implements InPlaceAnyHolder< siz, AccessPolicy >::Buffer.

Definition at line 287 of file opaque-holder.hpp.

References InPlaceAnyHolder< siz, AccessPolicy >::Buff< SUB >::get().

+ Here is the call graph for this function:

◆ empty()

template<size_t siz, class AccessPolicy = InPlaceAnyHolder_unrelatedTypes>
template<typename SUB >
virtual bool empty ( ) const
inlinevirtual

Implements InPlaceAnyHolder< siz, AccessPolicy >::Buffer.

Definition at line 293 of file opaque-holder.hpp.

◆ isValid()

template<size_t siz, class AccessPolicy = InPlaceAnyHolder_unrelatedTypes>
template<typename SUB >
virtual bool isValid ( ) const
inlinevirtual

Implements InPlaceAnyHolder< siz, AccessPolicy >::Buffer.

Definition at line 299 of file opaque-holder.hpp.

References InPlaceAnyHolder< siz, AccessPolicy >::Buff< SUB >::get().

+ Here is the call graph for this function:
+ Inheritance diagram for InPlaceAnyHolder< siz, AccessPolicy >::Buff< SUB >:
+ Collaboration diagram for InPlaceAnyHolder< siz, AccessPolicy >::Buff< SUB >:

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