CXXR (C++ R)
|
Class CXXR::GCNode. More...
#include <sstream>
#include "CXXR/Allocator.hpp"
#include "CXXR/HeterogeneousList.hpp"
#include "CXXR/MemoryBank.hpp"
#include "CXXR/SchwarzCounter.hpp"
#include <boost/archive/xml_oarchive.hpp>
#include <boost/archive/xml_iarchive.hpp>
#include <boost/serialization/access.hpp>
#include <boost/serialization/export.hpp>
#include <boost/serialization/version.hpp>
Go to the source code of this file.
Classes | |
class | CXXR::GCNode |
Base class for objects managed by the garbage collector. More... | |
struct | CXXR::GCNode::const_visitor |
Abstract base class for the Visitor design pattern. More... | |
struct | CXXR::GCNode::GCInhibitor |
Not for general use. More... |
Namespaces | |
namespace | CXXR |
Namespace for the CXXR project. |
Macros | |
#define | GC_FIND_LOOPS |
#define | CXXR_NEW(T) CXXR::GCNode::expose(new T) |
Syntactic sugar for creating CXXR::GCNode objects. |
Class CXXR::GCNode.
#define CXXR_NEW | ( | T | ) | CXXR::GCNode::expose(new T) |
Syntactic sugar for creating CXXR::GCNode objects.
The argument of this macro must be a constructor expression for an object of a class derived from CXXR::GCNode. The macro expansion returns a pointer to a new object created by that constructor expression.
#define GC_FIND_LOOPS |
If the preprocessor variable GC_FIND_LOOPS is defined, extra code is inserted which, during a mark-sweep garbage collection, writes to the standard output information about any cycles encountered in the GCNode-GCEdge graph.