| OLD | NEW |
| 1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef V8_PARSING_PARSER_H_ | 5 #ifndef V8_PARSING_PARSER_H_ |
| 6 #define V8_PARSING_PARSER_H_ | 6 #define V8_PARSING_PARSER_H_ |
| 7 | 7 |
| 8 #include "src/allocation.h" | 8 #include "src/allocation.h" |
| 9 #include "src/ast/ast.h" | 9 #include "src/ast/ast.h" |
| 10 #include "src/ast/scopes.h" | 10 #include "src/ast/scopes.h" |
| (...skipping 497 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 508 Expression* ThisExpression(Scope* scope, AstNodeFactory* factory, | 508 Expression* ThisExpression(Scope* scope, AstNodeFactory* factory, |
| 509 int pos = RelocInfo::kNoPosition); | 509 int pos = RelocInfo::kNoPosition); |
| 510 Expression* SuperPropertyReference(Scope* scope, AstNodeFactory* factory, | 510 Expression* SuperPropertyReference(Scope* scope, AstNodeFactory* factory, |
| 511 int pos); | 511 int pos); |
| 512 Expression* SuperCallReference(Scope* scope, AstNodeFactory* factory, | 512 Expression* SuperCallReference(Scope* scope, AstNodeFactory* factory, |
| 513 int pos); | 513 int pos); |
| 514 Expression* NewTargetExpression(Scope* scope, AstNodeFactory* factory, | 514 Expression* NewTargetExpression(Scope* scope, AstNodeFactory* factory, |
| 515 int pos); | 515 int pos); |
| 516 Expression* FunctionSentExpression(Scope* scope, AstNodeFactory* factory, | 516 Expression* FunctionSentExpression(Scope* scope, AstNodeFactory* factory, |
| 517 int pos); | 517 int pos); |
| 518 Expression* DefaultConstructor(bool call_super, Scope* scope, int pos, | |
| 519 int end_pos, LanguageMode language_mode); | |
| 520 Literal* ExpressionFromLiteral(Token::Value token, int pos, Scanner* scanner, | 518 Literal* ExpressionFromLiteral(Token::Value token, int pos, Scanner* scanner, |
| 521 AstNodeFactory* factory); | 519 AstNodeFactory* factory); |
| 522 Expression* ExpressionFromIdentifier(const AstRawString* name, | 520 Expression* ExpressionFromIdentifier(const AstRawString* name, |
| 523 int start_position, int end_position, | 521 int start_position, int end_position, |
| 524 Scope* scope, AstNodeFactory* factory); | 522 Scope* scope, AstNodeFactory* factory); |
| 525 Expression* ExpressionFromString(int pos, Scanner* scanner, | 523 Expression* ExpressionFromString(int pos, Scanner* scanner, |
| 526 AstNodeFactory* factory); | 524 AstNodeFactory* factory); |
| 527 Expression* GetIterator(Expression* iterable, AstNodeFactory* factory, | 525 Expression* GetIterator(Expression* iterable, AstNodeFactory* factory, |
| 528 int pos); | 526 int pos); |
| 529 ZoneList<v8::internal::Expression*>* NewExpressionList(int size, Zone* zone) { | 527 ZoneList<v8::internal::Expression*>* NewExpressionList(int size, Zone* zone) { |
| (...skipping 431 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 961 DeclarationDescriptor::Kind declaration_kind, bool resolve, | 959 DeclarationDescriptor::Kind declaration_kind, bool resolve, |
| 962 bool* ok, Scope* declaration_scope = nullptr); | 960 bool* ok, Scope* declaration_scope = nullptr); |
| 963 | 961 |
| 964 bool TargetStackContainsLabel(const AstRawString* label); | 962 bool TargetStackContainsLabel(const AstRawString* label); |
| 965 BreakableStatement* LookupBreakTarget(const AstRawString* label, bool* ok); | 963 BreakableStatement* LookupBreakTarget(const AstRawString* label, bool* ok); |
| 966 IterationStatement* LookupContinueTarget(const AstRawString* label, bool* ok); | 964 IterationStatement* LookupContinueTarget(const AstRawString* label, bool* ok); |
| 967 | 965 |
| 968 Statement* BuildAssertIsCoercible(Variable* var); | 966 Statement* BuildAssertIsCoercible(Variable* var); |
| 969 | 967 |
| 970 // Factory methods. | 968 // Factory methods. |
| 971 FunctionLiteral* DefaultConstructor(bool call_super, Scope* scope, int pos, | 969 FunctionLiteral* DefaultConstructor(const AstRawString* name, bool call_super, |
| 972 int end_pos, LanguageMode language_mode); | 970 Scope* scope, int pos, int end_pos, |
| 971 LanguageMode language_mode); |
| 973 | 972 |
| 974 // Skip over a lazy function, either using cached data if we have it, or | 973 // Skip over a lazy function, either using cached data if we have it, or |
| 975 // by parsing the function with PreParser. Consumes the ending }. | 974 // by parsing the function with PreParser. Consumes the ending }. |
| 976 // | 975 // |
| 977 // If bookmark is set, the (pre-)parser may decide to abort skipping | 976 // If bookmark is set, the (pre-)parser may decide to abort skipping |
| 978 // in order to force the function to be eagerly parsed, after all. | 977 // in order to force the function to be eagerly parsed, after all. |
| 979 // In this case, it'll reset the scanner using the bookmark. | 978 // In this case, it'll reset the scanner using the bookmark. |
| 980 void SkipLazyFunctionBody(int* materialized_literal_count, | 979 void SkipLazyFunctionBody(int* materialized_literal_count, |
| 981 int* expected_property_count, bool* ok, | 980 int* expected_property_count, bool* ok, |
| 982 Scanner::BookmarkScope* bookmark = nullptr); | 981 Scanner::BookmarkScope* bookmark = nullptr); |
| (...skipping 230 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1213 | 1212 |
| 1214 DoExpression* ParserTraits::ParseDoExpression(bool* ok) { | 1213 DoExpression* ParserTraits::ParseDoExpression(bool* ok) { |
| 1215 return parser_->ParseDoExpression(ok); | 1214 return parser_->ParseDoExpression(ok); |
| 1216 } | 1215 } |
| 1217 | 1216 |
| 1218 | 1217 |
| 1219 } // namespace internal | 1218 } // namespace internal |
| 1220 } // namespace v8 | 1219 } // namespace v8 |
| 1221 | 1220 |
| 1222 #endif // V8_PARSING_PARSER_H_ | 1221 #endif // V8_PARSING_PARSER_H_ |
| OLD | NEW |