| 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_PREPARSER_H | 5 #ifndef V8_PARSING_PREPARSER_H |
| 6 #define V8_PARSING_PREPARSER_H | 6 #define V8_PARSING_PREPARSER_H |
| 7 | 7 |
| 8 #include "src/ast/scopes.h" | 8 #include "src/ast/scopes.h" |
| 9 #include "src/parsing/parser-base.h" | 9 #include "src/parsing/parser-base.h" |
| 10 | 10 |
| (...skipping 734 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 745 } | 745 } |
| 746 | 746 |
| 747 private: | 747 private: |
| 748 Zone* zone_; | 748 Zone* zone_; |
| 749 }; | 749 }; |
| 750 | 750 |
| 751 | 751 |
| 752 struct PreParserFormalParameters : FormalParametersBase { | 752 struct PreParserFormalParameters : FormalParametersBase { |
| 753 explicit PreParserFormalParameters(DeclarationScope* scope) | 753 explicit PreParserFormalParameters(DeclarationScope* scope) |
| 754 : FormalParametersBase(scope) {} | 754 : FormalParametersBase(scope) {} |
| 755 PreParserIdentifier at(int i) { return PreParserIdentifier(); } // Dummy | 755 |
| 756 void* params = nullptr; // Dummy |
| 756 }; | 757 }; |
| 757 | 758 |
| 758 | 759 |
| 759 class PreParser; | 760 class PreParser; |
| 760 | 761 |
| 761 class PreParserTarget { | 762 class PreParserTarget { |
| 762 public: | 763 public: |
| 763 PreParserTarget(ParserBase<PreParser>* preparser, | 764 PreParserTarget(ParserBase<PreParser>* preparser, |
| 764 PreParserStatement statement) {} | 765 PreParserStatement statement) {} |
| 765 }; | 766 }; |
| (...skipping 667 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1433 bool is_async, bool* ok) {} | 1434 bool is_async, bool* ok) {} |
| 1434 | 1435 |
| 1435 V8_INLINE void AddFormalParameter(PreParserFormalParameters* parameters, | 1436 V8_INLINE void AddFormalParameter(PreParserFormalParameters* parameters, |
| 1436 PreParserExpression pattern, | 1437 PreParserExpression pattern, |
| 1437 PreParserExpression initializer, | 1438 PreParserExpression initializer, |
| 1438 int initializer_end_position, | 1439 int initializer_end_position, |
| 1439 bool is_rest) { | 1440 bool is_rest) { |
| 1440 parameters->UpdateArityAndFunctionLength(!initializer.IsEmpty(), is_rest); | 1441 parameters->UpdateArityAndFunctionLength(!initializer.IsEmpty(), is_rest); |
| 1441 } | 1442 } |
| 1442 | 1443 |
| 1443 V8_INLINE void DeclareFormalParameter(DeclarationScope* scope, | 1444 V8_INLINE void DeclareFormalParameters(DeclarationScope* scope, |
| 1444 PreParserIdentifier parameter) { | 1445 void* parameters) { |
| 1445 if (!classifier()->is_simple_parameter_list()) { | 1446 if (!classifier()->is_simple_parameter_list()) { |
| 1446 scope->SetHasNonSimpleParameters(); | 1447 scope->SetHasNonSimpleParameters(); |
| 1447 } | 1448 } |
| 1448 } | 1449 } |
| 1449 | 1450 |
| 1450 V8_INLINE void DeclareArrowFunctionFormalParameters( | 1451 V8_INLINE void DeclareArrowFunctionFormalParameters( |
| 1451 PreParserFormalParameters* parameters, PreParserExpression params, | 1452 PreParserFormalParameters* parameters, PreParserExpression params, |
| 1452 const Scanner::Location& params_loc, Scanner::Location* duplicate_loc, | 1453 const Scanner::Location& params_loc, Scanner::Location* duplicate_loc, |
| 1453 bool* ok) { | 1454 bool* ok) { |
| 1454 // TODO(wingo): Detect duplicated identifiers in paramlists. Detect | 1455 // TODO(wingo): Detect duplicated identifiers in paramlists. Detect |
| (...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1545 function_state_->NextMaterializedLiteralIndex(); | 1546 function_state_->NextMaterializedLiteralIndex(); |
| 1546 function_state_->NextMaterializedLiteralIndex(); | 1547 function_state_->NextMaterializedLiteralIndex(); |
| 1547 } | 1548 } |
| 1548 return EmptyExpression(); | 1549 return EmptyExpression(); |
| 1549 } | 1550 } |
| 1550 | 1551 |
| 1551 } // namespace internal | 1552 } // namespace internal |
| 1552 } // namespace v8 | 1553 } // namespace v8 |
| 1553 | 1554 |
| 1554 #endif // V8_PARSING_PREPARSER_H | 1555 #endif // V8_PARSING_PREPARSER_H |
| OLD | NEW |