V8 API Reference, 7.2.502.16 (for Deno 0.2.4)
v8::internal::Isolate Class Referencefinal
Inheritance diagram for v8::internal::Isolate:
v8::internal::HiddenFactory

Classes

class  ExceptionScope
 
class  PerIsolateThreadData
 

Public Types

enum  PrintStackMode { kPrintStackConcise, kPrintStackVerbose }
 
enum  CatchType {
  NOT_CAUGHT, CAUGHT_BY_JAVASCRIPT, CAUGHT_BY_EXTERNAL, CAUGHT_BY_DESUGARING,
  CAUGHT_BY_PROMISE, CAUGHT_BY_ASYNC_AWAIT
}
 

Public Member Functions

V8_INLINE IsolateAllocationMode isolate_allocation_mode ()
 
v8::PageAllocatorpage_allocator ()
 
void InitializeLoggingAndCounters ()
 
bool InitializeCounters ()
 
bool Init (StartupDeserializer *des)
 
bool IsInUse ()
 
void ReleaseSharedPtrs ()
 
void ClearSerializerData ()
 
bool LogObjectRelocation ()
 
void Enter ()
 
void Exit ()
 
PerIsolateThreadDataFindOrAllocatePerThreadDataForThisThread ()
 
PerIsolateThreadDataFindPerThreadDataForThisThread ()
 
PerIsolateThreadDataFindPerThreadDataForThread (ThreadId thread_id)
 
void DiscardPerThreadDataForThisThread ()
 
base::RecursiveMutexbreak_access ()
 
Address get_address_from_id (IsolateAddressId id)
 
Context context ()
 
void set_context (Context context)
 
Contextcontext_address ()
 
Objectpending_exception ()
 
void set_pending_exception (Object *exception_obj)
 
void clear_pending_exception ()
 
bool AreWasmThreadsEnabled (Handle< Context > context)
 
bool has_pending_exception ()
 
v8::TryCatch * try_catch_handler ()
 
boolexternal_caught_exception_address ()
 
void clear_pending_message ()
 
Address pending_message_obj_address ()
 
Objectscheduled_exception ()
 
bool has_scheduled_exception ()
 
void clear_scheduled_exception ()
 
bool IsJavaScriptHandlerOnTop (Object *exception)
 
bool IsExternalHandlerOnTop (Object *exception)
 
bool is_catchable_by_javascript (Object *exception)
 
Address c_function ()
 
Addressc_entry_fp_address ()
 
Addresshandler_address ()
 
Addressc_function_address ()
 
Address js_entry_sp ()
 
Addressjs_entry_sp_address ()
 
Handle< JSGlobalObjectglobal_object ()
 
Handle< JSObjectglobal_proxy ()
 
void FreeThreadResources ()
 
V8_EXPORT_PRIVATE bool OptionalRescheduleException (bool is_bottom_call)
 
void PushPromise (Handle< JSObject > promise)
 
void PopPromise ()
 
Handle< ObjectGetPromiseOnStackOnThrow ()
 
bool PromiseHasUserDefinedRejectHandler (Handle< Object > promise)
 
void SetCaptureStackTraceForUncaughtExceptions (bool capture, int frame_limit, StackTrace::StackTraceOptions options)
 
void SetAbortOnUncaughtExceptionCallback (v8::Isolate::AbortOnUncaughtExceptionCallback callback)
 
void PrintCurrentStackTrace (FILE *out)
 
void PrintStack (StringStream *accumulator, PrintStackMode mode=kPrintStackVerbose)
 
V8_EXPORT_PRIVATE void PrintStack (FILE *out, PrintStackMode mode=kPrintStackVerbose)
 
Handle< StringStackTraceString ()
 
V8_NOINLINE void PushStackTraceAndDie (void *ptr1=nullptr, void *ptr2=nullptr, void *ptr3=nullptr, void *ptr4=nullptr)
 
Handle< FixedArrayCaptureCurrentStackTrace (int frame_limit, StackTrace::StackTraceOptions options)
 
Handle< ObjectCaptureSimpleStackTrace (Handle< JSReceiver > error_object, FrameSkipMode mode, Handle< Object > caller)
 
MaybeHandle< JSReceiverCaptureAndSetDetailedStackTrace (Handle< JSReceiver > error_object)
 
MaybeHandle< JSReceiverCaptureAndSetSimpleStackTrace (Handle< JSReceiver > error_object, FrameSkipMode mode, Handle< Object > caller)
 
Handle< FixedArrayGetDetailedStackTrace (Handle< JSObject > error_object)
 
Address GetAbstractPC (int *line, int *column)
 
bool MayAccess (Handle< Context > accessing_context, Handle< JSObject > receiver)
 
void SetFailedAccessCheckCallback (v8::FailedAccessCheckCallback callback)
 
void ReportFailedAccessCheck (Handle< JSObject > receiver)
 
ObjectThrow (Object *exception, MessageLocation *location=nullptr)
 
ObjectThrowIllegalOperation ()
 
template<typename T >
V8_WARN_UNUSED_RESULT MaybeHandle< TThrow (Handle< Object > exception, MessageLocation *location=nullptr)
 
void set_console_delegate (debug::ConsoleDelegate *delegate)
 
debug::ConsoleDelegateconsole_delegate ()
 
void set_async_event_delegate (debug::AsyncEventDelegate *delegate)
 
void OnAsyncFunctionStateChanged (Handle< JSPromise > promise, debug::DebugAsyncActionType)
 
ObjectReThrow (Object *exception)
 
ObjectUnwindAndFindHandler ()
 
CatchType PredictExceptionCatcher ()
 
V8_EXPORT_PRIVATE void ScheduleThrow (Object *exception)
 
void RestorePendingMessageFromTryCatch (v8::TryCatch *handler)
 
void CancelScheduledExceptionFromTryCatch (v8::TryCatch *handler)
 
void ReportPendingMessages ()
 
void ReportPendingMessagesFromJavaScript ()
 
void ReportPendingMessagesImpl (bool report_externally)
 
MessageLocation GetMessageLocation ()
 
ObjectPromoteScheduledException ()
 
bool ComputeLocation (MessageLocation *target)
 
bool ComputeLocationFromException (MessageLocation *target, Handle< Object > exception)
 
bool ComputeLocationFromStackTrace (MessageLocation *target, Handle< Object > exception)
 
Handle< JSMessageObjectCreateMessage (Handle< Object > exception, MessageLocation *location)
 
ObjectStackOverflow ()
 
ObjectTerminateExecution ()
 
void CancelTerminateExecution ()
 
void RequestInterrupt (InterruptCallback callback, void *data)
 
void InvokeApiInterruptCallbacks ()
 
void Iterate (RootVisitor *v)
 
void Iterate (RootVisitor *v, ThreadLocalTop *t)
 
charIterate (RootVisitor *v, char *t)
 
void IterateThread (ThreadVisitor *v, char *t)
 
Handle< NativeContextnative_context ()
 
NativeContext raw_native_context ()
 
Handle< ContextGetIncumbentContext ()
 
void RegisterTryCatchHandler (v8::TryCatch *that)
 
void UnregisterTryCatchHandler (v8::TryCatch *that)
 
charArchiveThread (char *to)
 
charRestoreThread (char *from)
 
Bootstrapperbootstrapper ()
 
Counterscounters ()
 
const std::shared_ptr< Counters > & async_counters ()
 
RuntimeProfilerruntime_profiler ()
 
CompilationCachecompilation_cache ()
 
Loggerlogger ()
 
StackGuardstack_guard ()
 
Heapheap ()
 
const IsolateDataisolate_data () const
 
IsolateDataisolate_data ()
 
Address isolate_root () const
 
RootsTableroots_table ()
 
base::AddressRegion root_register_addressable_region () const
 
Objectroot (RootIndex index)
 
Handle< Objectroot_handle (RootIndex index)
 
ExternalReferenceTableexternal_reference_table ()
 
V8_INLINE Addressbuiltins_table ()
 
StubCacheload_stub_cache ()
 
StubCachestore_stub_cache ()
 
DeoptimizerDatadeoptimizer_data ()
 
bool deoptimizer_lazy_throw () const
 
void set_deoptimizer_lazy_throw (bool value)
 
ThreadLocalTopthread_local_top ()
 
MaterializedObjectStorematerialized_object_store ()
 
DescriptorLookupCachedescriptor_lookup_cache ()
 
HandleScopeDatahandle_scope_data ()
 
HandleScopeImplementerhandle_scope_implementer ()
 
UnicodeCacheunicode_cache ()
 
InnerPointerToCodeCacheinner_pointer_to_code_cache ()
 
GlobalHandlesglobal_handles ()
 
EternalHandleseternal_handles ()
 
ThreadManagerthread_manager ()
 
unibrow::Mapping< unibrow::Ecma262UnCanonicalize > * jsregexp_uncanonicalize ()
 
unibrow::Mapping< unibrow::CanonicalizationRange > * jsregexp_canonrange ()
 
RuntimeStateruntime_state ()
 
Builtinsbuiltins ()
 
unibrow::Mapping< unibrow::Ecma262Canonicalize > * regexp_macro_assembler_canonicalize ()
 
RegExpStackregexp_stack ()
 
size_t total_regexp_code_generated ()
 
void IncreaseTotalRegexpCodeGenerated (int size)
 
std::vector< int > * regexp_indices ()
 
unibrow::Mapping< unibrow::Ecma262Canonicalize > * interp_canonicalize_mapping ()
 
Debugdebug ()
 
boolis_profiling_address ()
 
CodeEventDispatchercode_event_dispatcher () const
 
HeapProfilerheap_profiler () const
 
v8::internal::Factoryfactory ()
 
void SetData (uint32_t slot, void *data)
 
void * GetData (uint32_t slot)
 
bool serializer_enabled () const
 
void enable_serializer ()
 
bool snapshot_available () const
 
bool IsDead ()
 
void SignalFatalError ()
 
bool use_optimizer ()
 
bool initialized_from_snapshot ()
 
bool NeedsSourcePositionsForProfiling () const
 
bool NeedsDetailedOptimizedCodeLineInfo () const
 
bool is_best_effort_code_coverage () const
 
bool is_precise_count_code_coverage () const
 
bool is_precise_binary_code_coverage () const
 
bool is_block_count_code_coverage () const
 
bool is_block_binary_code_coverage () const
 
bool is_block_code_coverage () const
 
bool is_collecting_type_profile () const
 
void SetFeedbackVectorsForProfilingTools (Object *value)
 
void MaybeInitializeVectorListFromHeap ()
 
double time_millis_since_init ()
 
DateCachedate_cache ()
 
void set_date_cache (DateCache *date_cache)
 
bool IsArrayConstructorIntact ()
 
bool IsNoElementsProtectorIntact (Context context)
 
bool IsNoElementsProtectorIntact ()
 
bool IsArrayOrObjectOrStringPrototype (Object *object)
 
bool IsArraySpeciesLookupChainIntact ()
 
bool IsTypedArraySpeciesLookupChainIntact ()
 
bool IsRegExpSpeciesLookupChainIntact ()
 
bool IsPromiseSpeciesLookupChainIntact ()
 
bool IsIsConcatSpreadableLookupChainIntact ()
 
bool IsIsConcatSpreadableLookupChainIntact (JSReceiver *receiver)
 
bool IsStringLengthOverflowIntact ()
 
bool IsArrayIteratorLookupChainIntact ()
 
bool IsMapIteratorLookupChainIntact ()
 
bool IsSetIteratorLookupChainIntact ()
 
bool IsStringIteratorLookupChainIntact ()
 
bool IsArrayBufferNeuteringIntact ()
 
bool IsPromiseHookProtectorIntact ()
 
bool IsPromiseResolveLookupChainIntact ()
 
bool IsPromiseThenLookupChainIntact ()
 
bool IsPromiseThenLookupChainIntact (Handle< JSReceiver > receiver)
 
void UpdateNoElementsProtectorOnSetElement (Handle< JSObject > object)
 
void UpdateNoElementsProtectorOnSetLength (Handle< JSObject > object)
 
void UpdateNoElementsProtectorOnSetPrototype (Handle< JSObject > object)
 
void UpdateNoElementsProtectorOnNormalizeElements (Handle< JSObject > object)
 
void InvalidateArrayConstructorProtector ()
 
void InvalidateArraySpeciesProtector ()
 
void InvalidateTypedArraySpeciesProtector ()
 
void InvalidateRegExpSpeciesProtector ()
 
void InvalidatePromiseSpeciesProtector ()
 
void InvalidateIsConcatSpreadableProtector ()
 
void InvalidateStringLengthOverflowProtector ()
 
void InvalidateArrayIteratorProtector ()
 
void InvalidateMapIteratorProtector ()
 
void InvalidateSetIteratorProtector ()
 
void InvalidateStringIteratorProtector ()
 
void InvalidateArrayBufferNeuteringProtector ()
 
V8_EXPORT_PRIVATE void InvalidatePromiseHookProtector ()
 
void InvalidatePromiseResolveProtector ()
 
void InvalidatePromiseThenProtector ()
 
bool IsAnyInitialArrayPrototype (Handle< JSArray > array)
 
void IterateDeferredHandles (RootVisitor *visitor)
 
void LinkDeferredHandles (DeferredHandles *deferred_handles)
 
void UnlinkDeferredHandles (DeferredHandles *deferred_handles)
 
bool concurrent_recompilation_enabled ()
 
OptimizingCompileDispatcheroptimizing_compile_dispatcher ()
 
void AbortConcurrentOptimization (BlockingBehavior blocking_behavior)
 
int id () const
 
CompilationStatisticsGetTurboStatistics ()
 
CodeTracerGetCodeTracer ()
 
void DumpAndResetStats ()
 
void * stress_deopt_count_address ()
 
void set_force_slow_path (bool v)
 
bool force_slow_path () const
 
boolforce_slow_path_address ()
 
DebugInfo::ExecutionMode * debug_execution_mode_address ()
 
V8_EXPORT_PRIVATE base::RandomNumberGeneratorrandom_number_generator ()
 
V8_EXPORT_PRIVATE base::RandomNumberGeneratorfuzzer_rng ()
 
int GenerateIdentityHash (uint32_t mask)
 
Code FindCodeObject (Address a)
 
int NextOptimizationId ()
 
void AddNearHeapLimitCallback (v8::NearHeapLimitCallback, void *data)
 
void RemoveNearHeapLimitCallback (v8::NearHeapLimitCallback callback, size_t heap_limit)
 
void AddCallCompletedCallback (CallCompletedCallback callback)
 
void RemoveCallCompletedCallback (CallCompletedCallback callback)
 
void FireCallCompletedCallback ()
 
void AddBeforeCallEnteredCallback (BeforeCallEnteredCallback callback)
 
void RemoveBeforeCallEnteredCallback (BeforeCallEnteredCallback callback)
 
void FireBeforeCallEnteredCallback ()
 
void AddMicrotasksCompletedCallback (MicrotasksCompletedCallback callback)
 
void RemoveMicrotasksCompletedCallback (MicrotasksCompletedCallback callback)
 
void FireMicrotasksCompletedCallback ()
 
void SetPromiseRejectCallback (PromiseRejectCallback callback)
 
void ReportPromiseReject (Handle< JSPromise > promise, Handle< Object > value, v8::PromiseRejectEvent event)
 
void EnqueueMicrotask (Handle< Microtask > microtask)
 
void RunMicrotasks ()
 
bool IsRunningMicrotasks () const
 
Handle< SymbolSymbolFor (RootIndex dictionary_index, Handle< String > name, bool private_symbol)
 
void SetUseCounterCallback (v8::Isolate::UseCounterCallback callback)
 
void CountUsage (v8::Isolate::UseCounterFeature feature)
 
Address promise_hook_address ()
 
Address async_event_delegate_address ()
 
Address promise_hook_or_async_event_delegate_address ()
 
Address default_microtask_queue_address ()
 
Address promise_hook_or_debug_is_active_or_async_event_delegate_address ()
 
Address handle_scope_implementer_address ()
 
void SetAtomicsWaitCallback (v8::Isolate::AtomicsWaitCallback callback, void *data)
 
void RunAtomicsWaitCallback (v8::Isolate::AtomicsWaitEvent event, Handle< JSArrayBuffer > array_buffer, size_t offset_in_bytes, int32_t value, double timeout_in_ms, AtomicsWaitWakeHandle *stop_handle)
 
void SetPromiseHook (PromiseHook hook)
 
void RunPromiseHook (PromiseHookType type, Handle< JSPromise > promise, Handle< Object > parent)
 
void PromiseHookStateUpdated ()
 
void AddDetachedContext (Handle< Context > context)
 
void CheckDetachedContextsAfterGC ()
 
std::vector< Object * > * read_only_object_cache ()
 
std::vector< Object * > * partial_snapshot_cache ()
 
bool ShouldLoadConstantsFromRootList () const
 
BuiltinsConstantsTableBuilderbuiltins_constants_table_builder () const
 
const uint8_t * embedded_blob () const
 
uint32_t embedded_blob_size () const
 
void set_array_buffer_allocator (v8::ArrayBuffer::Allocator *allocator)
 
v8::ArrayBuffer::Allocatorarray_buffer_allocator () const
 
FutexWaitListNodefutex_wait_list_node ()
 
CancelableTaskManagercancelable_task_manager ()
 
const AstStringConstantsast_string_constants () const
 
interpreter::Interpreterinterpreter () const
 
compiler::PerIsolateCompilerCachecompiler_cache () const
 
void set_compiler_utils (compiler::PerIsolateCompilerCache *cache, Zone *zone)
 
AccountingAllocatorallocator ()
 
CompilerDispatchercompiler_dispatcher () const
 
bool IsInAnyContext (Object *object, uint32_t index)
 
void SetHostImportModuleDynamicallyCallback (HostImportModuleDynamicallyCallback callback)
 
MaybeHandle< JSPromiseRunHostImportModuleDynamicallyCallback (Handle< Script > referrer, Handle< Object > specifier)
 
void SetHostInitializeImportMetaObjectCallback (HostInitializeImportMetaObjectCallback callback)
 
Handle< JSObjectRunHostInitializeImportMetaObjectCallback (Handle< Module > module)
 
void SetPrepareStackTraceCallback (PrepareStackTraceCallback callback)
 
MaybeHandle< ObjectRunPrepareStackTraceCallback (Handle< Context >, Handle< JSObject > Error, Handle< JSArray > sites)
 
bool HasPrepareStackTraceCallback () const
 
void SetRAILMode (RAILMode rail_mode)
 
RAILMode rail_mode ()
 
double LoadStartTimeMs ()
 
void IsolateInForegroundNotification ()
 
void IsolateInBackgroundNotification ()
 
bool IsIsolateInBackground ()
 
void EnableMemorySavingsMode ()
 
void DisableMemorySavingsMode ()
 
bool IsMemorySavingsModeActive ()
 
 PRINTF_FORMAT (2, 3) void PrintWithTimestamp(const char *format
 
void set_allow_atomics_wait (bool set)
 
bool allow_atomics_wait ()
 
void RegisterManagedPtrDestructor (ManagedPtrDestructor *finalizer)
 
void UnregisterManagedPtrDestructor (ManagedPtrDestructor *finalizer)
 
size_t elements_deletion_counter ()
 
void set_elements_deletion_counter (size_t value)
 
wasm::WasmEnginewasm_engine () const
 
void SetWasmEngine (std::shared_ptr< wasm::WasmEngine > engine)
 
const v8::Context::BackupIncumbentScopetop_backup_incumbent_scope () const
 
void set_top_backup_incumbent_scope (const v8::Context::BackupIncumbentScope *top_backup_incumbent_scope)
 
void SetIdle (bool is_idle)
 

Static Public Member Functions

static void InitializeOncePerProcess ()
 
static V8_EXPORT_PRIVATE IsolateNew (IsolateAllocationMode mode=IsolateAllocationMode::kDefault)
 
static void Delete (Isolate *isolate)
 
static PerIsolateThreadDataCurrentPerIsolateThreadData ()
 
static V8_INLINE IsolateTryGetCurrent ()
 
static V8_INLINE IsolateCurrent ()
 
static bool FromWritableHeapObject (HeapObject *obj, Isolate **isolate)
 
static base::Thread::LocalStorageKey isolate_key ()
 
static base::Thread::LocalStorageKey per_isolate_thread_data_key ()
 
static Address c_entry_fp (ThreadLocalTop *thread)
 
static Address handler (ThreadLocalTop *thread)
 
static int ArchiveSpacePerThread ()
 
static size_t isolate_root_bias ()
 
static uint32_t thread_in_wasm_flag_address_offset ()
 
static std::string GetTurboCfgFileName (Isolate *isolate)
 
static const uint8_t * CurrentEmbeddedBlob ()
 
static uint32_t CurrentEmbeddedBlobSize ()
 

Static Public Attributes

static const int kUC16AlphabetSize = 256
 
static const int kBMMaxShift = 250
 
static const int kJSRegexpStaticOffsetsVectorSize = 128
 
static const int kProtectorValid = 1
 
static const int kProtectorInvalid = 0
 

Friends

class heap::HeapTester
 
class TestSerializer
 

Detailed Description

Definition at line 516 of file isolate.h.


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