![]() |
My Project
|
#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. | |
void | CountedRefPtr_kill (CountedRefData *data) |
Supporting smart pointer CountedRefPtr . | |
void * | countedref_Init (blackbox *) |
blackbox support - initialization | |
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. | |
void | countedref_Print (blackbox *, void *ptr) |
blackbox support - convert to string representation | |
char * | countedref_String (blackbox *, void *ptr) |
blackbox support - convert to string representation | |
void * | countedref_Copy (blackbox *, void *ptr) |
blackbox support - copy element | |
BOOLEAN | countedref_Assign (leftv result, leftv arg) |
blackbox support - assign element | |
BOOLEAN | countedref_CheckInit (leftv res, leftv arg) |
BOOLEAN | countedref_Op1 (int op, leftv res, leftv head) |
blackbox support - unary operations | |
static BOOLEAN | countedref_Op2_ (int op, leftv res, leftv head, leftv arg) |
blackbox support - binary operations (resolve seocnd argument) | |
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 | |
void | countedref_destroy (blackbox *, void *ptr) |
blackbox support - destruction | |
void * | countedref_InitShared (blackbox *) |
Blackbox support - generate initialized, but all-zero - shared data. | |
BOOLEAN | countedref_Op1Shared (int op, leftv res, leftv head) |
Blackbox support - unary operation for shared data. | |
BOOLEAN | countedref_Op2Shared (int op, leftv res, leftv head, leftv arg) |
blackbox support - binary operations | |
BOOLEAN | countedref_OpM (int op, leftv res, leftv args) |
blackbox support - n-ary operations | |
BOOLEAN | countedref_AssignShared (leftv result, leftv arg) |
blackbox support - assign element | |
void | countedref_destroyShared (blackbox *, void *ptr) |
blackbox support - destruction | |
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. | |
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 382 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 661 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 406 of file countedref.cc.
void * countedref_Copy | ( | blackbox * | , |
void * | ptr | ||
) |
Definition at line 712 of file countedref.cc.
void countedref_destroy | ( | blackbox * | , |
void * | ptr | ||
) |
blackbox support - destruction
Definition at line 493 of file countedref.cc.
void countedref_destroyShared | ( | blackbox * | , |
void * | ptr | ||
) |
blackbox support - destruction
Definition at line 691 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 552 of file countedref.cc.
blackbox support - unary operations
Definition at line 415 of file countedref.cc.
Blackbox support - unary operation for shared data.
Definition at line 559 of file countedref.cc.
Definition at line 446 of file countedref.cc.
blackbox support - binary operations (resolve seocnd argument)
Definition at line 436 of file countedref.cc.
blackbox support - binary operations
Definition at line 589 of file countedref.cc.
blackbox support - ternary operations
Definition at line 480 of file countedref.cc.
Definition at line 468 of file countedref.cc.
Definition at line 457 of file countedref.cc.
blackbox support - n-ary operations
Definition at line 605 of file countedref.cc.
void countedref_Print | ( | blackbox * | , |
void * | ptr | ||
) |
blackbox support - convert to string representation
Definition at line 360 of file countedref.cc.
void countedref_reference_load | ( | ) |
Initialize blackbox
types 'reference' and 'shared', or both.
Definition at line 721 of file countedref.cc.
Definition at line 700 of file countedref.cc.
void countedref_shared_load | ( | ) |
Definition at line 745 of file countedref.cc.
char * countedref_String | ( | blackbox * | , |
void * | ptr | ||
) |
blackbox support - convert to string representation
Definition at line 367 of file countedref.cc.
|
inline |
Supporting smart pointer CountedRefPtr
.
Definition at line 182 of file countedref.cc.
|
inline |