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

#include <preparser.h>

Collaboration diagram for v8::internal::PreParserFactory:

Public Member Functions

 PreParserFactory (AstValueFactory *ast_value_factory, Zone *zone)
 
AstNodeFactoryast_node_factory ()
 
PreParserExpression NewStringLiteral (const PreParserIdentifier &identifier, int pos)
 
PreParserExpression NewNumberLiteral (double number, int pos)
 
PreParserExpression NewUndefinedLiteral (int pos)
 
PreParserExpression NewTheHoleLiteral ()
 
PreParserExpression NewRegExpLiteral (const AstRawString *js_pattern, int js_flags, int pos)
 
PreParserExpression NewArrayLiteral (const PreParserExpressionList &values, int first_spread_index, int pos)
 
PreParserExpression NewClassLiteralProperty (const PreParserExpression &key, const PreParserExpression &value, ClassLiteralProperty::Kind kind, bool is_static, bool is_computed_name, bool is_private)
 
PreParserExpression NewObjectLiteralProperty (const PreParserExpression &key, const PreParserExpression &value, ObjectLiteralProperty::Kind kind, bool is_computed_name)
 
PreParserExpression NewObjectLiteralProperty (const PreParserExpression &key, const PreParserExpression &value, bool is_computed_name)
 
PreParserExpression NewObjectLiteral (const PreParserExpressionList &properties, int boilerplate_properties, int pos, bool has_rest_property, Variable *home_object=nullptr)
 
PreParserExpression NewVariableProxy (void *variable)
 
PreParserExpression NewOptionalChain (const PreParserExpression &expr)
 
PreParserExpression NewProperty (const PreParserExpression &obj, const PreParserExpression &key, int pos, bool optional_chain=false)
 
PreParserExpression NewUnaryOperation (Token::Value op, const PreParserExpression &expression, int pos)
 
PreParserExpression NewBinaryOperation (Token::Value op, const PreParserExpression &left, const PreParserExpression &right, int pos)
 
PreParserExpression NewCompareOperation (Token::Value op, const PreParserExpression &left, const PreParserExpression &right, int pos)
 
PreParserExpression NewAssignment (Token::Value op, const PreParserExpression &left, const PreParserExpression &right, int pos)
 
PreParserExpression NewYield (const PreParserExpression &expression, int pos, Suspend::OnAbruptResume on_abrupt_resume)
 
PreParserExpression NewAwait (const PreParserExpression &expression, int pos)
 
PreParserExpression NewYieldStar (const PreParserExpression &iterable, int pos)
 
PreParserExpression NewConditionalChain (size_t initial_size, int pos)
 
PreParserExpression NewConditional (const PreParserExpression &condition, const PreParserExpression &then_expression, const PreParserExpression &else_expression, int pos)
 
PreParserExpression NewCountOperation (Token::Value op, bool is_prefix, const PreParserExpression &expression, int pos)
 
PreParserExpression NewCall (PreParserExpression expression, const PreParserExpressionList &arguments, int pos, bool has_spread, int eval_scope_info_index=0, bool optional_chain=false)
 
PreParserExpression NewCallNew (const PreParserExpression &expression, const PreParserExpressionList &arguments, int pos, bool has_spread)
 
PreParserStatement NewReturnStatement (const PreParserExpression &expression, int pos, int continuation_pos=kNoSourcePosition)
 
PreParserStatement NewAsyncReturnStatement (const PreParserExpression &expression, int pos, int continuation_pos=kNoSourcePosition)
 
PreParserExpression NewFunctionLiteral (const PreParserIdentifier &name, Scope *scope, const PreParserScopedStatementList &body, int expected_property_count, int parameter_count, int function_length, FunctionLiteral::ParameterFlag has_duplicate_parameters, FunctionSyntaxKind function_syntax_kind, FunctionLiteral::EagerCompileHint eager_compile_hint, int position, bool has_braces, int function_literal_id, ProducedPreparseData *produced_preparse_data=nullptr)
 
PreParserExpression NewSpread (const PreParserExpression &expression, int pos, int expr_pos)
 
PreParserExpression NewEmptyParentheses (int pos)
 
PreParserStatement EmptyStatement ()
 
PreParserBlock NewBlock (int capacity, bool ignore_completion_value)
 
PreParserBlock NewBlock (bool ignore_completion_value, bool is_breakable)
 
PreParserBlock NewBlock (bool ignore_completion_value, const PreParserScopedStatementList &list)
 
PreParserStatement NewDebuggerStatement (int pos)
 
PreParserStatement NewExpressionStatement (const PreParserExpression &expr, int pos)
 
PreParserStatement NewIfStatement (const PreParserExpression &condition, PreParserStatement then_statement, PreParserStatement else_statement, int pos, SourceRange then_range={}, SourceRange else_range={})
 
PreParserStatement NewBreakStatement (PreParserStatement target, int pos, int continuation_pos=kNoSourcePosition)
 
PreParserStatement NewContinueStatement (PreParserStatement target, int pos, int continuation_pos=kNoSourcePosition)
 
PreParserStatement NewWithStatement (Scope *scope, const PreParserExpression &expression, PreParserStatement statement, int pos)
 
PreParserStatement NewDoWhileStatement (int pos)
 
PreParserStatement NewWhileStatement (int pos)
 
PreParserStatement NewSwitchStatement (const PreParserExpression &tag, int pos)
 
PreParserStatement NewCaseClause (const PreParserExpression &label, const PreParserScopedStatementList &statements)
 
PreParserStatement NewForStatement (int pos)
 
PreParserStatement NewForEachStatement (ForEachStatement::VisitMode visit_mode, int pos)
 
PreParserStatement NewForOfStatement (int pos, IteratorType type)
 
PreParserExpression NewImportCallExpression (const PreParserExpression &args, const ModuleImportPhase phase, int pos)
 
PreParserExpression NewImportCallExpression (const PreParserExpression &specifier, const ModuleImportPhase phase, const PreParserExpression &import_options, int pos)
 

Private Attributes

AstNodeFactory ast_node_factory_
 

Detailed Description

Definition at line 464 of file preparser.h.

Constructor & Destructor Documentation

◆ PreParserFactory()

v8::internal::PreParserFactory::PreParserFactory ( AstValueFactory * ast_value_factory,
Zone * zone )
inlineexplicit

Definition at line 466 of file preparser.h.

Member Function Documentation

◆ ast_node_factory()

AstNodeFactory * v8::internal::PreParserFactory::ast_node_factory ( )
inline

Definition at line 469 of file preparser.h.

Here is the caller graph for this function:

◆ EmptyStatement()

PreParserStatement v8::internal::PreParserFactory::EmptyStatement ( )
inline

Definition at line 643 of file preparser.h.

Here is the call graph for this function:

◆ NewArrayLiteral()

PreParserExpression v8::internal::PreParserFactory::NewArrayLiteral ( const PreParserExpressionList & values,
int first_spread_index,
int pos )
inline

Definition at line 489 of file preparser.h.

Here is the call graph for this function:

◆ NewAssignment()

PreParserExpression v8::internal::PreParserFactory::NewAssignment ( Token::Value op,
const PreParserExpression & left,
const PreParserExpression & right,
int pos )
inline

Definition at line 561 of file preparser.h.

Here is the call graph for this function:

◆ NewAsyncReturnStatement()

PreParserStatement v8::internal::PreParserFactory::NewAsyncReturnStatement ( const PreParserExpression & expression,
int pos,
int continuation_pos = kNoSourcePosition )
inline

Definition at line 614 of file preparser.h.

Here is the call graph for this function:

◆ NewAwait()

PreParserExpression v8::internal::PreParserFactory::NewAwait ( const PreParserExpression & expression,
int pos )
inline

Definition at line 572 of file preparser.h.

Here is the call graph for this function:

◆ NewBinaryOperation()

PreParserExpression v8::internal::PreParserFactory::NewBinaryOperation ( Token::Value op,
const PreParserExpression & left,
const PreParserExpression & right,
int pos )
inline

Definition at line 549 of file preparser.h.

Here is the call graph for this function:

◆ NewBlock() [1/3]

PreParserBlock v8::internal::PreParserFactory::NewBlock ( bool ignore_completion_value,
bool is_breakable )
inline

Definition at line 649 of file preparser.h.

Here is the call graph for this function:

◆ NewBlock() [2/3]

PreParserBlock v8::internal::PreParserFactory::NewBlock ( bool ignore_completion_value,
const PreParserScopedStatementList & list )
inline

Definition at line 653 of file preparser.h.

Here is the call graph for this function:

◆ NewBlock() [3/3]

PreParserBlock v8::internal::PreParserFactory::NewBlock ( int capacity,
bool ignore_completion_value )
inline

Definition at line 645 of file preparser.h.

Here is the call graph for this function:

◆ NewBreakStatement()

PreParserStatement v8::internal::PreParserFactory::NewBreakStatement ( PreParserStatement target,
int pos,
int continuation_pos = kNoSourcePosition )
inline

Definition at line 676 of file preparser.h.

Here is the call graph for this function:

◆ NewCall()

PreParserExpression v8::internal::PreParserFactory::NewCall ( PreParserExpression expression,
const PreParserExpressionList & arguments,
int pos,
bool has_spread,
int eval_scope_info_index = 0,
bool optional_chain = false )
inline

Definition at line 593 of file preparser.h.

Here is the call graph for this function:

◆ NewCallNew()

PreParserExpression v8::internal::PreParserFactory::NewCallNew ( const PreParserExpression & expression,
const PreParserExpressionList & arguments,
int pos,
bool has_spread )
inline

Definition at line 604 of file preparser.h.

Here is the call graph for this function:

◆ NewCaseClause()

PreParserStatement v8::internal::PreParserFactory::NewCaseClause ( const PreParserExpression & label,
const PreParserScopedStatementList & statements )
inline

Definition at line 707 of file preparser.h.

Here is the call graph for this function:

◆ NewClassLiteralProperty()

PreParserExpression v8::internal::PreParserFactory::NewClassLiteralProperty ( const PreParserExpression & key,
const PreParserExpression & value,
ClassLiteralProperty::Kind kind,
bool is_static,
bool is_computed_name,
bool is_private )
inline

Definition at line 493 of file preparser.h.

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

◆ NewCompareOperation()

PreParserExpression v8::internal::PreParserFactory::NewCompareOperation ( Token::Value op,
const PreParserExpression & left,
const PreParserExpression & right,
int pos )
inline

Definition at line 555 of file preparser.h.

Here is the call graph for this function:

◆ NewConditional()

PreParserExpression v8::internal::PreParserFactory::NewConditional ( const PreParserExpression & condition,
const PreParserExpression & then_expression,
const PreParserExpression & else_expression,
int pos )
inline

Definition at line 582 of file preparser.h.

Here is the call graph for this function:

◆ NewConditionalChain()

PreParserExpression v8::internal::PreParserFactory::NewConditionalChain ( size_t initial_size,
int pos )
inline

Definition at line 579 of file preparser.h.

Here is the call graph for this function:

◆ NewContinueStatement()

PreParserStatement v8::internal::PreParserFactory::NewContinueStatement ( PreParserStatement target,
int pos,
int continuation_pos = kNoSourcePosition )
inline

Definition at line 682 of file preparser.h.

Here is the call graph for this function:

◆ NewCountOperation()

PreParserExpression v8::internal::PreParserFactory::NewCountOperation ( Token::Value op,
bool is_prefix,
const PreParserExpression & expression,
int pos )
inline

Definition at line 588 of file preparser.h.

Here is the call graph for this function:

◆ NewDebuggerStatement()

PreParserStatement v8::internal::PreParserFactory::NewDebuggerStatement ( int pos)
inline

Definition at line 658 of file preparser.h.

Here is the call graph for this function:

◆ NewDoWhileStatement()

PreParserStatement v8::internal::PreParserFactory::NewDoWhileStatement ( int pos)
inline

Definition at line 694 of file preparser.h.

Here is the call graph for this function:

◆ NewEmptyParentheses()

PreParserExpression v8::internal::PreParserFactory::NewEmptyParentheses ( int pos)
inline

Definition at line 637 of file preparser.h.

Here is the call graph for this function:

◆ NewExpressionStatement()

PreParserStatement v8::internal::PreParserFactory::NewExpressionStatement ( const PreParserExpression & expr,
int pos )
inline

Definition at line 662 of file preparser.h.

Here is the call graph for this function:

◆ NewForEachStatement()

PreParserStatement v8::internal::PreParserFactory::NewForEachStatement ( ForEachStatement::VisitMode visit_mode,
int pos )
inline

Definition at line 717 of file preparser.h.

Here is the call graph for this function:

◆ NewForOfStatement()

PreParserStatement v8::internal::PreParserFactory::NewForOfStatement ( int pos,
IteratorType type )
inline

Definition at line 722 of file preparser.h.

Here is the call graph for this function:

◆ NewForStatement()

PreParserStatement v8::internal::PreParserFactory::NewForStatement ( int pos)
inline

Definition at line 713 of file preparser.h.

Here is the call graph for this function:

◆ NewFunctionLiteral()

PreParserExpression v8::internal::PreParserFactory::NewFunctionLiteral ( const PreParserIdentifier & name,
Scope * scope,
const PreParserScopedStatementList & body,
int expected_property_count,
int parameter_count,
int function_length,
FunctionLiteral::ParameterFlag has_duplicate_parameters,
FunctionSyntaxKind function_syntax_kind,
FunctionLiteral::EagerCompileHint eager_compile_hint,
int position,
bool has_braces,
int function_literal_id,
ProducedPreparseData * produced_preparse_data = nullptr )
inline

Definition at line 619 of file preparser.h.

Here is the call graph for this function:

◆ NewIfStatement()

PreParserStatement v8::internal::PreParserFactory::NewIfStatement ( const PreParserExpression & condition,
PreParserStatement then_statement,
PreParserStatement else_statement,
int pos,
SourceRange then_range = {},
SourceRange else_range = {} )
inline

Definition at line 667 of file preparser.h.

◆ NewImportCallExpression() [1/2]

PreParserExpression v8::internal::PreParserFactory::NewImportCallExpression ( const PreParserExpression & args,
const ModuleImportPhase phase,
int pos )
inline

Definition at line 726 of file preparser.h.

Here is the call graph for this function:

◆ NewImportCallExpression() [2/2]

PreParserExpression v8::internal::PreParserFactory::NewImportCallExpression ( const PreParserExpression & specifier,
const ModuleImportPhase phase,
const PreParserExpression & import_options,
int pos )
inline

Definition at line 732 of file preparser.h.

Here is the call graph for this function:

◆ NewNumberLiteral()

PreParserExpression v8::internal::PreParserFactory::NewNumberLiteral ( double number,
int pos )
inline

Definition at line 475 of file preparser.h.

Here is the call graph for this function:

◆ NewObjectLiteral()

PreParserExpression v8::internal::PreParserFactory::NewObjectLiteral ( const PreParserExpressionList & properties,
int boilerplate_properties,
int pos,
bool has_rest_property,
Variable * home_object = nullptr )
inline

Definition at line 512 of file preparser.h.

Here is the call graph for this function:

◆ NewObjectLiteralProperty() [1/2]

PreParserExpression v8::internal::PreParserFactory::NewObjectLiteralProperty ( const PreParserExpression & key,
const PreParserExpression & value,
bool is_computed_name )
inline

Definition at line 507 of file preparser.h.

Here is the call graph for this function:

◆ NewObjectLiteralProperty() [2/2]

PreParserExpression v8::internal::PreParserFactory::NewObjectLiteralProperty ( const PreParserExpression & key,
const PreParserExpression & value,
ObjectLiteralProperty::Kind kind,
bool is_computed_name )
inline

Definition at line 501 of file preparser.h.

Here is the call graph for this function:

◆ NewOptionalChain()

PreParserExpression v8::internal::PreParserFactory::NewOptionalChain ( const PreParserExpression & expr)
inline

Definition at line 521 of file preparser.h.

Here is the call graph for this function:

◆ NewProperty()

PreParserExpression v8::internal::PreParserFactory::NewProperty ( const PreParserExpression & obj,
const PreParserExpression & key,
int pos,
bool optional_chain = false )
inline

Definition at line 529 of file preparser.h.

Here is the call graph for this function:

◆ NewRegExpLiteral()

PreParserExpression v8::internal::PreParserFactory::NewRegExpLiteral ( const AstRawString * js_pattern,
int js_flags,
int pos )
inline

Definition at line 485 of file preparser.h.

Here is the call graph for this function:

◆ NewReturnStatement()

PreParserStatement v8::internal::PreParserFactory::NewReturnStatement ( const PreParserExpression & expression,
int pos,
int continuation_pos = kNoSourcePosition )
inline

Definition at line 609 of file preparser.h.

Here is the call graph for this function:

◆ NewSpread()

PreParserExpression v8::internal::PreParserFactory::NewSpread ( const PreParserExpression & expression,
int pos,
int expr_pos )
inline

Definition at line 632 of file preparser.h.

Here is the call graph for this function:

◆ NewStringLiteral()

PreParserExpression v8::internal::PreParserFactory::NewStringLiteral ( const PreParserIdentifier & identifier,
int pos )
inline

Definition at line 471 of file preparser.h.

Here is the call graph for this function:

◆ NewSwitchStatement()

PreParserStatement v8::internal::PreParserFactory::NewSwitchStatement ( const PreParserExpression & tag,
int pos )
inline

Definition at line 702 of file preparser.h.

Here is the call graph for this function:

◆ NewTheHoleLiteral()

PreParserExpression v8::internal::PreParserFactory::NewTheHoleLiteral ( )
inline

Definition at line 482 of file preparser.h.

Here is the call graph for this function:

◆ NewUnaryOperation()

PreParserExpression v8::internal::PreParserFactory::NewUnaryOperation ( Token::Value op,
const PreParserExpression & expression,
int pos )
inline

Definition at line 544 of file preparser.h.

Here is the call graph for this function:

◆ NewUndefinedLiteral()

PreParserExpression v8::internal::PreParserFactory::NewUndefinedLiteral ( int pos)
inline

Definition at line 479 of file preparser.h.

Here is the call graph for this function:

◆ NewVariableProxy()

PreParserExpression v8::internal::PreParserFactory::NewVariableProxy ( void * variable)
inline

Definition at line 517 of file preparser.h.

Here is the call graph for this function:

◆ NewWhileStatement()

PreParserStatement v8::internal::PreParserFactory::NewWhileStatement ( int pos)
inline

Definition at line 698 of file preparser.h.

Here is the call graph for this function:

◆ NewWithStatement()

PreParserStatement v8::internal::PreParserFactory::NewWithStatement ( Scope * scope,
const PreParserExpression & expression,
PreParserStatement statement,
int pos )
inline

Definition at line 688 of file preparser.h.

Here is the call graph for this function:

◆ NewYield()

PreParserExpression v8::internal::PreParserFactory::NewYield ( const PreParserExpression & expression,
int pos,
Suspend::OnAbruptResume on_abrupt_resume )
inline

Definition at line 568 of file preparser.h.

Here is the call graph for this function:

◆ NewYieldStar()

PreParserExpression v8::internal::PreParserFactory::NewYieldStar ( const PreParserExpression & iterable,
int pos )
inline

Definition at line 575 of file preparser.h.

Here is the call graph for this function:

Member Data Documentation

◆ ast_node_factory_

AstNodeFactory v8::internal::PreParserFactory::ast_node_factory_
private

Definition at line 740 of file preparser.h.


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