v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
Loading...
Searching...
No Matches
cppgc::GarbageCollectedMixin Class Reference

#include <garbage-collected.h>

Collaboration diagram for cppgc::GarbageCollectedMixin:

Public Types

using IsGarbageCollectedMixinTypeMarker = void
 

Public Member Functions

void * operator new (size_t)=delete
 
void * operator new[] (size_t)=delete
 
void operator delete[] (void *)=delete
 
virtual void Trace (cppgc::Visitor *) const
 

Detailed Description

Base class for managed mixin objects. Such objects cannot be constructed directly but must be mixed into the inheritance hierarchy of a GarbageCollected object.

Types inheriting from GarbageCollectedMixin must override a virtual method of signature void Trace(cppgc::Visitor*) const that dispatchs all managed pointers to the visitor and delegates to base classes.

class Mixin : public GarbageCollectedMixin {
public:
void Trace(cppgc::Visitor* visitor) const override {
// Dispatch using visitor->Trace(...);
}
};
virtual void Trace(cppgc::Visitor *) const

Definition at line 93 of file garbage-collected.h.

Member Typedef Documentation

◆ IsGarbageCollectedMixinTypeMarker

Member Function Documentation

◆ operator delete[]()

void cppgc::GarbageCollectedMixin::operator delete[] ( void * )
delete

◆ operator new()

void * cppgc::GarbageCollectedMixin::operator new ( size_t )
delete

◆ operator new[]()

void * cppgc::GarbageCollectedMixin::operator new[] ( size_t )
delete

◆ Trace()

virtual void cppgc::GarbageCollectedMixin::Trace ( cppgc::Visitor * ) const
inlinevirtual

This Trace method must be overriden by objects inheriting from GarbageCollectedMixin.

Definition at line 109 of file garbage-collected.h.


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