Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(212)

Side by Side Diff: src/parsing/parser-base.h

Issue 2687403003: [cleanup] Remove now-unused fields of FunctionState (Closed)
Patch Set: Created 3 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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_BASE_H 5 #ifndef V8_PARSING_PARSER_BASE_H
6 #define V8_PARSING_PARSER_BASE_H 6 #define V8_PARSING_PARSER_BASE_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/bailout-reason.h" 10 #include "src/bailout-reason.h"
(...skipping 479 matching lines...) Expand 10 before | Expand all | Expand 10 after
490 } 490 }
491 491
492 // Used to assign an index to each literal that needs materialization in 492 // Used to assign an index to each literal that needs materialization in
493 // the function. Includes regexp literals, and boilerplate for object and 493 // the function. Includes regexp literals, and boilerplate for object and
494 // array literals. 494 // array literals.
495 int next_materialized_literal_index_; 495 int next_materialized_literal_index_;
496 496
497 // Properties count estimation. 497 // Properties count estimation.
498 int expected_property_count_; 498 int expected_property_count_;
499 499
500 // For generators, this variable may hold the generator object. It variable
501 // is used by yield expressions and return statements. It is not necessary
502 // for generator functions to have this variable set.
503 Variable* generator_object_variable_;
504 // For async functions, this variable holds a temporary for the Promise
505 // being created as output of the async function.
506 Variable* promise_variable_;
507
508 FunctionState** function_state_stack_; 500 FunctionState** function_state_stack_;
509 FunctionState* outer_function_state_; 501 FunctionState* outer_function_state_;
510 502
511 ZoneList<DestructuringAssignment> destructuring_assignments_to_rewrite_; 503 ZoneList<DestructuringAssignment> destructuring_assignments_to_rewrite_;
512 TailCallExpressionList tail_call_expressions_; 504 TailCallExpressionList tail_call_expressions_;
513 ReturnExprContext return_expr_context_; 505 ReturnExprContext return_expr_context_;
514 ZoneList<ExpressionT> non_patterns_to_rewrite_; 506 ZoneList<ExpressionT> non_patterns_to_rewrite_;
515 507
516 ZoneList<typename ExpressionClassifier::Error> reported_errors_; 508 ZoneList<typename ExpressionClassifier::Error> reported_errors_;
517 509
(...skipping 989 matching lines...) Expand 10 before | Expand all | Expand 10 after
1507 friend class DiscardableZoneScope; 1499 friend class DiscardableZoneScope;
1508 }; 1500 };
1509 1501
1510 template <typename Impl> 1502 template <typename Impl>
1511 ParserBase<Impl>::FunctionState::FunctionState( 1503 ParserBase<Impl>::FunctionState::FunctionState(
1512 FunctionState** function_state_stack, ScopeState** scope_stack, 1504 FunctionState** function_state_stack, ScopeState** scope_stack,
1513 DeclarationScope* scope) 1505 DeclarationScope* scope)
1514 : ScopeState(scope_stack, scope), 1506 : ScopeState(scope_stack, scope),
1515 next_materialized_literal_index_(0), 1507 next_materialized_literal_index_(0),
1516 expected_property_count_(0), 1508 expected_property_count_(0),
1517 generator_object_variable_(nullptr),
1518 promise_variable_(nullptr),
1519 function_state_stack_(function_state_stack), 1509 function_state_stack_(function_state_stack),
1520 outer_function_state_(*function_state_stack), 1510 outer_function_state_(*function_state_stack),
1521 destructuring_assignments_to_rewrite_(16, scope->zone()), 1511 destructuring_assignments_to_rewrite_(16, scope->zone()),
1522 tail_call_expressions_(scope->zone()), 1512 tail_call_expressions_(scope->zone()),
1523 return_expr_context_(ReturnExprContext::kInsideValidBlock), 1513 return_expr_context_(ReturnExprContext::kInsideValidBlock),
1524 non_patterns_to_rewrite_(0, scope->zone()), 1514 non_patterns_to_rewrite_(0, scope->zone()),
1525 reported_errors_(16, scope->zone()), 1515 reported_errors_(16, scope->zone()),
1526 next_function_is_likely_called_(false), 1516 next_function_is_likely_called_(false),
1527 previous_function_was_likely_called_(false) { 1517 previous_function_was_likely_called_(false) {
1528 *function_state_stack = this; 1518 *function_state_stack = this;
(...skipping 4242 matching lines...) Expand 10 before | Expand all | Expand 10 after
5771 } 5761 }
5772 5762
5773 #undef CHECK_OK 5763 #undef CHECK_OK
5774 #undef CHECK_OK_CUSTOM 5764 #undef CHECK_OK_CUSTOM
5775 #undef CHECK_OK_VOID 5765 #undef CHECK_OK_VOID
5776 5766
5777 } // namespace internal 5767 } // namespace internal
5778 } // namespace v8 5768 } // namespace v8
5779 5769
5780 #endif // V8_PARSING_PARSER_BASE_H 5770 #endif // V8_PARSING_PARSER_BASE_H
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698