V8 Project
|
#include <api.h>
Public Member Functions | |
HandleScopeImplementer (Isolate *isolate) | |
~HandleScopeImplementer () | |
char * | RestoreThread (char *from) |
char * | ArchiveThread (char *to) |
void | FreeThreadResources () |
void | Iterate (v8::internal::ObjectVisitor *v) |
internal::Object ** | GetSpareOrNewBlock () |
void | DeleteExtensions (internal::Object **prev_limit) |
void | IncrementCallDepth () |
void | DecrementCallDepth () |
bool | CallDepthIsZero () |
void | EnterContext (Handle< Context > context) |
void | LeaveContext () |
bool | LastEnteredContextWas (Handle< Context > context) |
Handle< Context > | LastEnteredContext () |
void | SaveContext (Context *context) |
Context * | RestoreContext () |
bool | HasSavedContexts () |
List< internal::Object ** > * | blocks () |
Isolate * | isolate () const |
void | ReturnBlock (Object **block) |
Static Public Member Functions | |
static int | ArchiveSpacePerThread () |
static char * | Iterate (v8::internal::ObjectVisitor *v, char *data) |
Private Member Functions | |
void | ResetAfterArchive () |
void | Free () |
void | BeginDeferredScope () |
DeferredHandles * | Detach (Object **prev_limit) |
void | IterateThis (ObjectVisitor *v) |
char * | RestoreThreadHelper (char *from) |
char * | ArchiveThreadHelper (char *to) |
DISALLOW_COPY_AND_ASSIGN (HandleScopeImplementer) | |
Private Attributes | |
Isolate * | isolate_ |
List< internal::Object ** > | blocks_ |
List< Context * > | entered_contexts_ |
List< Context * > | saved_contexts_ |
Object ** | spare_ |
int | call_depth_ |
Object ** | last_handle_before_deferred_block_ |
HandleScopeData | handle_scope_data_ |
Friends | |
class | DeferredHandles |
class | DeferredHandleScope |
|
inlineexplicit |
Definition at line 494 of file api.h.
|
inline |
Definition at line 503 of file api.h.
References v8::internal::DeleteArray(), and spare_.
|
static |
Definition at line 7541 of file api.cc.
Referenced by v8::internal::ArchiveSpacePerThread(), and v8::internal::ThreadManager::IterateArchivedThreads().
char * v8::internal::HandleScopeImplementer::ArchiveThread | ( | char * | to | ) |
Definition at line 7529 of file api.cc.
References v8::internal::ArchiveSpacePerThread(), v8::internal::HandleScopeData::Initialize(), and v8::internal::MemCopy().
Referenced by v8::internal::ThreadManager::EagerlyArchiveThread().
|
private |
|
private |
Definition at line 7633 of file api.cc.
References DCHECK, v8::internal::Isolate::handle_scope_data(), v8::internal::HandleScopeData::next, and NULL.
Referenced by v8::internal::DeferredHandleScope::DeferredHandleScope().
|
inline |
Definition at line 537 of file api.h.
References blocks_.
Referenced by v8::internal::DeferredHandleScope::DeferredHandleScope(), v8::internal::Deserializer::Deserialize(), v8::internal::HandleScope::Extend(), v8::internal::HandleScope::NumberOfHandles(), and v8::internal::StartupSerializer::SerializeStrongReferences().
|
inline |
|
inline |
|
inline |
Definition at line 645 of file api.h.
References blocks_, DCHECK, v8::internal::DeleteArray(), v8::internal::kHandleBlockSize, NULL, and spare_.
Referenced by v8::internal::HandleScope::DeleteExtensions().
|
private |
Definition at line 7605 of file api.cc.
References v8::internal::DeferredHandles::blocks_, DCHECK, v8::internal::kHandleBlockSize, and NULL.
Referenced by v8::internal::DeferredHandleScope::Detach().
|
private |
Definition at line 614 of file api.h.
References entered_contexts_.
Referenced by v8::Context::Enter().
|
inlineprivate |
Definition at line 556 of file api.h.
References blocks_, call_depth_, DCHECK, v8::internal::DeleteArray(), entered_contexts_, NULL, saved_contexts_, and spare_.
void v8::internal::HandleScopeImplementer::FreeThreadResources | ( | ) |
Definition at line 7524 of file api.cc.
References v8::internal::Free().
Referenced by v8::internal::ThreadManager::FreeThreadResources().
|
inline |
Definition at line 636 of file api.h.
References v8::internal::kHandleBlockSize, NULL, and spare_.
Referenced by v8::internal::DeferredHandleScope::DeferredHandleScope(), and v8::internal::HandleScope::Extend().
|
inline |
Definition at line 609 of file api.h.
References saved_contexts_.
|
inline |
Definition at line 521 of file api.h.
References call_depth_.
Referenced by v8::Isolate::SuppressMicrotaskExecutionScope::SuppressMicrotaskExecutionScope().
|
inline |
Definition at line 538 of file api.h.
References isolate_.
Referenced by v8::internal::DeferredHandleScope::DeferredHandleScope(), v8::internal::DeferredHandleScope::Detach(), and v8::internal::DeferredHandleScope::~DeferredHandleScope().
void v8::internal::HandleScopeImplementer::Iterate | ( | v8::internal::ObjectVisitor * | v | ) |
Definition at line 7590 of file api.cc.
Referenced by v8::internal::ThreadManager::Iterate(), v8::internal::Heap::IterateStrongRoots(), and v8::internal::MarkCompactCollector::PrepareForCodeFlushing().
|
static |
Definition at line 7597 of file api.cc.
References v8::internal::ArchiveSpacePerThread(), and IterateThis().
|
private |
Definition at line 7553 of file api.cc.
References arraysize, DCHECK, v8::internal::List< T, AllocationPolicy >::first(), v8::internal::kHandleBlockSize, and NULL.
Referenced by Iterate().
Definition at line 629 of file api.h.
References entered_contexts_, and v8::internal::Handle< T >::null().
Referenced by v8::Isolate::GetEnteredContext().
|
inline |
Definition at line 624 of file api.h.
References entered_contexts_.
Referenced by v8::Context::Exit().
|
inline |
Definition at line 619 of file api.h.
References entered_contexts_.
Referenced by v8::Context::Exit().
|
inlineprivate |
Definition at line 547 of file api.h.
References blocks_, call_depth_, entered_contexts_, last_handle_before_deferred_block_, NULL, saved_contexts_, and spare_.
|
inline |
Definition at line 604 of file api.h.
References saved_contexts_.
Referenced by v8::Context::Exit().
char * v8::internal::HandleScopeImplementer::RestoreThread | ( | char * | from | ) |
Definition at line 7546 of file api.cc.
References v8::internal::ArchiveSpacePerThread(), and v8::internal::MemCopy().
Referenced by v8::internal::ThreadManager::RestoreThread().
|
private |
|
inline |
|
inline |
Definition at line 599 of file api.h.
References saved_contexts_.
Referenced by v8::Context::Enter().
|
friend |
|
friend |
|
private |
Definition at line 574 of file api.h.
Referenced by blocks(), DeleteExtensions(), Free(), and ResetAfterArchive().
|
private |
Definition at line 580 of file api.h.
Referenced by CallDepthIsZero(), DecrementCallDepth(), Free(), IncrementCallDepth(), and ResetAfterArchive().
Definition at line 576 of file api.h.
Referenced by EnterContext(), Free(), LastEnteredContext(), LastEnteredContextWas(), LeaveContext(), and ResetAfterArchive().
|
private |
|
private |
|
private |
Definition at line 581 of file api.h.
Referenced by ResetAfterArchive().
Definition at line 578 of file api.h.
Referenced by Free(), HasSavedContexts(), ResetAfterArchive(), RestoreContext(), and SaveContext().
|
private |
Definition at line 579 of file api.h.
Referenced by DeleteExtensions(), Free(), GetSpareOrNewBlock(), ResetAfterArchive(), ReturnBlock(), and ~HandleScopeImplementer().