My Project
|
Public Types | |
typedef int | id_type |
name type for identifiers More... | |
typedef CountedRefData | data_type |
Name type for handling referenced data. More... | |
typedef CountedRefPtr< CountedRefData * > | data_ptr |
Fix smart pointer type to referenced data. More... | |
Public Member Functions | |
CountedRef (leftv arg) | |
Reference given Singular data. More... | |
CountedRef (const self &rhs) | |
Construct copy. More... | |
self & | operator= (const self &rhs) |
Replace reference. More... | |
BOOLEAN | assign (leftv result, leftv arg) |
LeftvShallow | operator* () |
Extract (shallow) copy of stored data. More... | |
BOOLEAN | outcast (leftv res, int typ) |
Construct reference data object marked by given identifier number. More... | |
BOOLEAN | outcast (leftv res) |
Construct reference data object from *this. More... | |
data_type * | outcast () |
Construct raw reference data. More... | |
void | destruct () |
Kills a link to the referenced object. More... | |
~CountedRef () | |
Kills the link to the referenced object. More... | |
BOOLEAN | dereference (leftv arg) |
Replaces argument by a shallow copy of the references data. More... | |
BOOLEAN | broken () |
Check whether object in valid in current context. More... | |
BOOLEAN | unassigned () const |
Check whether (shared) data was initialized but not assigned yet. More... | |
BOOLEAN | count (leftv res) |
Get number of references pointing here, too. More... | |
BOOLEAN | enumerate (leftv res) |
BOOLEAN | likewise (leftv res, leftv arg) |
Check for likewise identifiers. More... | |
BOOLEAN | same (leftv res, leftv arg) |
Check for identical reference objects. More... | |
BOOLEAN | type (leftv res) |
Get type of references data. More... | |
BOOLEAN | name (leftv res) |
Get (possibly) internal identifier name. More... | |
Static Public Member Functions | |
static BOOLEAN | is_ref (leftv arg) |
Check whether argument is already a reference type. More... | |
static self | cast (void *data) |
Recover the actual object from raw Singular data. More... | |
static self | cast (leftv arg) |
Recover the actual object from Singular interpreter object. More... | |
static BOOLEAN | resolve (leftv arg) |
If necessary dereference. More... | |
static BOOLEAN | construct (leftv res, long data) |
Construct integer value. More... | |
static BOOLEAN | construct (leftv res, const char *data) |
Construct string. More... | |
static BOOLEAN | construct (leftv res) |
Construct void-style object. More... | |
Protected Member Functions | |
CountedRef (data_ptr arg) | |
Recover previously constructed reference. More... | |
Protected Attributes | |
data_ptr | m_data |
Store pointer to actual data. More... | |
Private Types | |
typedef CountedRef | self |
Definition at line 199 of file countedref.cc.
typedef CountedRefPtr<CountedRefData*> CountedRef::data_ptr |
Fix smart pointer type to referenced data.
Definition at line 210 of file countedref.cc.
typedef CountedRefData CountedRef::data_type |
Name type for handling referenced data.
Definition at line 207 of file countedref.cc.
typedef int CountedRef::id_type |
name type for identifiers
Definition at line 204 of file countedref.cc.
|
private |
Definition at line 200 of file countedref.cc.
|
inlineexplicit |
Reference given Singular data.
Definition at line 223 of file countedref.cc.
|
inlineprotected |
|
inline |
Definition at line 239 of file countedref.cc.
|
inline |
Check whether object in valid in current context.
Definition at line 282 of file countedref.cc.
Recover the actual object from Singular interpreter object.
Definition at line 318 of file countedref.cc.
|
inlinestatic |
Recover the actual object from raw Singular data.
Definition at line 312 of file countedref.cc.
Construct void-style object.
Definition at line 344 of file countedref.cc.
Get number of references pointing here, too.
Definition at line 288 of file countedref.cc.
Replaces argument by a shallow copy of the references data.
Definition at line 274 of file countedref.cc.
|
inline |
Kills a link to the referenced object.
Definition at line 268 of file countedref.cc.
Check whether argument is already a reference type.
countedref_CheckAssign
here, that we (ab-)use as a unique marker. This avoids to check a bunch of of runtime-varying typ
IDs for identifying reference-like types. Definition at line 216 of file countedref.cc.
Get (possibly) internal identifier name.
Definition at line 309 of file countedref.cc.
|
inline |
Replace reference.
Definition at line 234 of file countedref.cc.
|
inline |
Construct raw reference data.
Definition at line 262 of file countedref.cc.
Construct reference data object from *this.
Definition at line 253 of file countedref.cc.
Construct reference data object marked by given identifier number.
Definition at line 247 of file countedref.cc.
If necessary dereference.
Definition at line 324 of file countedref.cc.
|
inline |
Check whether (shared) data was initialized but not assigned yet.
Definition at line 285 of file countedref.cc.
|
protected |
Store pointer to actual data.
Definition at line 352 of file countedref.cc.