| wxMaxima
    | 
An implementation detail for the type-specific templated cell pointers. More...
#include <CellPtr.h>
| Public Member Functions | |
| operator bool () const noexcept | |
| void | reset () noexcept | 
| auto | cmpPointers (const CellPtrBase &o) const noexcept | 
| This is exactly like the spaceship operator in C++20. | |
| auto | cmpObjects (const CellPtrBase &o) const noexcept | 
| This is the spaceship operator acting on pointed-to objects. | |
| auto | cmpObjects (const Observed *o) const noexcept | 
| This is the spaceship operator acting on pointed-to objects. | |
| bool | IsNull () const | 
| bool | HasOneObserved () const | 
| bool | HasControlBlock () const | 
| Static Public Member Functions | |
| template<typename U > | |
| static bool constexpr | is_pointer () | 
| static size_t | GetLiveInstanceCount () noexcept | 
| Protected Member Functions | |
| CellPtrBase (Observed *obj=nullptr) noexcept | |
| CellPtrBase (const CellPtrBase &o) noexcept | |
| CellPtrBase (CellPtrBase &&o) noexcept | |
| CellPtrBase & | operator= (const CellPtrBase &o) noexcept | 
| CellPtrBase & | operator= (CellPtrBase &&o) noexcept | 
| Observed * | base_get () const noexcept | 
| void | base_reset (Observed *obj=nullptr) noexcept | 
An implementation detail for the type-specific templated cell pointers.
A CellPtrBase (and thus the derived CellPtr) can be in one of 3 states:
| 
 | protectednoexcept | 
Different objects must have control blocks that are either null or non-null but different.