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

#include <ast.h>

Inheritance diagram for v8::internal::ArrayLiteralBoilerplateBuilder:
Collaboration diagram for v8::internal::ArrayLiteralBoilerplateBuilder:

Public Member Functions

 ArrayLiteralBoilerplateBuilder (const ZonePtrList< Expression > *values, int first_spread_index)
 
DirectHandle< ArrayBoilerplateDescriptionboilerplate_description () const
 
bool IsFastCloningSupported () const
 
int ComputeFlags (bool disable_mementos=false) const
 
int first_spread_index () const
 
void InitDepthAndFlags ()
 
template<typename IsolateT >
Handle< ArrayBoilerplateDescriptionGetOrBuildBoilerplateDescription (IsolateT *isolate)
 
template<typename IsolateT >
void BuildBoilerplateDescription (IsolateT *isolate)
 
- Public Member Functions inherited from v8::internal::LiteralBoilerplateBuilder
bool is_initialized () const
 
DepthKind depth () const
 
bool is_shallow () const
 
bool needs_initial_allocation_site () const
 
int ComputeFlags (bool disable_mementos=false) const
 
bool is_simple () const
 
ElementsKind boilerplate_descriptor_kind () const
 

Public Attributes

const ZonePtrList< Expression > * values_
 
int first_spread_index_
 
IndirectHandle< ArrayBoilerplateDescriptionboilerplate_description_
 

Additional Inherited Members

- Public Types inherited from v8::internal::LiteralBoilerplateBuilder
enum  DepthKind { kUninitialized , kShallow , kNotShallow }
 
- Static Public Member Functions inherited from v8::internal::LiteralBoilerplateBuilder
template<typename IsolateT >
static DirectHandle< ObjectGetBoilerplateValue (Expression *expression, IsolateT *isolate)
 
- Static Public Attributes inherited from v8::internal::LiteralBoilerplateBuilder
static constexpr int kDepthKindBits = 2
 
- Protected Types inherited from v8::internal::LiteralBoilerplateBuilder
template<class T , int size>
using NextBitField = BoilerplateDescriptorKindField::Next<T, size>
 
- Protected Member Functions inherited from v8::internal::LiteralBoilerplateBuilder
 LiteralBoilerplateBuilder ()
 
void set_is_simple (bool is_simple)
 
void set_boilerplate_descriptor_kind (ElementsKind kind)
 
void set_depth (DepthKind depth)
 
void set_needs_initial_allocation_site (bool required)
 
template<typename IsolateT >
void BuildConstants (IsolateT *isolate, MaterializedLiteral *expr)
 
- Static Protected Member Functions inherited from v8::internal::LiteralBoilerplateBuilder
static void InitDepthAndFlags (MaterializedLiteral *expr)
 
- Protected Attributes inherited from v8::internal::LiteralBoilerplateBuilder
uint32_t bit_field_
 

Detailed Description

Definition at line 1435 of file ast.h.

Constructor & Destructor Documentation

◆ ArrayLiteralBoilerplateBuilder()

v8::internal::ArrayLiteralBoilerplateBuilder::ArrayLiteralBoilerplateBuilder ( const ZonePtrList< Expression > * values,
int first_spread_index )
inline

Definition at line 1437 of file ast.h.

Member Function Documentation

◆ boilerplate_description()

DirectHandle< ArrayBoilerplateDescription > v8::internal::ArrayLiteralBoilerplateBuilder::boilerplate_description ( ) const
inline

Definition at line 1440 of file ast.h.

◆ BuildBoilerplateDescription()

template<typename IsolateT >
void v8::internal::ArrayLiteralBoilerplateBuilder::BuildBoilerplateDescription ( IsolateT * isolate)

Definition at line 662 of file ast.cc.

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

◆ ComputeFlags()

int v8::internal::ArrayLiteralBoilerplateBuilder::ComputeFlags ( bool disable_mementos = false) const
inline

Definition at line 1448 of file ast.h.

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

◆ first_spread_index()

int v8::internal::ArrayLiteralBoilerplateBuilder::first_spread_index ( ) const
inline

Definition at line 1452 of file ast.h.

Here is the caller graph for this function:

◆ GetOrBuildBoilerplateDescription()

template<typename IsolateT >
Handle< ArrayBoilerplateDescription > v8::internal::ArrayLiteralBoilerplateBuilder::GetOrBuildBoilerplateDescription ( IsolateT * isolate)
inline

Definition at line 1459 of file ast.h.

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

◆ InitDepthAndFlags()

void v8::internal::ArrayLiteralBoilerplateBuilder::InitDepthAndFlags ( )
Here is the caller graph for this function:

◆ IsFastCloningSupported()

bool v8::internal::ArrayLiteralBoilerplateBuilder::IsFastCloningSupported ( ) const
Here is the caller graph for this function:

Member Data Documentation

◆ boilerplate_description_

IndirectHandle<ArrayBoilerplateDescription> v8::internal::ArrayLiteralBoilerplateBuilder::boilerplate_description_

Definition at line 1473 of file ast.h.

◆ first_spread_index_

int v8::internal::ArrayLiteralBoilerplateBuilder::first_spread_index_

Definition at line 1472 of file ast.h.

◆ values_

const ZonePtrList<Expression>* v8::internal::ArrayLiteralBoilerplateBuilder::values_

Definition at line 1471 of file ast.h.


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