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 "src/allocation.h" | 8 #include "src/allocation.h" |
9 #include "src/ast.h" | 9 #include "src/ast.h" |
10 #include "src/compiler.h" // For CachedDataMode | 10 #include "src/compiler.h" // For CachedDataMode |
(...skipping 687 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
698 | 698 |
699 // All ParseXXX functions take as the last argument an *ok parameter | 699 // All ParseXXX functions take as the last argument an *ok parameter |
700 // which is set to false if parsing failed; it is unchanged otherwise. | 700 // which is set to false if parsing failed; it is unchanged otherwise. |
701 // By making the 'exception handling' explicit, we are forced to check | 701 // By making the 'exception handling' explicit, we are forced to check |
702 // for failure at the call sites. | 702 // for failure at the call sites. |
703 void* ParseStatementList(ZoneList<Statement*>* body, int end_token, | 703 void* ParseStatementList(ZoneList<Statement*>* body, int end_token, |
704 bool is_eval, Scope** ad_hoc_eval_scope, bool* ok); | 704 bool is_eval, Scope** ad_hoc_eval_scope, bool* ok); |
705 Statement* ParseStatementListItem(bool* ok); | 705 Statement* ParseStatementListItem(bool* ok); |
706 void* ParseModule(ZoneList<Statement*>* body, bool* ok); | 706 void* ParseModule(ZoneList<Statement*>* body, bool* ok); |
707 Statement* ParseModuleItem(bool* ok); | 707 Statement* ParseModuleItem(bool* ok); |
708 Literal* ParseModuleSpecifier(bool* ok); | 708 const AstRawString* ParseModuleSpecifier(bool* ok); |
709 Statement* ParseImportDeclaration(bool* ok); | 709 Statement* ParseImportDeclaration(bool* ok); |
710 Statement* ParseExportDeclaration(bool* ok); | 710 Statement* ParseExportDeclaration(bool* ok); |
711 Statement* ParseExportDefault(bool* ok); | 711 Statement* ParseExportDefault(bool* ok); |
712 void* ParseExportClause(ZoneList<const AstRawString*>* export_names, | 712 void* ParseExportClause(ZoneList<const AstRawString*>* export_names, |
713 ZoneList<Scanner::Location>* export_locations, | 713 ZoneList<Scanner::Location>* export_locations, |
714 ZoneList<const AstRawString*>* local_names, | 714 ZoneList<const AstRawString*>* local_names, |
715 Scanner::Location* reserved_loc, bool* ok); | 715 Scanner::Location* reserved_loc, bool* ok); |
716 void* ParseNamedImports(ZoneList<const AstRawString*>* import_names, | 716 ZoneList<ImportDeclaration*>* ParseNamedImports(int pos, bool* ok); |
rossberg
2015/02/25 13:55:49
While you're at it, can you perhaps change the oth
arv (Not doing code reviews)
2015/02/25 16:07:25
The one above has 2 lists as out params.
adamk
2015/02/25 21:43:12
Would be fine changing ParseStatementList and Pars
adamk
2015/02/25 21:50:46
Actually, there is a reason for passing in body th
| |
717 ZoneList<const AstRawString*>* local_names, bool* ok); | |
718 Statement* ParseStatement(ZoneList<const AstRawString*>* labels, bool* ok); | 717 Statement* ParseStatement(ZoneList<const AstRawString*>* labels, bool* ok); |
719 Statement* ParseSubStatement(ZoneList<const AstRawString*>* labels, bool* ok); | 718 Statement* ParseSubStatement(ZoneList<const AstRawString*>* labels, bool* ok); |
720 Statement* ParseFunctionDeclaration(ZoneList<const AstRawString*>* names, | 719 Statement* ParseFunctionDeclaration(ZoneList<const AstRawString*>* names, |
721 bool* ok); | 720 bool* ok); |
722 Statement* ParseClassDeclaration(ZoneList<const AstRawString*>* names, | 721 Statement* ParseClassDeclaration(ZoneList<const AstRawString*>* names, |
723 bool* ok); | 722 bool* ok); |
724 Statement* ParseNativeDeclaration(bool* ok); | 723 Statement* ParseNativeDeclaration(bool* ok); |
725 Block* ParseBlock(ZoneList<const AstRawString*>* labels, bool* ok); | 724 Block* ParseBlock(ZoneList<const AstRawString*>* labels, bool* ok); |
726 Block* ParseVariableStatement(VariableDeclarationContext var_context, | 725 Block* ParseVariableStatement(VariableDeclarationContext var_context, |
727 ZoneList<const AstRawString*>* names, | 726 ZoneList<const AstRawString*>* names, |
(...skipping 218 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
946 } | 945 } |
947 | 946 |
948 | 947 |
949 Expression* ParserTraits::CloseTemplateLiteral(TemplateLiteralState* state, | 948 Expression* ParserTraits::CloseTemplateLiteral(TemplateLiteralState* state, |
950 int start, Expression* tag) { | 949 int start, Expression* tag) { |
951 return parser_->CloseTemplateLiteral(state, start, tag); | 950 return parser_->CloseTemplateLiteral(state, start, tag); |
952 } | 951 } |
953 } } // namespace v8::internal | 952 } } // namespace v8::internal |
954 | 953 |
955 #endif // V8_PARSER_H_ | 954 #endif // V8_PARSER_H_ |
OLD | NEW |