V8 Project
|
#include <parser.h>
Classes | |
struct | ParseInfo |
Static Public Member Functions | |
static bool | Parse (CompilationInfo *info, bool allow_lazy=false) |
![]() | |
template<typename FunctionState > | |
static void | SetUpFunctionState (FunctionState *function_state) |
template<typename FunctionState > | |
static void | TearDownFunctionState (FunctionState *function_state) |
static bool | IsThisProperty (Expression *expression) |
static bool | IsIdentifier (Expression *expression) |
static const AstRawString * | AsIdentifier (Expression *expression) |
static bool | IsBoilerplateProperty (ObjectLiteral::Property *property) |
static bool | IsArrayIndex (const AstRawString *string, uint32_t *index) |
static void | PushLiteralName (FuncNameInferrer *fni, const AstRawString *id) |
static void | InferFunctionName (FuncNameInferrer *fni, FunctionLiteral *func_to_infer) |
static void | CheckFunctionLiteralInsideTopLevelObjectLiteral (Scope *scope, ObjectLiteralProperty *property, bool *has_function) |
static void | CheckAssigningFunctionLiteralToProperty (Expression *left, Expression *right) |
static Expression * | MarkExpressionAsAssigned (Expression *expression) |
static const AstRawString * | EmptyIdentifier () |
static Expression * | EmptyExpression () |
static Expression * | EmptyArrowParamList () |
static Literal * | EmptyLiteral () |
static ObjectLiteralProperty * | EmptyObjectLiteralProperty () |
static FunctionLiteral * | EmptyFunctionLiteral () |
static ZoneList< Expression * > * | NullExpressionList () |
Private Types | |
enum | VariableDeclarationContext { kModuleElement , kBlockElement , kStatement , kForStatement } |
enum | VariableDeclarationProperties { kHasInitializers , kHasNoInitializers } |
Private Attributes | |
Scanner | scanner_ |
PreParser * | reusable_preparser_ |
Scope * | original_scope_ |
Target * | target_stack_ |
ParseData * | cached_parse_data_ |
CompilationInfo * | info_ |
bool | has_pending_error_ |
Scanner::Location | pending_error_location_ |
const char * | pending_error_message_ |
const AstRawString * | pending_error_arg_ |
const char * | pending_error_char_arg_ |
bool | pending_error_is_reference_error_ |
int | use_counts_ [v8::Isolate::kUseCounterFeatureCount] |
int | total_preparse_skipped_ |
HistogramTimer * | pre_parse_timer_ |
Static Private Attributes | |
static const int | kMaxNumFunctionLocals = 4194303 |
Friends | |
class | ParserTraits |
|
private |
|
private |
v8::internal::Parser::Parser | ( | CompilationInfo * | info, |
ParseInfo * | parse_info | ||
) |
Definition at line 755 of file parser.cc.
References v8::internal::CompilationInfo::ast_value_factory(), DCHECK, v8::internal::Parser::ParseInfo::hash_seed, info(), v8::internal::CompilationInfo::is_native(), v8::Isolate::kUseCounterFeatureCount, NULL, script(), v8::internal::ParserBase< ParserTraits >::set_allow_arrow_functions(), v8::internal::ParserBase< ParserTraits >::set_allow_classes(), v8::internal::ParserBase< ParserTraits >::set_allow_harmony_numeric_literals(), v8::internal::ParserBase< ParserTraits >::set_allow_harmony_object_literals(), v8::internal::ParserBase< ParserTraits >::set_allow_harmony_scoping(), v8::internal::ParserBase< ParserTraits >::set_allow_lazy(), v8::internal::ParserBase< ParserTraits >::set_allow_modules(), v8::internal::ParserBase< ParserTraits >::set_allow_natives_syntax(), v8::internal::CompilationInfo::SetAstValueFactory(), v8::internal::CompilationInfo::source_stream(), use_counts_, and v8::internal::ParserBase< ParserTraits >::zone().
|
inline |
Definition at line 618 of file parser.h.
References cached_parse_data_, NULL, and reusable_preparser_.
|
inlineprivate |
Definition at line 682 of file parser.h.
References v8::internal::CompilationInfo::ast_value_factory(), and info_.
Referenced by v8::internal::ParserTraits::ast_value_factory(), v8::internal::ParserTraits::CheckPossibleEvalCall(), DesugarLetBindingsInForStatement(), DoParseProgram(), v8::internal::ParserTraits::EmptyIdentifierString(), v8::internal::ParserTraits::GetNextSymbol(), v8::internal::ParserTraits::GetSymbol(), InitializeForEachStatement(), Internalize(), v8::internal::ParserTraits::IsConstructor(), v8::internal::ParserTraits::IsEvalOrArguments(), v8::internal::ParserTraits::IsPrototype(), NewScope(), v8::internal::ParserTraits::NewThrowError(), v8::internal::ParserTraits::NewThrowReferenceError(), v8::internal::ParserTraits::NewThrowSyntaxError(), v8::internal::ParserTraits::NewThrowTypeError(), Parse(), ParseEagerFunctionBody(), ParseExportDeclaration(), ParseExpressionOrLabelledStatement(), ParseForStatement(), ParseFunctionLiteral(), ParseLazy(), ParseModuleElement(), ParseOnBackground(), ParseProgram(), ParseSourceElements(), ParseVariableDeclarations(), v8::internal::ParserTraits::PushPropertyName(), and ThrowPendingError().
Definition at line 3919 of file parser.cc.
References v8::internal::Scope::CheckConflictingVarDeclarations(), v8::internal::Scanner::Location::invalid(), v8::internal::RelocInfo::kNoPosition, name, NULL, v8::internal::ParserBase< ParserTraits >::position(), v8::internal::Declaration::proxy(), and v8::internal::ParserTraits::ReportMessageAt().
Referenced by v8::internal::ParserTraits::CheckConflictingVarDeclarations(), DoParseProgram(), and ParseFunctionLiteral().
|
private |
Definition at line 2856 of file parser.cc.
References v8::internal::ParserBase< ParserTraits >::Check(), v8::internal::ParserBase< ParserTraits >::CheckContextualKeyword(), v8::internal::CStrVector(), v8::internal::ForEachStatement::ENUMERATE, IN, and v8::internal::ForEachStatement::ITERATE.
Referenced by ParseForStatement().
|
inlineprivate |
Definition at line 693 of file parser.h.
References v8::internal::CompilationInfo::compile_options(), and info_.
Referenced by ParseOnBackground(), ParseProgram(), SetCachedData(), and SkipLazyFunctionBody().
|
inlineprivate |
Definition at line 696 of file parser.h.
References v8::internal::IsLexicalVariableMode(), v8::internal::ParserBase< ParserTraits >::mode(), and v8::internal::ParserBase< ParserTraits >::scope_.
Referenced by Declare(), NewUnresolved(), ParseNativeDeclaration(), and ParseVariableDeclarations().
|
private |
Definition at line 1717 of file parser.cc.
References v8::internal::Scope::AddDeclaration(), v8::internal::Variable::AllocateTo(), v8::internal::ParserBase< ParserTraits >::allow_harmony_scoping(), v8::internal::CONST_LEGACY, DCHECK, DeclarationScope(), v8::internal::Scope::DeclareLocal(), v8::internal::Declaration::initialization(), v8::internal::Variable::interface(), v8::internal::Scope::is_block_scope(), v8::internal::Scope::is_eval_scope(), v8::internal::Scope::is_function_scope(), v8::internal::Scope::is_global_scope(), v8::internal::Scope::is_module_scope(), v8::internal::Scope::is_strict_eval_scope(), v8::internal::IsDeclaredVariableMode(), v8::internal::IsLexicalVariableMode(), v8::internal::kNeedsInitialization, v8::internal::kNotAssigned, v8::internal::AstRawString::length(), v8::internal::Scope::Lookup(), v8::internal::Variable::LOOKUP, v8::internal::Scope::LookupLocal(), v8::internal::Declaration::mode(), v8::internal::ParserBase< ParserTraits >::mode(), v8::internal::Variable::mode(), name, v8::internal::ParserTraits::NewThrowTypeError(), v8::internal::Variable::NORMAL, NULL, v8::internal::AstNode::position(), v8::internal::PrintF(), v8::internal::Declaration::proxy(), v8::internal::AstRawString::raw_data(), v8::internal::Variable::raw_name(), v8::internal::ParserTraits::ReportMessage(), v8::internal::Variable::set_maybe_assigned(), v8::internal::Scope::SetIllegalRedeclaration(), v8::internal::SLOPPY, v8::internal::STRICT, v8::internal::ParserBase< ParserTraits >::strict_mode(), v8::internal::Scope::strict_mode(), v8::internal::VAR, and v8::internal::ParserBase< ParserTraits >::zone().
Referenced by DesugarLetBindingsInForStatement(), ParseClassDeclaration(), ParseFunctionDeclaration(), ParseImportDeclaration(), ParseModuleDeclaration(), ParseNativeDeclaration(), and ParseVariableDeclarations().
|
private |
Definition at line 2938 of file parser.cc.
References v8::internal::List< T, AllocationPolicy >::Add(), ast_value_factory(), v8::internal::List< T, AllocationPolicy >::at(), v8::internal::Scanner::Location::beg_pos, CHECK_OK, DCHECK, Declare(), v8::internal::Scanner::Location::end_pos, v8::internal::EQ, v8::internal::ParserBase< ParserTraits >::factory(), v8::internal::flag, v8::internal::Scope::Initialize(), v8::internal::RelocInfo::kNoPosition, v8::internal::LET, v8::internal::Scanner::location(), LookupBreakTarget(), NewUnresolved(), v8::internal::Interface::NewValue(), NULL, v8::internal::AstNode::position(), v8::internal::Declaration::proxy(), v8::internal::ParserBase< ParserTraits >::scanner(), v8::internal::ParserBase< ParserTraits >::scope_, v8::internal::Scope::set_end_position(), and v8::internal::ParserBase< ParserTraits >::zone().
Referenced by ParseForStatement().
|
private |
Definition at line 861 of file parser.cc.
References v8::internal::ParserBase< ParserTraits >::allow_harmony_scoping(), v8::internal::ParserBase< ParserTraits >::allow_lazy(), v8::internal::ParserBase< ParserTraits >::allow_natives_syntax(), v8::internal::CompilationInfo::ast_node_id_gen(), ast_value_factory(), v8::internal::List< T, AllocationPolicy >::at(), v8::internal::Scanner::Location::beg_pos, CheckConflictingVarDeclarations(), v8::internal::ParserBase< ParserTraits >::CheckOctalLiteral(), v8::internal::CompilationInfo::context(), DCHECK, v8::internal::Scope::DeserializeScopeChain(), v8::internal::EVAL_SCOPE, v8::internal::ParserBase< ParserTraits >::extension_, v8::internal::ParserBase< ParserTraits >::factory(), v8::internal::ParserBase< ParserTraits >::function_state_, v8::internal::GLOBAL_SCOPE, info(), v8::internal::AstValueFactory::Internalize(), v8::internal::CompilationInfo::is_eval(), v8::internal::CompilationInfo::is_global(), isolate(), v8::internal::kNormalFunction, v8::internal::Scanner::location(), v8::internal::ParserBase< ParserTraits >::mode(), NewScope(), NULL, v8::internal::ONLY_SINGLE_FUNCTION_LITERAL, original_scope_, v8::internal::ParserBase< ParserTraits >::PARSE_EAGERLY, v8::internal::ParserBase< ParserTraits >::PARSE_LAZILY, v8::internal::CompilationInfo::parse_restriction(), ParseSourceElements(), v8::internal::ParserBase< ParserTraits >::ReportMessage(), v8::internal::ParserBase< ParserTraits >::scanner(), v8::internal::ParserBase< ParserTraits >::scope_, v8::internal::CompilationInfo::SetGlobalScope(), v8::internal::STRICT, v8::internal::ParserBase< ParserTraits >::strict_mode(), v8::internal::CompilationInfo::strict_mode(), target_stack_, and v8::internal::ParserBase< ParserTraits >::zone().
Referenced by ParseOnBackground(), and ParseProgram().
|
private |
Definition at line 3914 of file parser.cc.
References v8::internal::ParserBase< ParserTraits >::factory(), and v8::internal::ParserBase< ParserTraits >::position().
Referenced by ParseReturnStatement(), and ParseVariableDeclarations().
|
private |
Definition at line 3993 of file parser.cc.
References info_, v8::internal::LiteralBuffer::Internalize(), isolate(), v8::internal::LiteralBuffer::length(), scanner_, v8::internal::CompilationInfo::script(), v8::internal::Scanner::source_mapping_url(), and v8::internal::Scanner::source_url().
Referenced by ParseProgram().
|
inlineprivate |
Definition at line 680 of file parser.h.
References info_.
Referenced by DoParseProgram(), Internalize(), Parse(), ParseFunctionLiteral(), ParseLazy(), ParseOnBackground(), ParseProgram(), and Parser().
|
private |
Definition at line 2869 of file parser.cc.
References ast_value_factory(), v8::internal::ParserBase< ParserTraits >::factory(), v8::internal::ParserTraits::GetIterator(), v8::internal::ForEachStatement::Initialize(), v8::internal::RelocInfo::kNoPosition, NULL, v8::internal::ParserBase< ParserTraits >::scope_, and v8::internal::ParserBase< ParserTraits >::zone().
Referenced by ParseForStatement().
|
inlineprivate |
Definition at line 692 of file parser.h.
References v8::internal::ParserBase< ParserTraits >::scope_.
Referenced by ParseVariableDeclarations().
void v8::internal::Parser::Internalize | ( | ) |
Definition at line 4037 of file parser.cc.
References ast_value_factory(), v8::internal::Isolate::counters(), v8::internal::Isolate::CountUsage(), info(), v8::internal::AstValueFactory::Internalize(), isolate(), v8::Isolate::kUseCounterFeatureCount, NULL, v8::internal::ParserBase< ParserTraits >::stack_overflow(), v8::internal::Isolate::StackOverflow(), ThrowPendingError(), total_preparse_skipped_, and use_counts_.
Referenced by Parse().
|
inlineprivate |
Definition at line 679 of file parser.h.
References info_, and v8::internal::CompilationInfo::isolate().
Referenced by DoParseProgram(), v8::internal::CompileTimeValue::GetValue(), HandleSourceURLComments(), Internalize(), Parse(), ParseLazy(), ParseProgram(), and ThrowPendingError().
|
private |
Definition at line 3949 of file parser.cc.
References v8::internal::BreakableStatement::AsBreakableStatement(), v8::internal::BreakableStatement::break_target(), v8::internal::ContainsLabel(), v8::internal::BreakableStatement::is_target_for_anonymous(), v8::internal::BreakableStatement::labels(), NULL, RegisterTargetUse(), and target_stack_.
Referenced by DesugarLetBindingsInForStatement(), and ParseBreakStatement().
|
private |
Definition at line 3965 of file parser.cc.
References v8::internal::IterationStatement::AsIterationStatement(), v8::internal::ContainsLabel(), v8::internal::IterationStatement::continue_target(), DCHECK, v8::internal::BreakableStatement::is_target_for_anonymous(), v8::internal::BreakableStatement::labels(), NULL, RegisterTargetUse(), and target_stack_.
Referenced by ParseContinueStatement().
|
private |
Definition at line 269 of file parser.cc.
References ast_value_factory(), DCHECK, v8::internal::Scope::Initialize(), and v8::internal::ParserBase< ParserTraits >::zone().
Referenced by DoParseProgram(), v8::internal::ParserTraits::NewScope(), ParseForStatement(), ParseFunctionLiteral(), ParseLazy(), ParseModuleLiteral(), ParseModuleUrl(), ParseScopedBlock(), ParseSourceElements(), ParseTryStatement(), and ParseWithStatement().
|
private |
Definition at line 1705 of file parser.cc.
References DeclarationScope(), v8::internal::ParserBase< ParserTraits >::factory(), v8::internal::ParserBase< ParserTraits >::mode(), name, v8::internal::Scope::NewUnresolved(), and v8::internal::ParserBase< ParserTraits >::position().
Referenced by DesugarLetBindingsInForStatement(), ParseClassDeclaration(), ParseExportDeclaration(), ParseForStatement(), ParseFunctionDeclaration(), ParseImportDeclaration(), ParseModuleDeclaration(), ParseNativeDeclaration(), and ParseVariableDeclarations().
bool v8::internal::Parser::Parse | ( | ) |
Definition at line 4893 of file parser.cc.
References v8::internal::ParserBase< ParserTraits >::allow_natives_syntax(), ast_value_factory(), v8::internal::Isolate::counters(), DCHECK, v8::internal::ParserBase< ParserTraits >::extension_, info(), Internalize(), v8::internal::AstValueFactory::Internalize(), isolate(), NULL, ParseLazy(), ParseProgram(), pre_parse_timer_, SetCachedData(), and v8::internal::CompilationInfo::SetFunction().
Referenced by v8::internal::Compiler::CompileForLiveEdit(), v8::internal::CompileOptimizedPrologue(), v8::internal::CompileToplevel(), v8::internal::GetUnoptimizedCodeCommon(), v8::internal::compiler::Parse(), v8::internal::ScopeIterator::ScopeIterator(), and v8::internal::HOptimizedGraphBuilder::TryInline().
|
inlinestatic |
Definition at line 628 of file parser.h.
References v8::internal::ParserBase< ParserTraits >::allow_lazy(), v8::internal::CompilationInfo::function(), v8::internal::Heap::HashSeed(), v8::internal::Isolate::heap(), info(), v8::internal::CompilationInfo::isolate(), Parse(), v8::internal::ParserBase< Traits >::set_allow_lazy(), v8::internal::CompilationInfo::SetStrictMode(), v8::internal::Isolate::stack_guard(), and v8::internal::Isolate::unicode_cache().
Referenced by Parse().
|
private |
Definition at line 1995 of file parser.cc.
References v8::internal::ParserBase< ParserTraits >::allow_harmony_scoping(), CHECK_OK, v8::internal::ParserBase< ParserTraits >::Expect(), v8::internal::ParserBase< ParserTraits >::factory(), v8::internal::Statement::IsEmpty(), v8::internal::RelocInfo::kNoPosition, NULL, ParseScopedBlock(), ParseStatement(), v8::internal::STRICT, v8::internal::ParserBase< ParserTraits >::strict_mode(), target_stack_, and v8::internal::ParserBase< ParserTraits >::zone().
Referenced by ParseStatement(), and ParseTryStatement().
|
private |
Definition at line 1553 of file parser.cc.
References v8::internal::ParserBase< ParserTraits >::allow_harmony_scoping(), v8::internal::CONST, DCHECK, kModuleElement, v8::internal::LET, NULL, ParseClassDeclaration(), ParseFunctionDeclaration(), ParseStatement(), ParseVariableStatement(), v8::internal::STRICT, and v8::internal::ParserBase< ParserTraits >::strict_mode().
Referenced by ParseScopedBlock(), and ParseSourceElements().
|
private |
Definition at line 2515 of file parser.cc.
References v8::internal::BREAK, CHECK_OK, v8::internal::ContainsLabel(), v8::internal::ParserBase< ParserTraits >::Expect(), v8::internal::ParserBase< ParserTraits >::ExpectSemicolon(), v8::internal::ParserBase< ParserTraits >::factory(), v8::internal::ParserBase< ParserTraits >::kAllowEvalOrArguments, LookupBreakTarget(), NULL, v8::internal::ParserBase< ParserTraits >::ParseIdentifier(), v8::internal::ParserBase< ParserTraits >::peek_position(), v8::internal::ParserTraits::ReportMessage(), and v8::internal::ParserBase< ParserTraits >::scanner().
Referenced by ParseStatement().
Definition at line 2624 of file parser.cc.
References v8::internal::List< T, AllocationPolicy >::Add(), CASE, CHECK_OK, v8::internal::DEFAULT, v8::internal::ParserBase< ParserTraits >::Expect(), v8::internal::ParserBase< ParserTraits >::factory(), NULL, v8::internal::ParserBase< ParserTraits >::ParseExpression(), ParseStatement(), v8::internal::ParserBase< ParserTraits >::position(), v8::internal::ParserBase< ParserTraits >::ReportMessage(), and v8::internal::ParserBase< ParserTraits >::zone().
Referenced by ParseSwitchStatement().
|
private |
Definition at line 1954 of file parser.cc.
References v8::internal::List< T, AllocationPolicy >::Add(), CHECK_OK, Declare(), v8::internal::ParserBase< ParserTraits >::Expect(), v8::internal::ParserBase< ParserTraits >::factory(), v8::internal::RelocInfo::kNoPosition, v8::internal::LET, v8::internal::ParserBase< ParserTraits >::mode(), name, NewUnresolved(), v8::internal::Interface::NewValue(), NULL, v8::internal::ParserBase< ParserTraits >::ParseClassLiteral(), v8::internal::ParserBase< ParserTraits >::ParseIdentifierOrStrictReservedWord(), v8::internal::ParserBase< ParserTraits >::position(), v8::internal::ParserBase< ParserTraits >::scanner(), v8::internal::ParserBase< ParserTraits >::scope_, and v8::internal::ParserBase< ParserTraits >::zone().
Referenced by ParseBlockElement(), ParseExportDeclaration(), ParseModuleElement(), and ParseStatement().
Definition at line 2486 of file parser.cc.
References CHECK_OK, v8::internal::ParserBase< ParserTraits >::Expect(), v8::internal::ParserBase< ParserTraits >::ExpectSemicolon(), v8::internal::ParserBase< ParserTraits >::factory(), v8::internal::ParserBase< ParserTraits >::kAllowEvalOrArguments, LookupContinueTarget(), NULL, v8::internal::ParserBase< ParserTraits >::ParseIdentifier(), v8::internal::ParserBase< ParserTraits >::peek_position(), v8::internal::ParserTraits::ReportMessage(), and v8::internal::ParserBase< ParserTraits >::scanner().
Referenced by ParseStatement().
|
private |
Definition at line 3317 of file parser.cc.
References CHECK_OK, v8::internal::ParserBase< ParserTraits >::Expect(), v8::internal::ParserBase< ParserTraits >::ExpectSemicolon(), v8::internal::ParserBase< ParserTraits >::factory(), and v8::internal::ParserBase< ParserTraits >::peek_position().
Referenced by ParseStatement().
|
private |
Definition at line 2809 of file parser.cc.
References CHECK_OK, v8::internal::ParserBase< ParserTraits >::Consume(), v8::internal::ParserBase< ParserTraits >::Expect(), v8::internal::ParserBase< ParserTraits >::factory(), NULL, v8::internal::ParserBase< ParserTraits >::ParseExpression(), ParseStatement(), v8::internal::ParserBase< ParserTraits >::peek_position(), and target_stack_.
Referenced by ParseStatement().
|
private |
Definition at line 3767 of file parser.cc.
References v8::internal::List< T, AllocationPolicy >::Add(), ast_value_factory(), CHECK_OK, v8::internal::ParserBase< ParserTraits >::Expect(), v8::internal::ParserBase< ParserTraits >::factory(), v8::internal::ParserBase< ParserTraits >::function_state_, v8::internal::Runtime::FunctionForId(), v8::internal::ParserBase< ParserTraits >::is_generator(), v8::internal::RelocInfo::kNoPosition, v8::internal::Interface::NewConst(), NULL, v8::internal::ParserBase< ParserTraits >::PARSE_EAGERLY, ParseSourceElements(), v8::internal::ParserBase< ParserTraits >::scanner(), v8::internal::ParserBase< ParserTraits >::scope_, and v8::internal::ParserBase< ParserTraits >::zone().
Referenced by v8::internal::ParserTraits::ParseEagerFunctionBody(), and ParseFunctionLiteral().
Definition at line 1460 of file parser.cc.
References v8::internal::List< T, AllocationPolicy >::Add(), ast_value_factory(), CHECK_OK, COMMA, v8::internal::CONST, v8::internal::ParserBase< ParserTraits >::Consume(), DCHECK, v8::internal::ParserBase< ParserTraits >::Expect(), v8::internal::ParserBase< ParserTraits >::ExpectSemicolon(), v8::internal::ParserBase< ParserTraits >::factory(), v8::internal::IsImmutableVariableMode(), v8::internal::ParserBase< ParserTraits >::kDontAllowEvalOrArguments, kModuleElement, v8::internal::LET, v8::internal::Variable::mode(), name, v8::internal::Interface::NewUnknown(), NewUnresolved(), NULL, ParseClassDeclaration(), ParseFunctionDeclaration(), v8::internal::ParserBase< ParserTraits >::ParseIdentifier(), ParseModuleDeclaration(), ParseVariableStatement(), v8::internal::ParserBase< ParserTraits >::position(), v8::internal::PrintF(), v8::internal::ParserBase< ParserTraits >::ReportUnexpectedToken(), v8::internal::ParserBase< ParserTraits >::scanner(), v8::internal::ParserBase< ParserTraits >::scope_, v8::internal::Variable::set_maybe_assigned(), USE(), v8::internal::VAR, and v8::internal::ParserBase< ParserTraits >::zone().
Referenced by ParseModuleElement().
|
private |
Definition at line 2400 of file parser.cc.
References v8::internal::List< T, AllocationPolicy >::Add(), ast_value_factory(), CHECK_OK, v8::internal::ContainsLabel(), v8::internal::ParserBase< ParserTraits >::Expect(), v8::internal::ParserBase< ParserTraits >::ExpectSemicolon(), v8::internal::ParserBase< ParserTraits >::extension_, v8::internal::ParserBase< ParserTraits >::factory(), NULL, v8::internal::ParserBase< ParserTraits >::ParseExpression(), ParseNativeDeclaration(), ParseStatement(), v8::internal::ParserBase< ParserTraits >::peek_any_identifier(), v8::internal::ParserBase< ParserTraits >::peek_position(), v8::internal::ParserTraits::ReportMessage(), v8::internal::ParserBase< ParserTraits >::scanner(), v8::internal::ParserBase< ParserTraits >::scope_, TargetStackContainsLabel(), and v8::internal::ParserBase< ParserTraits >::zone().
Referenced by ParseStatement().
|
private |
Definition at line 3097 of file parser.cc.
References v8::internal::ParserBase< ParserTraits >::allow_harmony_scoping(), ast_value_factory(), v8::internal::BLOCK_SCOPE, CHECK_OK, v8::internal::ParserBase< ParserTraits >::CheckAndRewriteReferenceExpression(), CheckInOrOf(), v8::internal::CONST, DCHECK, DesugarLetBindingsInForStatement(), v8::internal::ParserBase< ParserTraits >::Expect(), v8::internal::ParserBase< ParserTraits >::factory(), v8::internal::Scope::FinalizeBlockScope(), InitializeForEachStatement(), kForStatement, kHasInitializers, kHasNoInitializers, v8::internal::RelocInfo::kNoPosition, v8::internal::LET, v8::internal::ParserBase< ParserTraits >::mode(), name, NewScope(), NewUnresolved(), v8::internal::Interface::NewValue(), NULL, v8::internal::ParserBase< ParserTraits >::ParseExpression(), ParseStatement(), ParseVariableDeclarations(), v8::internal::Scanner::peek_location(), v8::internal::ParserBase< ParserTraits >::peek_position(), v8::internal::ParserBase< ParserTraits >::scanner(), v8::internal::ParserBase< ParserTraits >::scope_, v8::internal::Scope::set_end_position(), v8::internal::Scope::set_start_position(), v8::internal::STRICT, v8::internal::ParserBase< ParserTraits >::strict_mode(), target_stack_, v8::internal::VAR, and v8::internal::ParserBase< ParserTraits >::zone().
Referenced by ParseStatement().
|
private |
Definition at line 1917 of file parser.cc.
References v8::internal::List< T, AllocationPolicy >::Add(), v8::internal::ParserBase< ParserTraits >::allow_harmony_scoping(), v8::internal::ParserBase< ParserTraits >::Check(), CHECK_OK, Declare(), v8::internal::ParserBase< ParserTraits >::Expect(), v8::internal::ParserBase< ParserTraits >::factory(), v8::internal::ParserBase< ParserTraits >::is_generator(), v8::internal::kGeneratorFunction, v8::internal::RelocInfo::kNoPosition, v8::internal::kNormalFunction, v8::internal::LET, v8::internal::ParserBase< ParserTraits >::mode(), v8::internal::MUL, name, NewUnresolved(), v8::internal::Interface::NewValue(), ParseFunctionLiteral(), v8::internal::ParserBase< ParserTraits >::ParseIdentifierOrStrictReservedWord(), v8::internal::ParserBase< ParserTraits >::position(), v8::internal::ParserBase< ParserTraits >::scanner(), v8::internal::ParserBase< ParserTraits >::scope_, v8::internal::STRICT, v8::internal::ParserBase< ParserTraits >::strict_mode(), v8::internal::VAR, and v8::internal::ParserBase< ParserTraits >::zone().
Referenced by ParseBlockElement(), ParseExportDeclaration(), ParseModuleElement(), and ParseStatement().
|
private |
Definition at line 3436 of file parser.cc.
References v8::internal::FuncNameInferrer::AddFunction(), v8::internal::ParserBase< ParserTraits >::allow_harmony_scoping(), v8::internal::ParserBase< ParserTraits >::ast_node_id_gen(), ast_value_factory(), CHECK_OK, CheckConflictingVarDeclarations(), v8::internal::ParserBase< ParserTraits >::CheckOctalLiteral(), v8::internal::ParserBase< ParserTraits >::CheckStrictFunctionNameAndParameters(), COMMA, v8::internal::CONST, v8::internal::CONST_LEGACY, DCHECK, v8::internal::Scope::DeclarationScope(), v8::internal::Scope::end_position(), v8::internal::ParserBase< ParserTraits >::Expect(), v8::internal::ParserBase< ParserTraits >::factory(), v8::internal::ParserBase< ParserTraits >::fni_, v8::internal::FUNCTION_SCOPE, v8::internal::ParserBase< ParserTraits >::function_state_, info(), v8::internal::Scanner::Location::invalid(), v8::internal::ParserBase< ParserTraits >::is_generator(), v8::internal::IsConciseMethod(), v8::internal::ParserTraits::IsEvalOrArguments(), v8::internal::IsGeneratorFunction(), v8::internal::Scanner::Location::IsValid(), v8::internal::kCreatedInitialized, v8::internal::Code::kMaxArguments, v8::internal::RelocInfo::kNoPosition, v8::internal::kNotAssigned, v8::internal::Scanner::location(), v8::internal::ParserBase< ParserTraits >::mode(), v8::internal::Interface::NewConst(), NewScope(), v8::internal::Variable::NORMAL, NULL, original_scope_, v8::internal::ParserBase< ParserTraits >::parenthesized_function_, v8::internal::ParserBase< ParserTraits >::PARSE_LAZILY, ParseEagerFunctionBody(), v8::internal::ParserBase< ParserTraits >::ParseIdentifierOrStrictReservedWord(), v8::internal::ParserBase< ParserTraits >::peek_position(), v8::internal::ParserBase< ParserTraits >::ReportMessage(), v8::internal::ParserBase< ParserTraits >::scanner(), v8::internal::ParserBase< ParserTraits >::scope_, v8::internal::Variable::set_maybe_assigned(), v8::internal::Scope::set_start_position(), SkipLazyFunctionBody(), v8::internal::SLOPPY, v8::internal::Scope::start_position(), v8::internal::STRICT, v8::internal::ParserBase< ParserTraits >::strict_mode(), v8::internal::Scope::strict_mode(), v8::internal::VAR, and v8::internal::ParserBase< ParserTraits >::zone().
Referenced by ParseFunctionDeclaration(), v8::internal::ParserTraits::ParseFunctionLiteral(), and ParseLazy().
|
private |
Definition at line 2463 of file parser.cc.
References CHECK_OK, v8::internal::ParserBase< ParserTraits >::Expect(), v8::internal::ParserBase< ParserTraits >::factory(), v8::internal::RelocInfo::kNoPosition, NULL, v8::internal::ParserBase< ParserTraits >::ParseExpression(), ParseStatement(), and v8::internal::ParserBase< ParserTraits >::peek_position().
Referenced by ParseStatement().
|
private |
Definition at line 1406 of file parser.cc.
References v8::internal::Interface::Add(), v8::internal::List< T, AllocationPolicy >::Add(), CHECK_OK, COMMA, v8::internal::ParserBase< ParserTraits >::Consume(), v8::internal::CStrVector(), Declare(), v8::internal::ParserBase< ParserTraits >::Expect(), v8::internal::ParserBase< ParserTraits >::ExpectContextualKeyword(), v8::internal::ParserBase< ParserTraits >::ExpectSemicolon(), v8::internal::ParserBase< ParserTraits >::factory(), v8::internal::Module::interface(), v8::internal::RelocInfo::kNoPosition, v8::internal::LET, name, v8::internal::Interface::NewUnknown(), NewUnresolved(), NULL, v8::internal::ParserBase< ParserTraits >::ParseIdentifierName(), ParseModuleSpecifier(), v8::internal::ParserBase< ParserTraits >::peek_position(), v8::internal::PrintF(), v8::internal::ParserTraits::ReportMessage(), v8::internal::ParserBase< ParserTraits >::scope_, and v8::internal::ParserBase< ParserTraits >::zone().
Referenced by ParseModuleElement().
|
private |
Definition at line 948 of file parser.cc.
References v8::internal::Isolate::counters(), v8::internal::String::Flatten(), v8::internal::SmartPointerBase< Deallocator, T >::get(), info(), isolate(), NULL, v8::internal::PrintF(), script(), and v8::internal::CompilationInfo::shared_info().
Referenced by Parse().
|
private |
Definition at line 985 of file parser.cc.
References v8::internal::ParserBase< ParserTraits >::ast_node_id_gen(), ast_value_factory(), DCHECK, v8::internal::Scope::DeserializeScopeChain(), v8::internal::ParserBase< ParserTraits >::fni_, v8::internal::ParserBase< ParserTraits >::function_state_, v8::internal::AstValueFactory::GetString(), v8::internal::GLOBAL_SCOPE, info(), v8::internal::Scanner::Initialize(), v8::internal::Scanner::Location::invalid(), v8::internal::RelocInfo::kNoPosition, name, NewScope(), NULL, original_scope_, v8::internal::ParserBase< ParserTraits >::PARSE_EAGERLY, v8::internal::ParserBase< ParserTraits >::ParseExpression(), ParseFunctionLiteral(), v8::internal::FuncNameInferrer::PushEnclosingName(), scanner_, v8::internal::ParserBase< ParserTraits >::scope_, v8::internal::CompilationInfo::SetGlobalScope(), v8::internal::Scope::SetStrictMode(), v8::internal::CompilationInfo::shared_info(), v8::internal::SLOPPY, v8::internal::STRICT, v8::internal::ParserBase< ParserTraits >::strict_mode(), v8::internal::Scope::strict_mode(), target_stack_, and v8::internal::ParserBase< ParserTraits >::zone().
|
private |
Definition at line 3826 of file parser.cc.
References v8::internal::ParserBase< ParserTraits >::allow_arrow_functions(), v8::internal::ParserBase< ParserTraits >::allow_classes(), v8::internal::ParserBase< ParserTraits >::allow_harmony_numeric_literals(), v8::internal::ParserBase< ParserTraits >::allow_harmony_object_literals(), v8::internal::ParserBase< ParserTraits >::allow_harmony_scoping(), v8::internal::ParserBase< ParserTraits >::allow_modules(), v8::internal::ParserBase< ParserTraits >::allow_natives_syntax(), DCHECK_EQ, v8::internal::ParserBase< ParserTraits >::is_generator(), NULL, pre_parse_timer_, v8::internal::PreParser::PreParseLazyFunction(), reusable_preparser_, v8::internal::ParserBase< ParserTraits >::scanner(), scanner_, v8::internal::ParserBase< Traits >::set_allow_arrow_functions(), v8::internal::ParserBase< Traits >::set_allow_classes(), v8::internal::ParserBase< Traits >::set_allow_harmony_numeric_literals(), v8::internal::ParserBase< Traits >::set_allow_harmony_object_literals(), v8::internal::ParserBase< Traits >::set_allow_harmony_scoping(), v8::internal::ParserBase< Traits >::set_allow_lazy(), v8::internal::ParserBase< Traits >::set_allow_modules(), v8::internal::ParserBase< Traits >::set_allow_natives_syntax(), v8::internal::ParserBase< ParserTraits >::stack_limit_, v8::internal::HistogramTimer::Start(), v8::internal::HistogramTimer::Stop(), and v8::internal::ParserBase< ParserTraits >::strict_mode().
Referenced by SkipLazyFunctionBody().
Definition at line 1230 of file parser.cc.
References CHECK_OK, v8::internal::CStrVector(), v8::internal::ParserBase< ParserTraits >::Expect(), v8::internal::ParserBase< ParserTraits >::ExpectContextualKeyword(), v8::internal::ParserBase< ParserTraits >::ExpectSemicolon(), ParseModuleLiteral(), ParseModulePath(), and ParseModuleUrl().
Referenced by ParseModuleDeclaration().
|
private |
Definition at line 1193 of file parser.cc.
References v8::internal::List< T, AllocationPolicy >::Add(), v8::internal::Module::body(), CHECK_OK, Declare(), v8::internal::ParserBase< ParserTraits >::factory(), v8::internal::Module::interface(), v8::internal::ParserBase< ParserTraits >::kDontAllowEvalOrArguments, v8::internal::MODULE, name, NewUnresolved(), NULL, v8::internal::ParserBase< ParserTraits >::ParseIdentifier(), ParseModule(), v8::internal::ParserBase< ParserTraits >::peek_position(), v8::internal::PrintF(), v8::internal::ParserBase< ParserTraits >::scope_, and v8::internal::ParserBase< ParserTraits >::zone().
Referenced by ParseExportDeclaration(), and ParseModuleElement().
|
private |
Definition at line 1139 of file parser.cc.
References v8::internal::ParserBase< ParserTraits >::allow_harmony_scoping(), ast_value_factory(), CHECK_OK, v8::internal::CONST, DCHECK, kModuleElement, v8::internal::LET, NULL, ParseClassDeclaration(), ParseExportDeclaration(), ParseFunctionDeclaration(), ParseImportDeclaration(), ParseModuleDeclaration(), ParseStatement(), ParseVariableStatement(), v8::internal::ParserBase< ParserTraits >::scanner(), v8::internal::STRICT, and v8::internal::ParserBase< ParserTraits >::strict_mode().
Referenced by ParseModuleLiteral(), and ParseSourceElements().
Definition at line 1257 of file parser.cc.
References CHECK_OK, DCHECK, v8::internal::Interface::Iterator::done(), v8::internal::ParserBase< ParserTraits >::Expect(), v8::internal::ParserBase< ParserTraits >::factory(), v8::internal::Statement::IsEmpty(), v8::internal::RelocInfo::kNoPosition, v8::internal::Scope::LookupLocal(), v8::internal::MODULE_SCOPE, NewScope(), NULL, ParseModuleElement(), v8::internal::ParserBase< ParserTraits >::peek_position(), v8::internal::PrintF(), v8::internal::ParserTraits::ReportMessage(), v8::internal::ParserBase< ParserTraits >::scanner(), v8::internal::ParserBase< ParserTraits >::scope_, v8::internal::Scope::set_end_position(), v8::internal::Scope::set_start_position(), v8::internal::Scope::SetStrictMode(), v8::internal::STRICT, target_stack_, and v8::internal::ParserBase< ParserTraits >::zone().
Referenced by ParseModule().
Definition at line 1310 of file parser.cc.
References v8::internal::Interface::Add(), v8::internal::ParserBase< ParserTraits >::Check(), CHECK_OK, v8::internal::ParserBase< ParserTraits >::factory(), v8::internal::Module::interface(), name, NULL, v8::internal::ParserBase< ParserTraits >::ParseIdentifierName(), ParseModuleVariable(), v8::internal::ParserBase< ParserTraits >::peek_position(), v8::internal::PrintF(), v8::internal::ParserTraits::ReportMessage(), and v8::internal::ParserBase< ParserTraits >::zone().
Referenced by ParseModule(), and ParseModuleSpecifier().
Definition at line 1393 of file parser.cc.
References ParseModulePath(), ParseModuleUrl(), and STRING.
Referenced by ParseImportDeclaration().
Definition at line 1364 of file parser.cc.
References CHECK_OK, DCHECK, v8::internal::ParserBase< ParserTraits >::Expect(), v8::internal::ParserBase< ParserTraits >::factory(), v8::internal::ParserTraits::GetSymbol(), v8::internal::Scope::interface(), v8::internal::RelocInfo::kNoPosition, v8::internal::MODULE_SCOPE, NewScope(), NULL, v8::internal::ParserBase< ParserTraits >::peek_position(), v8::internal::PrintF(), v8::internal::ParserBase< ParserTraits >::scanner(), v8::internal::ParserBase< ParserTraits >::scope_, STRING, USE(), and v8::internal::ParserBase< ParserTraits >::zone().
Referenced by ParseModule(), and ParseModuleSpecifier().
Definition at line 1345 of file parser.cc.
References CHECK_OK, v8::internal::ParserBase< ParserTraits >::factory(), v8::internal::ParserBase< ParserTraits >::kDontAllowEvalOrArguments, name, v8::internal::Interface::NewModule(), v8::internal::ParserBase< ParserTraits >::ParseIdentifier(), v8::internal::ParserBase< ParserTraits >::peek_position(), v8::internal::PrintF(), v8::internal::ParserBase< ParserTraits >::scanner(), v8::internal::ParserBase< ParserTraits >::scope_, and v8::internal::ParserBase< ParserTraits >::zone().
Referenced by ParseModulePath().
Definition at line 1878 of file parser.cc.
References CHECK_OK, COMMA, DeclarationScope(), Declare(), v8::internal::ParserBase< ParserTraits >::Expect(), v8::internal::ParserBase< ParserTraits >::extension_, v8::internal::ParserBase< ParserTraits >::factory(), v8::internal::Scope::ForceEagerCompilation(), v8::internal::ParserBase< ParserTraits >::kAllowEvalOrArguments, v8::internal::RelocInfo::kNoPosition, name, NewUnresolved(), v8::internal::Interface::NewValue(), v8::internal::ParserBase< ParserTraits >::ParseIdentifier(), v8::internal::ParserBase< ParserTraits >::peek_position(), v8::internal::ParserBase< ParserTraits >::scope_, and v8::internal::VAR.
Referenced by ParseExpressionOrLabelledStatement().
void v8::internal::Parser::ParseOnBackground | ( | ) |
Definition at line 4923 of file parser.cc.
References ast_value_factory(), v8::internal::CompilationInfo::cached_data(), compile_options(), DCHECK, DoParseProgram(), v8::internal::ParserBase< ParserTraits >::fni_, v8::internal::CompleteParserRecorder::GetScriptData(), info(), info_, v8::internal::Scanner::Initialize(), v8::ScriptCompiler::kProduceParserCache, v8::internal::ParserBase< ParserTraits >::log_, NULL, v8::internal::ParserBase< ParserTraits >::scanner(), scanner_, v8::internal::Scope::set_end_position(), v8::internal::CompilationInfo::SetFunction(), and v8::internal::ParserBase< ParserTraits >::zone().
|
private |
Definition at line 792 of file parser.cc.
References ast_value_factory(), v8::internal::CompilationInfo::cached_data(), cached_parse_data_, compile_options(), v8::internal::Isolate::counters(), DoParseProgram(), v8::internal::String::Flatten(), v8::internal::ParserBase< ParserTraits >::fni_, v8::internal::SmartPointerBase< Deallocator, T >::get(), v8::internal::CompleteParserRecorder::GetScriptData(), HandleSourceURLComments(), info(), info_, v8::internal::ParseData::Initialize(), v8::internal::Scanner::Initialize(), isolate(), v8::ScriptCompiler::kConsumeParserCache, v8::ScriptCompiler::kProduceParserCache, v8::internal::ParserBase< ParserTraits >::log_, name, NULL, v8::internal::PrintF(), scanner_, script(), v8::internal::Scope::set_end_position(), and v8::internal::ParserBase< ParserTraits >::zone().
Referenced by Parse().
Definition at line 2552 of file parser.cc.
References v8::internal::Scanner::Location::beg_pos, CHECK_OK, v8::internal::ParserBase< ParserTraits >::Expect(), v8::internal::ParserBase< ParserTraits >::ExpectSemicolon(), v8::internal::ParserBase< ParserTraits >::factory(), v8::internal::ParserBase< ParserTraits >::function_state_, GetLiteralUndefined(), v8::internal::Scope::is_eval_scope(), v8::internal::ParserBase< ParserTraits >::is_generator(), v8::internal::Scope::is_global_scope(), v8::internal::Scanner::location(), NULL, v8::internal::ParserBase< ParserTraits >::ParseExpression(), v8::internal::ParserBase< ParserTraits >::position(), v8::internal::ParserBase< ParserTraits >::ReportMessageAt(), v8::internal::ParserBase< ParserTraits >::scanner(), and v8::internal::ParserBase< ParserTraits >::scope_.
Referenced by ParseStatement().
|
private |
Definition at line 2022 of file parser.cc.
References v8::internal::BLOCK_SCOPE, CHECK_OK, v8::internal::ParserBase< ParserTraits >::Expect(), v8::internal::ParserBase< ParserTraits >::factory(), v8::internal::Scope::FinalizeBlockScope(), v8::internal::Statement::IsEmpty(), v8::internal::RelocInfo::kNoPosition, NewScope(), NULL, ParseBlockElement(), v8::internal::ParserBase< ParserTraits >::scanner(), v8::internal::ParserBase< ParserTraits >::scope_, v8::internal::Scope::set_end_position(), v8::internal::Scope::set_start_position(), target_stack_, and v8::internal::ParserBase< ParserTraits >::zone().
Referenced by ParseBlock().
|
private |
Definition at line 1050 of file parser.cc.
References v8::internal::List< T, AllocationPolicy >::Add(), ast_value_factory(), v8::internal::Scanner::Location::beg_pos, CHECK_OK, DCHECK, v8::internal::Scanner::Location::end_pos, v8::internal::EVAL_SCOPE, v8::internal::Statement::IsEmpty(), v8::Isolate::kUseAsm, v8::internal::ParserBase< ParserTraits >::mode_, NewScope(), NULL, v8::internal::ParserBase< ParserTraits >::PARSE_EAGERLY, ParseBlockElement(), ParseModuleElement(), v8::internal::Scanner::peek_location(), v8::internal::ParserBase< ParserTraits >::scanner(), v8::internal::ParserBase< ParserTraits >::scope_, v8::internal::Scope::set_end_position(), v8::internal::Scope::set_start_position(), v8::internal::SLOPPY, v8::internal::STRICT, v8::internal::ParserBase< ParserTraits >::strict_mode(), STRING, target_stack_, use_counts_, and v8::internal::ParserBase< ParserTraits >::zone().
Referenced by DoParseProgram(), and ParseEagerFunctionBody().
|
private |
Definition at line 1586 of file parser.cc.
References v8::internal::ParserBase< ParserTraits >::allow_harmony_scoping(), v8::internal::BREAK, CHECK_OK, v8::internal::CONST, DCHECK, v8::internal::ParserBase< ParserTraits >::factory(), v8::internal::RelocInfo::kNoPosition, kStatement, v8::internal::LET, NULL, ParseBlock(), ParseBreakStatement(), ParseClassDeclaration(), ParseContinueStatement(), ParseDebuggerStatement(), ParseDoWhileStatement(), ParseExpressionOrLabelledStatement(), ParseForStatement(), ParseFunctionDeclaration(), ParseIfStatement(), ParseReturnStatement(), ParseSwitchStatement(), ParseThrowStatement(), ParseTryStatement(), ParseVariableStatement(), ParseWhileStatement(), ParseWithStatement(), v8::internal::ParserBase< ParserTraits >::ReportMessageAt(), v8::internal::ParserBase< ParserTraits >::scanner(), v8::internal::STRICT, v8::internal::ParserBase< ParserTraits >::strict_mode(), target_stack_, v8::internal::VAR, and v8::internal::ParserBase< ParserTraits >::zone().
Referenced by ParseBlock(), ParseBlockElement(), ParseCaseClause(), ParseDoWhileStatement(), ParseExpressionOrLabelledStatement(), ParseForStatement(), ParseIfStatement(), ParseModuleElement(), ParseWhileStatement(), and ParseWithStatement().
|
private |
Definition at line 2657 of file parser.cc.
References v8::internal::List< T, AllocationPolicy >::Add(), CHECK_OK, v8::internal::ParserBase< ParserTraits >::Expect(), v8::internal::ParserBase< ParserTraits >::factory(), ParseCaseClause(), v8::internal::ParserBase< ParserTraits >::ParseExpression(), v8::internal::ParserBase< ParserTraits >::peek_position(), target_stack_, and v8::internal::ParserBase< ParserTraits >::zone().
Referenced by ParseStatement().
Definition at line 2685 of file parser.cc.
References CHECK_OK, v8::internal::ParserBase< ParserTraits >::Expect(), v8::internal::ParserBase< ParserTraits >::ExpectSemicolon(), v8::internal::ParserBase< ParserTraits >::factory(), NULL, v8::internal::ParserBase< ParserTraits >::ParseExpression(), v8::internal::ParserBase< ParserTraits >::position(), v8::internal::ParserBase< ParserTraits >::ReportMessage(), and v8::internal::ParserBase< ParserTraits >::scanner().
Referenced by ParseStatement().
|
private |
Definition at line 2704 of file parser.cc.
References v8::internal::ParserBase< ParserTraits >::allow_harmony_scoping(), v8::internal::CATCH_SCOPE, CHECK_OK, v8::internal::ParserBase< ParserTraits >::Consume(), DCHECK, v8::internal::Scope::DeclareLocal(), v8::internal::ParserBase< ParserTraits >::Expect(), v8::internal::ParserBase< ParserTraits >::factory(), v8::internal::ParserBase< ParserTraits >::function_state_, v8::internal::kCreatedInitialized, v8::internal::ParserBase< ParserTraits >::kDontAllowEvalOrArguments, v8::internal::RelocInfo::kNoPosition, v8::internal::LET, v8::internal::ParserBase< ParserTraits >::mode(), name, NewScope(), NULL, ParseBlock(), v8::internal::ParserBase< ParserTraits >::ParseIdentifier(), v8::internal::ParserBase< ParserTraits >::position(), v8::internal::ParserBase< ParserTraits >::ReportMessage(), v8::internal::ParserBase< ParserTraits >::scanner(), v8::internal::ParserBase< ParserTraits >::scope_, v8::internal::Scope::set_end_position(), v8::internal::TryStatement::set_escaping_targets(), v8::internal::Scope::set_start_position(), v8::internal::STRICT, v8::internal::ParserBase< ParserTraits >::strict_mode(), target_stack_, v8::internal::VAR, and v8::internal::ParserBase< ParserTraits >::zone().
Referenced by ParseStatement().
|
private |
Definition at line 3859 of file parser.cc.
References v8::internal::List< T, AllocationPolicy >::at(), CHECK_OK, v8::internal::ParserBase< ParserTraits >::Expect(), v8::internal::ParserBase< ParserTraits >::extension_, v8::internal::ParserBase< ParserTraits >::factory(), v8::internal::Runtime::FunctionForName(), v8::internal::ParserBase< ParserTraits >::kAllowEvalOrArguments, name, NULL, v8::internal::ParserBase< ParserTraits >::ParseArguments(), v8::internal::ParserBase< ParserTraits >::ParseIdentifier(), v8::internal::ParserBase< ParserTraits >::peek_position(), v8::internal::ParserTraits::ReportMessage(), v8::internal::ParserBase< ParserTraits >::ReportMessage(), v8::internal::Runtime::RUNTIME, and v8::internal::ParserBase< ParserTraits >::scope_.
Referenced by v8::internal::ParserTraits::ParseV8Intrinsic().
|
private |
Definition at line 2076 of file parser.cc.
References v8::internal::List< T, AllocationPolicy >::Add(), v8::internal::ParserBase< ParserTraits >::allow_harmony_scoping(), ast_value_factory(), CHECK_OK, COMMA, v8::internal::CONST, v8::internal::CONST_LEGACY, v8::internal::ParserBase< ParserTraits >::Consume(), DCHECK, DeclarationScope(), Declare(), v8::internal::FuncNameInferrer::Enter(), v8::internal::ParserBase< ParserTraits >::Expect(), v8::internal::ParserBase< ParserTraits >::factory(), v8::internal::ParserBase< ParserTraits >::fni_, v8::internal::Runtime::FunctionForId(), GetLiteralUndefined(), v8::internal::FuncNameInferrer::Infer(), inside_with(), v8::internal::Scope::is_global_scope(), v8::internal::IsLexicalVariableMode(), v8::internal::ParserBase< ParserTraits >::kDontAllowEvalOrArguments, kForStatement, kHasInitializers, kMaxNumFunctionLocals, v8::internal::RelocInfo::kNoPosition, kStatement, v8::internal::FuncNameInferrer::Leave(), v8::internal::LET, v8::internal::ParserBase< ParserTraits >::mode(), name, v8::internal::Scope::NewUnresolved(), NewUnresolved(), v8::internal::Interface::NewValue(), NULL, v8::internal::ParserBase< ParserTraits >::ParseAssignmentExpression(), v8::internal::ParserBase< ParserTraits >::ParseIdentifier(), v8::internal::ParserBase< ParserTraits >::peek_position(), v8::internal::ParserBase< ParserTraits >::position(), v8::internal::FuncNameInferrer::PushVariableName(), v8::internal::FuncNameInferrer::RemoveLastFunction(), v8::internal::ParserBase< ParserTraits >::ReportMessage(), v8::internal::ParserBase< ParserTraits >::scope_, v8::internal::SLOPPY, v8::internal::STRICT, v8::internal::ParserBase< ParserTraits >::strict_mode(), v8::internal::Scope::strict_mode(), UNREACHABLE, v8::internal::VAR, and v8::internal::ParserBase< ParserTraits >::zone().
Referenced by ParseForStatement(), and ParseVariableStatement().
|
private |
Definition at line 2057 of file parser.cc.
References CHECK_OK, v8::internal::ParserBase< ParserTraits >::ExpectSemicolon(), NULL, and ParseVariableDeclarations().
Referenced by ParseBlockElement(), ParseExportDeclaration(), ParseModuleElement(), and ParseStatement().
|
private |
Definition at line 2837 of file parser.cc.
References CHECK_OK, v8::internal::ParserBase< ParserTraits >::Expect(), v8::internal::ParserBase< ParserTraits >::factory(), NULL, v8::internal::ParserBase< ParserTraits >::ParseExpression(), ParseStatement(), v8::internal::ParserBase< ParserTraits >::peek_position(), and target_stack_.
Referenced by ParseStatement().
|
private |
Definition at line 2594 of file parser.cc.
References CHECK_OK, v8::internal::ParserBase< ParserTraits >::Expect(), v8::internal::ParserBase< ParserTraits >::factory(), NewScope(), NULL, v8::internal::ParserBase< ParserTraits >::ParseExpression(), ParseStatement(), v8::internal::ParserBase< ParserTraits >::position(), v8::internal::ParserBase< ParserTraits >::ReportMessage(), v8::internal::ParserBase< ParserTraits >::scanner(), v8::internal::ParserBase< ParserTraits >::scope_, v8::internal::Scope::set_end_position(), v8::internal::Scope::set_start_position(), v8::internal::STRICT, v8::internal::ParserBase< ParserTraits >::strict_mode(), and v8::internal::WITH_SCOPE.
Referenced by ParseStatement().
|
private |
Definition at line 3982 of file parser.cc.
References NULL, target_stack_, and v8::internal::ParserBase< ParserTraits >::zone().
Referenced by LookupBreakTarget(), and LookupContinueTarget().
Definition at line 681 of file parser.h.
References info_, and v8::internal::CompilationInfo::script().
Referenced by ParseLazy(), ParseProgram(), Parser(), and ThrowPendingError().
|
private |
Definition at line 257 of file parser.cc.
References v8::internal::CompilationInfo::cached_data(), cached_parse_data_, compile_options(), DCHECK, info_, v8::ScriptCompiler::kConsumeParserCache, v8::ScriptCompiler::kNoCompileOptions, and NULL.
Referenced by Parse().
|
private |
Definition at line 3701 of file parser.cc.
References v8::internal::SingletonLogger::argument_opt(), cached_parse_data_, CHECK, compile_options(), DCHECK, v8::internal::SingletonLogger::end(), v8::internal::Scanner::Location::end_pos, v8::internal::ParserBase< ParserTraits >::Expect(), v8::internal::ParseData::GetFunctionEntry(), v8::internal::SingletonLogger::has_error(), v8::internal::SingletonLogger::is_reference_error(), v8::ScriptCompiler::kConsumeParserCache, v8::internal::PreParser::kPreParseStackOverflow, v8::ScriptCompiler::kProduceParserCache, v8::internal::SingletonLogger::literals(), v8::internal::Scanner::location(), v8::internal::ParserBase< ParserTraits >::log_, v8::internal::ParserRecorder::LogFunction(), v8::internal::SingletonLogger::message(), ParseLazyFunctionBodyWithPreParser(), v8::internal::ParserBase< ParserTraits >::position(), v8::internal::SingletonLogger::properties(), v8::internal::ParserTraits::ReportMessageAt(), v8::internal::ParserBase< ParserTraits >::scanner(), v8::internal::ParserBase< ParserTraits >::scope_, v8::internal::Scanner::SeekForward(), v8::internal::ParserBase< ParserTraits >::set_stack_overflow(), v8::internal::SingletonLogger::start(), v8::internal::SingletonLogger::strict_mode(), and total_preparse_skipped_.
Referenced by ParseFunctionLiteral(), and v8::internal::ParserTraits::SkipLazyFunctionBody().
|
private |
Definition at line 3939 of file parser.cc.
References v8::internal::BreakableStatement::AsBreakableStatement(), v8::internal::ContainsLabel(), v8::internal::BreakableStatement::labels(), NULL, and target_stack_.
Referenced by ParseExpressionOrLabelledStatement().
|
private |
Definition at line 4006 of file parser.cc.
References ast_value_factory(), v8::internal::Scanner::Location::beg_pos, v8::internal::CStrVector(), DCHECK, v8::internal::Isolate::debug(), v8::internal::Scanner::Location::end_pos, v8::internal::Isolate::factory(), v8::internal::ParserBase< ParserTraits >::factory(), has_pending_error_, isolate(), NULL, v8::internal::Debug::OnCompileError(), pending_error_arg_, pending_error_char_arg_, pending_error_is_reference_error_, pending_error_location_, pending_error_message_, script(), v8::internal::AstString::string(), and v8::internal::Isolate::Throw().
Referenced by Internalize().
|
friend |
|
private |
Definition at line 836 of file parser.h.
Referenced by ParseProgram(), SetCachedData(), SkipLazyFunctionBody(), and ~Parser().
|
private |
Definition at line 841 of file parser.h.
Referenced by v8::internal::ParserTraits::ReportMessageAt(), and ThrowPendingError().
|
private |
Definition at line 838 of file parser.h.
Referenced by ast_value_factory(), compile_options(), HandleSourceURLComments(), info(), isolate(), ParseOnBackground(), ParseProgram(), script(), and SetCachedData().
|
staticprivate |
Definition at line 658 of file parser.h.
Referenced by ParseVariableDeclarations().
|
private |
Definition at line 834 of file parser.h.
Referenced by DoParseProgram(), ParseFunctionLiteral(), and ParseLazy().
|
private |
Definition at line 844 of file parser.h.
Referenced by v8::internal::ParserTraits::ReportMessageAt(), and ThrowPendingError().
|
private |
Definition at line 845 of file parser.h.
Referenced by v8::internal::ParserTraits::ReportMessageAt(), and ThrowPendingError().
|
private |
Definition at line 846 of file parser.h.
Referenced by v8::internal::ParserTraits::ReportMessageAt(), and ThrowPendingError().
|
private |
Definition at line 842 of file parser.h.
Referenced by v8::internal::ParserTraits::ReportMessageAt(), and ThrowPendingError().
|
private |
Definition at line 843 of file parser.h.
Referenced by v8::internal::ParserTraits::ReportMessageAt(), and ThrowPendingError().
|
private |
Definition at line 852 of file parser.h.
Referenced by Parse(), and ParseLazyFunctionBodyWithPreParser().
|
private |
Definition at line 833 of file parser.h.
Referenced by ParseLazyFunctionBodyWithPreParser(), and ~Parser().
|
private |
Definition at line 832 of file parser.h.
Referenced by HandleSourceURLComments(), ParseLazy(), ParseLazyFunctionBodyWithPreParser(), ParseOnBackground(), and ParseProgram().
|
private |
Definition at line 835 of file parser.h.
Referenced by DoParseProgram(), LookupBreakTarget(), LookupContinueTarget(), ParseBlock(), ParseDoWhileStatement(), ParseForStatement(), ParseLazy(), ParseModuleLiteral(), ParseScopedBlock(), ParseSourceElements(), ParseStatement(), ParseSwitchStatement(), ParseTryStatement(), ParseWhileStatement(), RegisterTargetUse(), and TargetStackContainsLabel().
|
private |
Definition at line 851 of file parser.h.
Referenced by Internalize(), and SkipLazyFunctionBody().
|
private |
Definition at line 850 of file parser.h.
Referenced by Internalize(), Parser(), and ParseSourceElements().