![]() |
#include <kernel/mod2.h>#include "ipid.h"#include "countedref.h"#include "blackbox.h"#include "newstruct.h"#include "ipshell.h"Go to the source code of this file.
Data Structures | |
| class | CountedRefData |
| This class stores a reference counter as well as a Singular interpreter object. More... | |
| class | CountedRef |
| class | CountedRefShared |
Functions | |
| void | CountedRefPtr_kill (ring r) |
| Overloading ring destruction. More... | |
| void | CountedRefPtr_kill (CountedRefData *data) |
Supporting smart pointer CountedRefPtr. More... | |
| void * | countedref_Init (blackbox *) |
| blackbox support - initialization More... | |
| BOOLEAN | countedref_CheckAssign (blackbox *, leftv, leftv) |
| We use the function pointer as a marker of reference types for CountedRef::is_ref(leftv), see the latter for details. More... | |
| void | countedref_Print (blackbox *, void *ptr) |
| blackbox support - convert to string representation More... | |
| char * | countedref_String (blackbox *, void *ptr) |
| blackbox support - convert to string representation More... | |
| void * | countedref_Copy (blackbox *, void *ptr) |
| blackbox support - copy element More... | |
| BOOLEAN | countedref_Assign (leftv result, leftv arg) |
| blackbox support - assign element More... | |
| BOOLEAN | countedref_CheckInit (leftv res, leftv arg) |
| BOOLEAN | countedref_Op1 (int op, leftv res, leftv head) |
| blackbox support - unary operations More... | |
| static BOOLEAN | countedref_Op2_ (int op, leftv res, leftv head, leftv arg) |
| blackbox support - binary operations (resolve seocnd argument) More... | |
| BOOLEAN | countedref_Op2 (int op, leftv res, leftv head, leftv arg) |
| static BOOLEAN | countedref_Op3__ (int op, leftv res, leftv head, leftv arg1, leftv arg2) |
| static BOOLEAN | countedref_Op3_ (int op, leftv res, leftv head, leftv arg1, leftv arg2) |
| BOOLEAN | countedref_Op3 (int op, leftv res, leftv head, leftv arg1, leftv arg2) |
| blackbox support - ternary operations More... | |
| void | countedref_destroy (blackbox *, void *ptr) |
| blackbox support - destruction More... | |
| void * | countedref_InitShared (blackbox *) |
| Blackbox support - generate initialized, but all-zero - shared data. More... | |
| BOOLEAN | countedref_Op1Shared (int op, leftv res, leftv head) |
| Blackbox support - unary operation for shared data. More... | |
| BOOLEAN | countedref_Op2Shared (int op, leftv res, leftv head, leftv arg) |
| blackbox support - binary operations More... | |
| BOOLEAN | countedref_OpM (int op, leftv res, leftv args) |
| blackbox support - n-ary operations More... | |
| BOOLEAN | countedref_AssignShared (leftv result, leftv arg) |
| blackbox support - assign element More... | |
| void | countedref_destroyShared (blackbox *, void *ptr) |
| blackbox support - destruction More... | |
| BOOLEAN | countedref_serialize (blackbox *, void *d, si_link f) |
| BOOLEAN | countedref_deserialize (blackbox **, void **d, si_link f) |
| void | countedref_reference_load () |
Initialize blackbox types 'reference' and 'shared', or both. More... | |
| void | countedref_shared_load () |
This file defines reference countes interpreter objects and adds the blackbox operations for high-level types 'reference' and 'shared'.
Definition in file countedref.cc.
blackbox support - assign element
Definition at line 377 of file countedref.cc.
blackbox support - assign element
Case: replace assignment behind reference
Case: new reference to already shared data
Case: new shared data
Definition at line 648 of file countedref.cc.
We use the function pointer as a marker of reference types for CountedRef::is_ref(leftv), see the latter for details.
Definition at line 193 of file countedref.cc.
Definition at line 397 of file countedref.cc.
| void* countedref_Copy | ( | blackbox * | , |
| void * | ptr | ||
| ) |
blackbox support - copy element
Definition at line 370 of file countedref.cc.
Definition at line 691 of file countedref.cc.
| void countedref_destroy | ( | blackbox * | , |
| void * | ptr | ||
| ) |
blackbox support - destruction
Definition at line 484 of file countedref.cc.
| void countedref_destroyShared | ( | blackbox * | , |
| void * | ptr | ||
| ) |
blackbox support - destruction
Definition at line 673 of file countedref.cc.
| void* countedref_Init | ( | blackbox * | ) |
blackbox support - initialization
Definition at line 186 of file countedref.cc.
| void* countedref_InitShared | ( | blackbox * | ) |
Blackbox support - generate initialized, but all-zero - shared data.
Definition at line 540 of file countedref.cc.
blackbox support - unary operations
Definition at line 406 of file countedref.cc.
Blackbox support - unary operation for shared data.
Definition at line 546 of file countedref.cc.
Definition at line 437 of file countedref.cc.
blackbox support - binary operations (resolve seocnd argument)
Definition at line 427 of file countedref.cc.
blackbox support - binary operations
Definition at line 576 of file countedref.cc.
blackbox support - ternary operations
Definition at line 471 of file countedref.cc.
Definition at line 459 of file countedref.cc.
Definition at line 448 of file countedref.cc.
blackbox support - n-ary operations
Definition at line 592 of file countedref.cc.
| void countedref_Print | ( | blackbox * | , |
| void * | ptr | ||
| ) |
blackbox support - convert to string representation
Definition at line 356 of file countedref.cc.
| void countedref_reference_load | ( | ) |
Initialize blackbox types 'reference' and 'shared', or both.
Definition at line 700 of file countedref.cc.
Definition at line 679 of file countedref.cc.
| void countedref_shared_load | ( | ) |
Definition at line 724 of file countedref.cc.
| char* countedref_String | ( | blackbox * | , |
| void * | ptr | ||
| ) |
blackbox support - convert to string representation
Definition at line 363 of file countedref.cc.
|
inline |
|
inline |
Supporting smart pointer CountedRefPtr.
Definition at line 182 of file countedref.cc.