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

#include <ast.h>

Inheritance diagram for v8::internal::ConditionalChain:
Collaboration diagram for v8::internal::ConditionalChain:

Classes

struct  ConditionalChainEntry
 

Public Member Functions

Expressioncondition_at (size_t index) const
 
Expressionthen_expression_at (size_t index) const
 
int condition_position_at (size_t index) const
 
size_t conditional_chain_length () const
 
Expressionelse_expression () const
 
void set_else_expression (Expression *s)
 
void AddChainEntry (Expression *cond, Expression *then, int pos)
 
- Public Member Functions inherited from v8::internal::Expression
bool IsValidReferenceExpression () const
 
bool IsPrivateName () const
 
bool ToBooleanIsTrue () const
 
bool ToBooleanIsFalse () const
 
bool IsPropertyName () const
 
bool IsAnonymousFunctionDefinition () const
 
bool IsConciseMethodDefinition () const
 
bool IsAccessorFunctionDefinition () const
 
bool IsSmiLiteral () const
 
V8_EXPORT_PRIVATE bool IsNumberLiteral () const
 
bool IsStringLiteral () const
 
bool IsConsStringLiteral () const
 
bool IsNullLiteral () const
 
bool IsBooleanLiteral () const
 
bool IsTheHoleLiteral () const
 
bool IsUndefinedLiteral () const
 
bool IsNullOrUndefinedLiteral () const
 
bool IsLiteralButNotNullOrUndefined () const
 
bool IsCompileTimeValue ()
 
bool IsPattern ()
 
bool is_parenthesized () const
 
void mark_parenthesized ()
 
void clear_parenthesized ()
 
- Public Member Functions inherited from v8::internal::AstNode
NodeType node_type () const
 
int position () const
 
IterationStatementAsIterationStatement ()
 
MaterializedLiteralAsMaterializedLiteral ()
 
- Public Member Functions inherited from v8::internal::ZoneObject
void * operator new (size_t, Zone *)=delete
 
void * operator new (size_t size, void *ptr)
 
void operator delete (void *, size_t)
 
void operator delete (void *pointer, Zone *zone)=delete
 

Private Member Functions

 ConditionalChain (Zone *zone, size_t initial_size, int pos)
 

Private Attributes

friend Zone
 
ZoneVector< ConditionalChainEntryconditional_chain_entries_
 
Expressionelse_expression_
 

Friends

class AstNodeFactory
 

Additional Inherited Members

- Public Types inherited from v8::internal::Expression
enum  Context { kUninitialized , kEffect , kValue , kTest }
 
- Public Types inherited from v8::internal::AstNode
enum  NodeType : uint8_t
 
- Protected Types inherited from v8::internal::Expression
template<class T , int size>
using NextBitField = IsParenthesizedField::Next<T, size>
 
- Protected Types inherited from v8::internal::AstNode
template<class T , int size>
using NextBitField = NodeTypeField::Next<T, size>
 
- Protected Member Functions inherited from v8::internal::Expression
 Expression (int pos, NodeType type)
 
- Protected Member Functions inherited from v8::internal::AstNode
 AstNode (int position, NodeType type)
 
- Protected Attributes inherited from v8::internal::AstNode
uint32_t bit_field_
 

Detailed Description

Definition at line 2074 of file ast.h.

Constructor & Destructor Documentation

◆ ConditionalChain()

v8::internal::ConditionalChain::ConditionalChain ( Zone * zone,
size_t initial_size,
int pos )
inlineprivate

Definition at line 2099 of file ast.h.

Member Function Documentation

◆ AddChainEntry()

void v8::internal::ConditionalChain::AddChainEntry ( Expression * cond,
Expression * then,
int pos )
inline

Definition at line 2091 of file ast.h.

Here is the caller graph for this function:

◆ condition_at()

Expression * v8::internal::ConditionalChain::condition_at ( size_t index) const
inline

Definition at line 2076 of file ast.h.

◆ condition_position_at()

int v8::internal::ConditionalChain::condition_position_at ( size_t index) const
inline

Definition at line 2082 of file ast.h.

◆ conditional_chain_length()

size_t v8::internal::ConditionalChain::conditional_chain_length ( ) const
inline

Definition at line 2085 of file ast.h.

Here is the caller graph for this function:

◆ else_expression()

Expression * v8::internal::ConditionalChain::else_expression ( ) const
inline

Definition at line 2088 of file ast.h.

◆ set_else_expression()

void v8::internal::ConditionalChain::set_else_expression ( Expression * s)
inline

Definition at line 2089 of file ast.h.

Here is the caller graph for this function:

◆ then_expression_at()

Expression * v8::internal::ConditionalChain::then_expression_at ( size_t index) const
inline

Definition at line 2079 of file ast.h.

Friends And Related Symbol Documentation

◆ AstNodeFactory

friend class AstNodeFactory
friend

Definition at line 2096 of file ast.h.

Member Data Documentation

◆ conditional_chain_entries_

ZoneVector<ConditionalChainEntry> v8::internal::ConditionalChain::conditional_chain_entries_
private

Definition at line 2141 of file ast.h.

◆ else_expression_

Expression* v8::internal::ConditionalChain::else_expression_
private

Definition at line 2142 of file ast.h.

◆ Zone

friend v8::internal::ConditionalChain::Zone
private

Definition at line 2097 of file ast.h.


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