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

#include <templates.h>

Inheritance diagram for v8::internal::TemplateInfo:
Collaboration diagram for v8::internal::TemplateInfo:

Public Types

enum class  CachingMode { kLimited , kUnlimited }
 
using BodyDescriptor = StructBodyDescriptor
 

Public Member Functions

uint32_t EnsureHasSerialNumber (Isolate *isolate)
 
uint32_t GetHash () const
 
bool TryGetIsolate (Isolate **isolate) const
 
IsolateGetIsolateChecked () const
 

Static Public Member Functions

template<typename ReturnType >
static MaybeHandle< ReturnType > ProbeInstantiationsCache (Isolate *isolate, DirectHandle< NativeContext > native_context, DirectHandle< TemplateInfo > info, CachingMode caching_mode)
 
static MaybeHandle< ObjectProbeInstantiationsCache (Isolate *isolate, DirectHandle< NativeContext > native_context, DirectHandle< TemplateInfo > info, CachingMode caching_mode)
 
static void CacheTemplateInstantiation (Isolate *isolate, DirectHandle< NativeContext > native_context, DirectHandle< TemplateInfo > info, CachingMode caching_mode, DirectHandle< Object > object)
 
static void UncacheTemplateInstantiation (Isolate *isolate, DirectHandle< NativeContext > native_context, DirectHandle< TemplateInfo > info, CachingMode caching_mode)
 

Static Public Attributes

static const int kFastTemplateInstantiationsCacheSize = 1 * KB
 
static constexpr int kMaxTemplateInstantiationsCacheSize = 1 * MB
 
static const int kUninitializedSerialNumber = 0
 
static const int kFirstNonUniqueSerialNumber
 

Detailed Description

Definition at line 30 of file templates.h.

Member Typedef Documentation

◆ BodyDescriptor

Member Enumeration Documentation

◆ CachingMode

Enumerator
kLimited 
kUnlimited 

Definition at line 67 of file templates.h.

Member Function Documentation

◆ CacheTemplateInstantiation()

void v8::internal::TemplateInfo::CacheTemplateInstantiation ( Isolate * isolate,
DirectHandle< NativeContext > native_context,
DirectHandle< TemplateInfo > info,
CachingMode caching_mode,
DirectHandle< Object > object )
inlinestatic

Definition at line 385 of file templates-inl.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ EnsureHasSerialNumber()

uint32_t v8::internal::TemplateInfo::EnsureHasSerialNumber ( Isolate * isolate)
inline

Definition at line 335 of file templates-inl.h.

Here is the call graph for this function:

◆ GetHash()

uint32_t v8::internal::TemplateInfo::GetHash ( ) const
inline

Definition at line 345 of file templates-inl.h.

Here is the call graph for this function:

◆ GetIsolateChecked()

Isolate * v8::internal::TemplateInfo::GetIsolateChecked ( ) const
inline

Definition at line 303 of file templates-inl.h.

Here is the call graph for this function:

◆ ProbeInstantiationsCache() [1/2]

template<typename ReturnType >
static MaybeHandle< ReturnType > v8::internal::TemplateInfo::ProbeInstantiationsCache ( Isolate * isolate,
DirectHandle< NativeContext > native_context,
DirectHandle< TemplateInfo > info,
CachingMode caching_mode )
inlinestatic

Definition at line 70 of file templates.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ProbeInstantiationsCache() [2/2]

MaybeHandle< Object > v8::internal::TemplateInfo::ProbeInstantiationsCache ( Isolate * isolate,
DirectHandle< NativeContext > native_context,
DirectHandle< TemplateInfo > info,
CachingMode caching_mode )
inlinestatic

Definition at line 353 of file templates-inl.h.

Here is the call graph for this function:

◆ TryGetIsolate()

bool v8::internal::TemplateInfo::TryGetIsolate ( Isolate ** isolate) const
inline

Definition at line 293 of file templates-inl.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ UncacheTemplateInstantiation()

void v8::internal::TemplateInfo::UncacheTemplateInstantiation ( Isolate * isolate,
DirectHandle< NativeContext > native_context,
DirectHandle< TemplateInfo > info,
CachingMode caching_mode )
inlinestatic

Definition at line 415 of file templates-inl.h.

Here is the call graph for this function:
Here is the caller graph for this function:

Member Data Documentation

◆ kFastTemplateInstantiationsCacheSize

const int v8::internal::TemplateInfo::kFastTemplateInstantiationsCacheSize = 1 * KB
static

Definition at line 33 of file templates.h.

◆ kFirstNonUniqueSerialNumber

const int v8::internal::TemplateInfo::kFirstNonUniqueSerialNumber
static
Initial value:

Definition at line 44 of file templates.h.

◆ kMaxTemplateInstantiationsCacheSize

int v8::internal::TemplateInfo::kMaxTemplateInstantiationsCacheSize = 1 * MB
staticconstexpr

Definition at line 38 of file templates.h.

◆ kUninitializedSerialNumber

const int v8::internal::TemplateInfo::kUninitializedSerialNumber = 0
static

Definition at line 41 of file templates.h.


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