| 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/parsing/parser-base.h" | 10 #include "src/parsing/parser-base.h" |
| (...skipping 125 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 136 | 136 |
| 137 int Arity() const { return params.length(); } | 137 int Arity() const { return params.length(); } |
| 138 const Parameter& at(int i) const { return params[i]; } | 138 const Parameter& at(int i) const { return params[i]; } |
| 139 }; | 139 }; |
| 140 | 140 |
| 141 template <> | 141 template <> |
| 142 struct ParserTypes<Parser> { | 142 struct ParserTypes<Parser> { |
| 143 typedef ParserBase<Parser> Base; | 143 typedef ParserBase<Parser> Base; |
| 144 typedef Parser Impl; | 144 typedef Parser Impl; |
| 145 | 145 |
| 146 typedef Variable GeneratorVariable; | 146 typedef v8::internal::Variable Variable; |
| 147 | 147 |
| 148 // Return types for traversing functions. | 148 // Return types for traversing functions. |
| 149 typedef const AstRawString* Identifier; | 149 typedef const AstRawString* Identifier; |
| 150 typedef v8::internal::Expression* Expression; | 150 typedef v8::internal::Expression* Expression; |
| 151 typedef v8::internal::FunctionLiteral* FunctionLiteral; | 151 typedef v8::internal::FunctionLiteral* FunctionLiteral; |
| 152 typedef ObjectLiteral::Property* ObjectLiteralProperty; | 152 typedef ObjectLiteral::Property* ObjectLiteralProperty; |
| 153 typedef ClassLiteral::Property* ClassLiteralProperty; | 153 typedef ClassLiteral::Property* ClassLiteralProperty; |
| 154 typedef ZoneList<v8::internal::Expression*>* ExpressionList; | 154 typedef ZoneList<v8::internal::Expression*>* ExpressionList; |
| 155 typedef ZoneList<ObjectLiteral::Property*>* PropertyList; | 155 typedef ZoneList<ObjectLiteral::Property*>* PropertyList; |
| 156 typedef ParserFormalParameters FormalParameters; | 156 typedef ParserFormalParameters FormalParameters; |
| (...skipping 419 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 576 V8_INLINE void QueueDestructuringAssignmentForRewriting( | 576 V8_INLINE void QueueDestructuringAssignmentForRewriting( |
| 577 Expression* assignment); | 577 Expression* assignment); |
| 578 V8_INLINE void QueueNonPatternForRewriting(Expression* expr, bool* ok); | 578 V8_INLINE void QueueNonPatternForRewriting(Expression* expr, bool* ok); |
| 579 | 579 |
| 580 friend class InitializerRewriter; | 580 friend class InitializerRewriter; |
| 581 void RewriteParameterInitializer(Expression* expr, Scope* scope); | 581 void RewriteParameterInitializer(Expression* expr, Scope* scope); |
| 582 | 582 |
| 583 Expression* BuildCreateJSGeneratorObject(int pos, FunctionKind kind); | 583 Expression* BuildCreateJSGeneratorObject(int pos, FunctionKind kind); |
| 584 Expression* BuildResolvePromise(Expression* value, int pos); | 584 Expression* BuildResolvePromise(Expression* value, int pos); |
| 585 Expression* BuildRejectPromise(Expression* value, int pos); | 585 Expression* BuildRejectPromise(Expression* value, int pos); |
| 586 VariableProxy* BuildDotPromise(); | 586 Variable* PromiseVariable(); |
| 587 VariableProxy* BuildDotDebugIsActive(); | |
| 588 | 587 |
| 589 // Generic AST generator for throwing errors from compiled code. | 588 // Generic AST generator for throwing errors from compiled code. |
| 590 Expression* NewThrowError(Runtime::FunctionId function_id, | 589 Expression* NewThrowError(Runtime::FunctionId function_id, |
| 591 MessageTemplate::Template message, | 590 MessageTemplate::Template message, |
| 592 const AstRawString* arg, int pos); | 591 const AstRawString* arg, int pos); |
| 593 | 592 |
| 594 void FinalizeIteratorUse(Variable* completion, Expression* condition, | 593 void FinalizeIteratorUse(Variable* completion, Expression* condition, |
| 595 Variable* iter, Block* iterator_use, Block* result); | 594 Variable* iter, Block* iterator_use, Block* result); |
| 596 | 595 |
| 597 Statement* FinalizeForOfStatement(ForOfStatement* loop, Variable* completion, | 596 Statement* FinalizeForOfStatement(ForOfStatement* loop, Variable* completion, |
| (...skipping 483 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1081 int total_preparse_skipped_; | 1080 int total_preparse_skipped_; |
| 1082 HistogramTimer* pre_parse_timer_; | 1081 HistogramTimer* pre_parse_timer_; |
| 1083 | 1082 |
| 1084 bool parsing_on_main_thread_; | 1083 bool parsing_on_main_thread_; |
| 1085 }; | 1084 }; |
| 1086 | 1085 |
| 1087 } // namespace internal | 1086 } // namespace internal |
| 1088 } // namespace v8 | 1087 } // namespace v8 |
| 1089 | 1088 |
| 1090 #endif // V8_PARSING_PARSER_H_ | 1089 #endif // V8_PARSING_PARSER_H_ |
| OLD | NEW |