Library of Assembled Shared Sources
 
Loading...
Searching...
No Matches
lass::python::SharedPointerTraits< T, S, C > Struct Template Reference

Pointer-traits for Python Shadow classes that use lass::util::SharedPtr for storage. More...

#include <pyshadow_object.h>

Inheritance diagram for lass::python::SharedPointerTraits< T, S, C >:

Classes

struct  Rebind
 Rebind pointer traits to other shadowee type. More...
 

Public Types

typedef util::SharedPtr< T, S, C > TPtr
 Pointer to shadowee type.
 

Static Public Member Functions

static void acquire (const TPtr &)
 util::SharedPtr already handles reference counts
 
static void release (const TPtr &)
 util::SharedPtr already handles reference counts
 
static bool isEmpty (const TPtr &p)
 Return true when storing a nullptr.
 
static T * get (const TPtr &p)
 Get the raw pointer to the shadowee.
 
static TShadoweeID id (const TPtr &p)
 Convert shadowee pointer to ID for shadow cache.
 
template<typename U>
static TPtr staticCast (const util::SharedPtr< U, S, C > &p)
 Perform static cast on shadowee pointer.
 
template<typename U>
static TPtr dynamicCast (const util::SharedPtr< U, S, C > &p)
 Perform dynamic cast on shadowee pointer.
 
template<typename U>
static TPtr constCast (const util::SharedPtr< U, S, C > &p)
 Perform const cast on shadowee pointer.
 

Detailed Description

template<typename T, template< typename, typename > class S = util::ObjectStorage, typename C = util::DefaultCounter>
struct lass::python::SharedPointerTraits< T, S, C >

Pointer-traits for Python Shadow classes that use lass::util::SharedPtr for storage.

Definition at line 493 of file pyshadow_object.h.


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