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

#include <prettyprinter.h>

Inheritance diagram for v8::internal::CallPrinter:
Collaboration diagram for v8::internal::CallPrinter:

Public Types

enum class  SpreadErrorInArgsHint { kErrorInArgs , kNoErrorInArgs }
 
enum class  ErrorHint {
  kNone , kNormalIterator , kAsyncIterator , kCallAndNormalIterator ,
  kCallAndAsyncIterator
}
 

Public Member Functions

 CallPrinter (Isolate *isolate, bool is_user_js, SpreadErrorInArgsHint error_in_spread_args=SpreadErrorInArgsHint::kNoErrorInArgs)
 
 ~CallPrinter ()
 
DirectHandle< StringPrint (FunctionLiteral *program, int position)
 
ErrorHint GetErrorHint () const
 
Expressionspread_arg () const
 
ObjectLiteralPropertydestructuring_prop () const
 
Assignmentdestructuring_assignment () const
 
- Public Member Functions inherited from v8::internal::AstVisitor< CallPrinter >
void Visit (AstNode *node)
 
void VisitDeclarations (Declaration::List *declarations)
 
void VisitStatements (const ZonePtrList< Statement > *statements)
 
void VisitExpressions (const ZonePtrList< Expression > *expressions)
 

Protected Member Functions

void PrintLiteral (DirectHandle< Object > value, bool quote)
 
void PrintLiteral (const AstRawString *value, bool quote)
 
void FindStatements (const ZonePtrList< Statement > *statements)
 
void FindArguments (const ZonePtrList< Expression > *arguments)
 
- Protected Member Functions inherited from v8::internal::AstVisitor< CallPrinter >
CallPrinterimpl ()
 

Private Member Functions

void Print (char c)
 
void Print (const char *str)
 
void Print (DirectHandle< String > str)
 
void Find (AstNode *node, bool print=false)
 
 DEFINE_AST_VISITOR_SUBCLASS_MEMBERS ()
 

Private Attributes

Isolateisolate_
 
int num_prints_
 
IncrementalStringBuilder builder_
 
int position_
 
bool found_
 
bool done_
 
bool is_user_js_
 
bool is_iterator_error_
 
bool is_async_iterator_error_
 
bool is_call_error_
 
SpreadErrorInArgsHint error_in_spread_args_
 
ObjectLiteralPropertydestructuring_prop_
 
Assignmentdestructuring_assignment_
 
Expressionspread_arg_
 
FunctionKind function_kind_
 

Detailed Description

Definition at line 17 of file prettyprinter.h.

Member Enumeration Documentation

◆ ErrorHint

Enumerator
kNone 
kNormalIterator 
kAsyncIterator 
kCallAndNormalIterator 
kCallAndAsyncIterator 

Definition at line 29 of file prettyprinter.h.

◆ SpreadErrorInArgsHint

Enumerator
kErrorInArgs 
kNoErrorInArgs 

Definition at line 19 of file prettyprinter.h.

Constructor & Destructor Documentation

◆ CallPrinter()

v8::internal::CallPrinter::CallPrinter ( Isolate * isolate,
bool is_user_js,
SpreadErrorInArgsHint error_in_spread_args = SpreadErrorInArgsHint::kNoErrorInArgs )
explicit

Definition at line 21 of file prettyprinter.cc.

◆ ~CallPrinter()

v8::internal::CallPrinter::~CallPrinter ( )
default

Member Function Documentation

◆ DEFINE_AST_VISITOR_SUBCLASS_MEMBERS()

v8::internal::CallPrinter::DEFINE_AST_VISITOR_SUBCLASS_MEMBERS ( )
private

◆ destructuring_assignment()

Assignment * v8::internal::CallPrinter::destructuring_assignment ( ) const
inline

Definition at line 42 of file prettyprinter.h.

Here is the caller graph for this function:

◆ destructuring_prop()

ObjectLiteralProperty * v8::internal::CallPrinter::destructuring_prop ( ) const
inline

Definition at line 39 of file prettyprinter.h.

Here is the caller graph for this function:

◆ Find()

void v8::internal::CallPrinter::Find ( AstNode * node,
bool print = false )
private

Definition at line 62 of file prettyprinter.cc.

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

◆ FindArguments()

void v8::internal::CallPrinter::FindArguments ( const ZonePtrList< Expression > * arguments)
protected

Definition at line 620 of file prettyprinter.cc.

Here is the call graph for this function:

◆ FindStatements()

void v8::internal::CallPrinter::FindStatements ( const ZonePtrList< Statement > * statements)
protected

Definition at line 613 of file prettyprinter.cc.

Here is the call graph for this function:

◆ GetErrorHint()

CallPrinter::ErrorHint v8::internal::CallPrinter::GetErrorHint ( ) const

Definition at line 43 of file prettyprinter.cc.

◆ Print() [1/4]

void v8::internal::CallPrinter::Print ( char c)
private

Definition at line 75 of file prettyprinter.cc.

Here is the call graph for this function:

◆ Print() [2/4]

void v8::internal::CallPrinter::Print ( const char * str)
private

Definition at line 81 of file prettyprinter.cc.

Here is the call graph for this function:

◆ Print() [3/4]

void v8::internal::CallPrinter::Print ( DirectHandle< String > str)
private

Definition at line 87 of file prettyprinter.cc.

Here is the call graph for this function:

◆ Print() [4/4]

DirectHandle< String > v8::internal::CallPrinter::Print ( FunctionLiteral * program,
int position )

Definition at line 54 of file prettyprinter.cc.

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

◆ PrintLiteral() [1/2]

void v8::internal::CallPrinter::PrintLiteral ( const AstRawString * value,
bool quote )
protected

Definition at line 649 of file prettyprinter.cc.

Here is the call graph for this function:

◆ PrintLiteral() [2/2]

void v8::internal::CallPrinter::PrintLiteral ( DirectHandle< Object > value,
bool quote )
protected

Definition at line 627 of file prettyprinter.cc.

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

◆ spread_arg()

Expression * v8::internal::CallPrinter::spread_arg ( ) const
inline

Definition at line 38 of file prettyprinter.h.

Here is the caller graph for this function:

Member Data Documentation

◆ builder_

IncrementalStringBuilder v8::internal::CallPrinter::builder_
private

Definition at line 60 of file prettyprinter.h.

◆ destructuring_assignment_

Assignment* v8::internal::CallPrinter::destructuring_assignment_
private

Definition at line 70 of file prettyprinter.h.

◆ destructuring_prop_

ObjectLiteralProperty* v8::internal::CallPrinter::destructuring_prop_
private

Definition at line 69 of file prettyprinter.h.

◆ done_

bool v8::internal::CallPrinter::done_
private

Definition at line 63 of file prettyprinter.h.

◆ error_in_spread_args_

SpreadErrorInArgsHint v8::internal::CallPrinter::error_in_spread_args_
private

Definition at line 68 of file prettyprinter.h.

◆ found_

bool v8::internal::CallPrinter::found_
private

Definition at line 62 of file prettyprinter.h.

◆ function_kind_

FunctionKind v8::internal::CallPrinter::function_kind_
private

Definition at line 72 of file prettyprinter.h.

◆ is_async_iterator_error_

bool v8::internal::CallPrinter::is_async_iterator_error_
private

Definition at line 66 of file prettyprinter.h.

◆ is_call_error_

bool v8::internal::CallPrinter::is_call_error_
private

Definition at line 67 of file prettyprinter.h.

◆ is_iterator_error_

bool v8::internal::CallPrinter::is_iterator_error_
private

Definition at line 65 of file prettyprinter.h.

◆ is_user_js_

bool v8::internal::CallPrinter::is_user_js_
private

Definition at line 64 of file prettyprinter.h.

◆ isolate_

Isolate* v8::internal::CallPrinter::isolate_
private

Definition at line 58 of file prettyprinter.h.

◆ num_prints_

int v8::internal::CallPrinter::num_prints_
private

Definition at line 59 of file prettyprinter.h.

◆ position_

int v8::internal::CallPrinter::position_
private

Definition at line 61 of file prettyprinter.h.

◆ spread_arg_

Expression* v8::internal::CallPrinter::spread_arg_
private

Definition at line 71 of file prettyprinter.h.


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