My Project
|
This class stores a reference counter as well as a Singular interpreter object. More...
Public Types | |
typedef CountedRefWeakPtr< self * > | back_ptr |
Public Types inherited from RefCounter | |
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 | |
Public Member Functions inherited from RefCounter | |
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.
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.
Generate object linked to other reference (e.g. for subscripts)
Definition at line 50 of file countedref.cc.
|
inlineexplicit |
|
inlineexplicit |
Reference Singular object.
Definition at line 74 of file countedref.cc.
|
inline |
Destruct.
Definition at line 82 of file countedref.cc.
Reassign actual object.
Definition at line 142 of file countedref.cc.
|
inline |
Check whether identifier became invalid.
Definition at line 123 of file countedref.cc.
Raise error message and return TRUE
.
Definition at line 158 of file countedref.cc.
|
inline |
Extract (shallow) copy of stored data.
Definition at line 111 of file countedref.cc.
Fix smart pointer type to referenced data.
Replace with other Singular data.
Definition at line 101 of file countedref.cc.
|
inlinestaticprivate |
Write (shallow) copy to given handle.
Definition at line 108 of file countedref.cc.
|
inline |
Determine active ring when ring dependency changes.
Definition at line 114 of file countedref.cc.
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 |
Check whether data is all-zero.
Definition at line 154 of file countedref.cc.
|
inline |
Gerenate weak (but managed) reference to *this
.
Definition at line 95 of file countedref.cc.
|
inline |
Generate object for indexing.
Definition at line 92 of file countedref.cc.
|
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.