![]() |
My Project
UNKNOWN_GIT_VERSION
|
This class stores a reference counter as well as a Singular interpreter object. More...
Public Types | |
typedef CountedRefWeakPtr< self * > | back_ptr |
![]() | |
typedef short | count_type |
Name numerical type for enumbering. More... | |
Private Types | |
typedef CountedRefData | self |
typedef RefCounter | base |
Private Member Functions | |
CountedRefData (leftv wrapid, back_ptr back) | |
Generate object linked to other reference (e.g. for subscripts) More... | |
Disallow copying to avoid inconsistence | |
typedef LeftvDeep::copy_tag | copy_tag |
Fix smart pointer type to referenced data. More... | |
typedef back_ptr::ptr_type | ptr_type |
Fix smart pointer type to referenced data. More... | |
typedef CountedRefPtr< ring, true > | ring_ptr |
Fix smart pointer type to ring. More... | |
LeftvDeep | m_data |
Singular object. More... | |
ring_ptr | m_ring |
Store namespace for ring-dependent objects. More... | |
back_ptr | m_back |
Reference to actual object for wrap structures. More... | |
self & | operator= (const self &) |
Fix smart pointer type to referenced data. More... | |
CountedRefData (const self &) | |
Fix smart pointer type to referenced data. More... | |
BOOLEAN | complain (const char *text) const |
Raise error message and return TRUE . More... | |
CountedRefData () | |
Construct shared memory empty Singular object. More... | |
CountedRefData (leftv data) | |
Reference Singular object. More... | |
CountedRefData (leftv data, copy_tag do_copy) | |
Construct reference for Singular object. More... | |
~CountedRefData () | |
Destruct. More... | |
ptr_type | wrapid () |
Generate object for indexing. More... | |
back_ptr | weakref () |
Gerenate weak (but managed) reference to *this . More... | |
self & | operator= (leftv rhs) |
Replace with other Singular data. More... | |
BOOLEAN | put (leftv res) |
Write (shallow) copy to given handle. More... | |
LeftvShallow | operator* () const |
Extract (shallow) copy of stored data. More... | |
BOOLEAN | rering () |
Determine active ring when ring dependency changes. More... | |
idhdl * | root () |
Get the current context. More... | |
BOOLEAN | broken () const |
Check whether identifier became invalid. More... | |
BOOLEAN | assign (leftv result, leftv arg) |
Reassign actual object. More... | |
BOOLEAN | retrieve (leftv res) |
Recover additional information (e.g. subexpression) from likewise object. More... | |
BOOLEAN | unassigned () const |
Check whether data is all-zero. More... | |
static ring | parent (leftv rhs) |
Store ring for ring-dependent objects. More... | |
Additional Inherited Members | |
![]() | |
RefCounter (...) | |
Any Constructor resets the counter. More... | |
~RefCounter () | |
Destructor. More... | |
This class stores a reference counter as well as a Singular interpreter object.
It also take care of the context, e.g. the current ring, wrap object, etc.
Definition at line 41 of file countedref.cc.
typedef CountedRefWeakPtr<self*> CountedRefData::back_ptr |
Definition at line 45 of file countedref.cc.
|
private |
Definition at line 47 of file countedref.cc.
Fix smart pointer type to referenced data.
Definition at line 61 of file countedref.cc.
typedef back_ptr::ptr_type CountedRefData::ptr_type |
Fix smart pointer type to referenced data.
Definition at line 64 of file countedref.cc.
typedef CountedRefPtr<ring, true> CountedRefData::ring_ptr |
Fix smart pointer type to ring.
Definition at line 67 of file countedref.cc.
|
private |
Definition at line 43 of file countedref.cc.
|
inlineexplicit |
|
inlineexplicit |
|
inline |
|
inline |
Raise error message and return TRUE
.
Definition at line 158 of file countedref.cc.
|
inline |
Replace with other Singular data.
Definition at line 101 of file countedref.cc.
|
inlinestaticprivate |
Store ring for ring-dependent objects.
Definition at line 165 of file countedref.cc.
|
inline |
Recover additional information (e.g. subexpression) from likewise object.
Definition at line 151 of file countedref.cc.
|
inline |
Get the current context.
Definition at line 120 of file countedref.cc.
|
inline |
|
inline |
Gerenate weak (but managed) reference to *this
.
Definition at line 95 of file countedref.cc.
|
inline |
|
protected |
Reference to actual object for wrap structures.
Definition at line 178 of file countedref.cc.
|
protected |
Singular object.
Definition at line 172 of file countedref.cc.
|
protected |
Store namespace for ring-dependent objects.
Definition at line 175 of file countedref.cc.