Back to index

lightning-sunbird  0.9+nobinonly
Public Member Functions | Static Private Member Functions
gc_cleanup Class Reference

#include <gc_cpp.h>

Inheritance diagram for gc_cleanup:
Inheritance graph
[legend]
Collaboration diagram for gc_cleanup:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 gc_cleanup ()
virtual ~gc_cleanup ()
voidoperator new (size_t size)
voidoperator new (size_t size, GCPlacement gcp)
void operator delete (void *obj)

Static Private Member Functions

static void _cdecl cleanup (void *obj, void *clientData)

Detailed Description

Definition at line 159 of file gc_cpp.h.


Constructor & Destructor Documentation

gc_cleanup::gc_cleanup ( ) [inline]

Definition at line 245 of file gc_cpp.h.

                              {
    GC_finalization_proc oldProc;
    void* oldData;
    void* base = GC_base( (void *) this );
    if (0 == base) return;
    GC_REGISTER_FINALIZER_IGNORE_SELF( 
        base, cleanup, (void*) ((char*) this - (char*) base), 
        &oldProc, &oldData );
    if (0 != oldProc) {
        GC_REGISTER_FINALIZER_IGNORE_SELF( base, oldProc, oldData, 0, 0 );}}

Here is the call graph for this function:

Here is the caller graph for this function:

gc_cleanup::~gc_cleanup ( ) [inline, virtual]

Definition at line 239 of file gc_cpp.h.

                               {
    GC_REGISTER_FINALIZER_IGNORE_SELF( GC_base(this), 0, 0, 0, 0 );}

Here is the call graph for this function:


Member Function Documentation

void gc_cleanup::cleanup ( void obj,
void clientData 
) [inline, static, private]

Definition at line 242 of file gc_cpp.h.

                                                        {
    ((gc_cleanup*) ((char*) obj + (ptrdiff_t) displ))->~gc_cleanup();}

Here is the call graph for this function:

Here is the caller graph for this function:

void gc::operator delete ( void obj) [inline, inherited]

Definition at line 221 of file gc_cpp.h.

                                           {
    GC_FREE( obj );}
void * gc::operator new ( size_t  size) [inline, inherited]

Definition at line 210 of file gc_cpp.h.

                                           {
    return GC_MALLOC( size );}
void * gc::operator new ( size_t  size,
GCPlacement  gcp 
) [inline, inherited]

Definition at line 213 of file gc_cpp.h.

                                                            {
    if (gcp == GC) 
        return GC_MALLOC( size );
    else if (gcp == PointerFreeGC)
       return GC_MALLOC_ATOMIC( size );
    else
        return GC_MALLOC_UNCOLLECTABLE( size );}

The documentation for this class was generated from the following file: