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/ast/ast.h" | 8 #include "src/ast/ast.h" |
9 #include "src/ast/scopes.h" | 9 #include "src/ast/scopes.h" |
10 #include "src/base/compiler-specific.h" | 10 #include "src/base/compiler-specific.h" |
(...skipping 463 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
474 // [else] | 474 // [else] |
475 // !%_IsJSReceiver(result = iterator.next()) && | 475 // !%_IsJSReceiver(result = iterator.next()) && |
476 // %ThrowIteratorResultNotAnObject(result) | 476 // %ThrowIteratorResultNotAnObject(result) |
477 // [endif] | 477 // [endif] |
478 Expression* BuildIteratorNextResult(Expression* iterator, Variable* result, | 478 Expression* BuildIteratorNextResult(Expression* iterator, Variable* result, |
479 IteratorType type, int pos); | 479 IteratorType type, int pos); |
480 | 480 |
481 // Initialize the components of a for-in / for-of statement. | 481 // Initialize the components of a for-in / for-of statement. |
482 Statement* InitializeForEachStatement(ForEachStatement* stmt, | 482 Statement* InitializeForEachStatement(ForEachStatement* stmt, |
483 Expression* each, Expression* subject, | 483 Expression* each, Expression* subject, |
484 Statement* body, int each_keyword_pos); | 484 Statement* body); |
485 Statement* InitializeForOfStatement(ForOfStatement* stmt, Expression* each, | 485 Statement* InitializeForOfStatement(ForOfStatement* stmt, Expression* each, |
486 Expression* iterable, Statement* body, | 486 Expression* iterable, Statement* body, |
487 bool finalize, IteratorType type, | 487 bool finalize, IteratorType type, |
488 int next_result_pos = kNoSourcePosition); | 488 int next_result_pos = kNoSourcePosition); |
489 | 489 |
490 Block* RewriteForVarInLegacy(const ForInfo& for_info); | 490 Block* RewriteForVarInLegacy(const ForInfo& for_info); |
491 void DesugarBindingInForEachStatement(ForInfo* for_info, Block** body_block, | 491 void DesugarBindingInForEachStatement(ForInfo* for_info, Block** body_block, |
492 Expression** each_variable, bool* ok); | 492 Expression** each_variable, bool* ok); |
493 Block* CreateForEachStatementTDZ(Block* init_block, const ForInfo& for_info, | 493 Block* CreateForEachStatementTDZ(Block* init_block, const ForInfo& for_info, |
494 bool* ok); | 494 bool* ok); |
(...skipping 727 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1222 | 1222 |
1223 private: | 1223 private: |
1224 ParserTarget** variable_; | 1224 ParserTarget** variable_; |
1225 ParserTarget* previous_; | 1225 ParserTarget* previous_; |
1226 }; | 1226 }; |
1227 | 1227 |
1228 } // namespace internal | 1228 } // namespace internal |
1229 } // namespace v8 | 1229 } // namespace v8 |
1230 | 1230 |
1231 #endif // V8_PARSING_PARSER_H_ | 1231 #endif // V8_PARSING_PARSER_H_ |
OLD | NEW |