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_PARSER_H_ | 5 #ifndef V8_PARSER_H_ |
6 #define V8_PARSER_H_ | 6 #define V8_PARSER_H_ |
7 | 7 |
8 #include "allocation.h" | 8 #include "allocation.h" |
9 #include "ast.h" | 9 #include "ast.h" |
10 #include "compiler.h" // For CachedDataMode | 10 #include "compiler.h" // For CachedDataMode |
(...skipping 700 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
711 DebuggerStatement* ParseDebuggerStatement(bool* ok); | 711 DebuggerStatement* ParseDebuggerStatement(bool* ok); |
712 | 712 |
713 // Support for hamony block scoped bindings. | 713 // Support for hamony block scoped bindings. |
714 Block* ParseScopedBlock(ZoneStringList* labels, bool* ok); | 714 Block* ParseScopedBlock(ZoneStringList* labels, bool* ok); |
715 | 715 |
716 // Initialize the components of a for-in / for-of statement. | 716 // Initialize the components of a for-in / for-of statement. |
717 void InitializeForEachStatement(ForEachStatement* stmt, | 717 void InitializeForEachStatement(ForEachStatement* stmt, |
718 Expression* each, | 718 Expression* each, |
719 Expression* subject, | 719 Expression* subject, |
720 Statement* body); | 720 Statement* body); |
721 Statement* DesugarLetBindingsInForStatement( | |
rossberg
2014/05/22 12:55:44
Nit: DesugarLexicalDeclarationInForStatement, sinc
ulan
2014/05/23 14:29:03
As discussed offline, const and others are not han
| |
722 Scope* inner_scope, ZoneStringList* names, ForStatement* loop, | |
723 Statement* init, Expression* cond, Statement* next, bool* ok); | |
724 Statement* Assign(Token::Value op, VariableProxy* dst, Expression* src, | |
rossberg
2014/05/22 12:55:44
I am not sure if it's actually worth introducing t
ulan
2014/05/23 14:29:03
Done. Inlined the functions to be consistent.
| |
725 int pos = RelocInfo::kNoPosition); | |
726 Variable* Temporary(Handle<String> name); | |
721 | 727 |
722 FunctionLiteral* ParseFunctionLiteral( | 728 FunctionLiteral* ParseFunctionLiteral( |
723 Handle<String> name, | 729 Handle<String> name, |
724 Scanner::Location function_name_location, | 730 Scanner::Location function_name_location, |
725 bool name_is_strict_reserved, | 731 bool name_is_strict_reserved, |
726 bool is_generator, | 732 bool is_generator, |
727 int function_token_position, | 733 int function_token_position, |
728 FunctionLiteral::FunctionType type, | 734 FunctionLiteral::FunctionType type, |
729 bool* ok); | 735 bool* ok); |
730 | 736 |
(...skipping 98 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
829 private: | 835 private: |
830 static const int kLiteralTypeSlot = 0; | 836 static const int kLiteralTypeSlot = 0; |
831 static const int kElementsSlot = 1; | 837 static const int kElementsSlot = 1; |
832 | 838 |
833 DISALLOW_IMPLICIT_CONSTRUCTORS(CompileTimeValue); | 839 DISALLOW_IMPLICIT_CONSTRUCTORS(CompileTimeValue); |
834 }; | 840 }; |
835 | 841 |
836 } } // namespace v8::internal | 842 } } // namespace v8::internal |
837 | 843 |
838 #endif // V8_PARSER_H_ | 844 #endif // V8_PARSER_H_ |
OLD | NEW |