|
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.