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

#include <ast.h>

Inheritance diagram for v8::internal::Expression:
Collaboration diagram for v8::internal::Expression:

Public Types

enum  Context { kUninitialized , kEffect , kValue , kTest }
 
- Public Types inherited from v8::internal::AstNode
enum  NodeType : uint8_t
 

Public Member Functions

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
 

Protected Types

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

 Expression (int pos, NodeType type)
 
- Protected Member Functions inherited from v8::internal::AstNode
 AstNode (int position, NodeType type)
 

Private Types

using IsParenthesizedField = AstNode::NextBitField<bool, 1>
 

Additional Inherited Members

- Protected Attributes inherited from v8::internal::AstNode
uint32_t bit_field_
 

Detailed Description

Definition at line 194 of file ast.h.

Member Typedef Documentation

◆ IsParenthesizedField

Definition at line 285 of file ast.h.

◆ NextBitField

template<class T , int size>
using v8::internal::Expression::NextBitField = IsParenthesizedField::Next<T, size>
protected

Definition at line 293 of file ast.h.

Member Enumeration Documentation

◆ Context

Enumerator
kUninitialized 
kEffect 
kValue 
kTest 

Definition at line 196 of file ast.h.

Constructor & Destructor Documentation

◆ Expression()

v8::internal::Expression::Expression ( int pos,
NodeType type )
inlineprotected

Definition at line 288 of file ast.h.

Here is the call graph for this function:

Member Function Documentation

◆ clear_parenthesized()

void v8::internal::Expression::clear_parenthesized ( )
inline

Definition at line 280 of file ast.h.

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

◆ is_parenthesized()

bool v8::internal::Expression::is_parenthesized ( ) const
inline

Definition at line 272 of file ast.h.

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

◆ IsAccessorFunctionDefinition()

bool v8::internal::Expression::IsAccessorFunctionDefinition ( ) const

Definition at line 150 of file ast.cc.

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

◆ IsAnonymousFunctionDefinition()

bool v8::internal::Expression::IsAnonymousFunctionDefinition ( ) const

Definition at line 139 of file ast.cc.

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

◆ IsBooleanLiteral()

bool v8::internal::Expression::IsBooleanLiteral ( ) const

Definition at line 91 of file ast.cc.

Here is the caller graph for this function:

◆ IsCompileTimeValue()

bool v8::internal::Expression::IsCompileTimeValue ( )

Definition at line 99 of file ast.cc.

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

◆ IsConciseMethodDefinition()

bool v8::internal::Expression::IsConciseMethodDefinition ( ) const

Definition at line 146 of file ast.cc.

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

◆ IsConsStringLiteral()

bool v8::internal::Expression::IsConsStringLiteral ( ) const

Definition at line 79 of file ast.cc.

◆ IsLiteralButNotNullOrUndefined()

bool v8::internal::Expression::IsLiteralButNotNullOrUndefined ( ) const

Definition at line 118 of file ast.cc.

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

◆ IsNullLiteral()

bool v8::internal::Expression::IsNullLiteral ( ) const

Definition at line 87 of file ast.cc.

Here is the caller graph for this function:

◆ IsNullOrUndefinedLiteral()

bool v8::internal::Expression::IsNullOrUndefinedLiteral ( ) const
inline

Definition at line 258 of file ast.h.

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

◆ IsNumberLiteral()

bool v8::internal::Expression::IsNumberLiteral ( ) const

Definition at line 71 of file ast.cc.

Here is the caller graph for this function:

◆ IsPattern()

bool v8::internal::Expression::IsPattern ( )
inline

Definition at line 267 of file ast.h.

Here is the call graph for this function:

◆ IsPrivateName()

bool v8::internal::Expression::IsPrivateName ( ) const

Definition at line 130 of file ast.cc.

Here is the caller graph for this function:

◆ IsPropertyName()

bool v8::internal::Expression::IsPropertyName ( ) const

Definition at line 83 of file ast.cc.

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

◆ IsSmiLiteral()

bool v8::internal::Expression::IsSmiLiteral ( ) const

Definition at line 67 of file ast.cc.

Here is the caller graph for this function:

◆ IsStringLiteral()

bool v8::internal::Expression::IsStringLiteral ( ) const

Definition at line 75 of file ast.cc.

Here is the caller graph for this function:

◆ IsTheHoleLiteral()

bool v8::internal::Expression::IsTheHoleLiteral ( ) const

Definition at line 95 of file ast.cc.

Here is the caller graph for this function:

◆ IsUndefinedLiteral()

bool v8::internal::Expression::IsUndefinedLiteral ( ) const

Definition at line 106 of file ast.cc.

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

◆ IsValidReferenceExpression()

bool v8::internal::Expression::IsValidReferenceExpression ( ) const

Definition at line 134 of file ast.cc.

◆ mark_parenthesized()

void v8::internal::Expression::mark_parenthesized ( )
inline

Definition at line 276 of file ast.h.

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

◆ ToBooleanIsFalse()

bool v8::internal::Expression::ToBooleanIsFalse ( ) const

Definition at line 126 of file ast.cc.

Here is the caller graph for this function:

◆ ToBooleanIsTrue()

bool v8::internal::Expression::ToBooleanIsTrue ( ) const

Definition at line 122 of file ast.cc.

Here is the caller graph for this function:

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