v8
3.25.30(node0.11.13)
V8 is Google's open source JavaScript engine
|
#include <v8-profiler.h>
Public Member Functions | |
virtual void | Dispose ()=0 |
virtual bool | IsEquivalent (RetainedObjectInfo *other)=0 |
virtual intptr_t | GetHash ()=0 |
virtual const char * | GetLabel ()=0 |
virtual const char * | GetGroupLabel () |
virtual intptr_t | GetElementCount () |
virtual intptr_t | GetSizeInBytes () |
Protected Member Functions | |
RetainedObjectInfo () | |
virtual | ~RetainedObjectInfo () |
Interface for providing information about embedder's objects held by global handles. This information is reported in two ways:
Thus, if an embedder wants to provide information about native objects for heap snapshots, he can do it in a GC prologue handler, and / or by assigning wrapper class ids in the following way:
V8 takes ownership of RetainedObjectInfo instances passed to it and keeps them alive only during snapshot collection. Afterwards, they are freed by calling the Dispose class function.
Definition at line 556 of file v8-profiler.h.
|
inlineprotected |
Definition at line 597 of file v8-profiler.h.
|
inlineprotectedvirtual |
Definition at line 598 of file v8-profiler.h.
|
pure virtual |
Called by V8 when it no longer needs an instance.
Implemented in NativeGroupRetainedObjectInfo, TestRetainedObjectInfo, and TestRetainedObjectInfo.
Referenced by GlobalHandles::AddObjectGroup(), NativeObjectsExplorer::~NativeObjectsExplorer(), and ObjectGroup::~ObjectGroup().
|
inlinevirtual |
Returns element count in case if a global handle retains a subgraph by holding one of its nodes.
Definition at line 591 of file v8-profiler.h.
Referenced by BasicHeapEntriesAllocator::AllocateEntry(), and HeapObjectsMap::GenerateId().
|
inlinevirtual |
Returns human-readable group label. It must be a null-terminated UTF-8 encoded string. V8 copies its contents during a call to GetGroupLabel. Heap snapshot generator will collect all the group names, create top level entries with these names and attach the objects to the corresponding top level group objects. There is a default implementation which is required because embedders don't have their own implementation yet.
Definition at line 585 of file v8-profiler.h.
|
pure virtual |
Returns hash value for the instance. Equivalent instances must have the same hash value.
Implemented in NativeGroupRetainedObjectInfo, TestRetainedObjectInfo, and TestRetainedObjectInfo.
Referenced by HeapObjectsMap::GenerateId(), and NativeGroupRetainedObjectInfo::IsEquivalent().
|
pure virtual |
Returns human-readable label. It must be a null-terminated UTF-8 encoded string. V8 copies its contents during a call to GetLabel.
Implemented in NativeGroupRetainedObjectInfo, TestRetainedObjectInfo, and TestRetainedObjectInfo.
Referenced by BasicHeapEntriesAllocator::AllocateEntry(), HeapObjectsMap::GenerateId(), and NativeGroupRetainedObjectInfo::IsEquivalent().
|
inlinevirtual |
Returns embedder's object size in bytes.
Definition at line 594 of file v8-profiler.h.
Referenced by BasicHeapEntriesAllocator::AllocateEntry().
|
pure virtual |
Returns whether two instances are equivalent.
Implemented in NativeGroupRetainedObjectInfo, TestRetainedObjectInfo, and TestRetainedObjectInfo.