| OLD | NEW |
| 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
| 2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
| 3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef RUNTIME_VM_PARSER_H_ | 5 #ifndef RUNTIME_VM_PARSER_H_ |
| 6 #define RUNTIME_VM_PARSER_H_ | 6 #define RUNTIME_VM_PARSER_H_ |
| 7 | 7 |
| 8 #include "include/dart_api.h" | 8 #include "include/dart_api.h" |
| 9 | 9 |
| 10 #include "platform/assert.h" | 10 #include "platform/assert.h" |
| (...skipping 598 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 609 TokenPosition call_pos, | 609 TokenPosition call_pos, |
| 610 const String& function_name, | 610 const String& function_name, |
| 611 const ArgumentListNode& function_args, | 611 const ArgumentListNode& function_args, |
| 612 const LocalVariable* temp, | 612 const LocalVariable* temp, |
| 613 bool is_super_invocation); | 613 bool is_super_invocation); |
| 614 RawFunction* GetSuperFunction(TokenPosition token_pos, | 614 RawFunction* GetSuperFunction(TokenPosition token_pos, |
| 615 const String& name, | 615 const String& name, |
| 616 ArgumentListNode* arguments, | 616 ArgumentListNode* arguments, |
| 617 bool resolve_getter, | 617 bool resolve_getter, |
| 618 bool* is_no_such_method); | 618 bool* is_no_such_method); |
| 619 AstNode* ParseSuperCall(const String& function_name); | 619 AstNode* ParseSuperCall(const String& function_name, |
| 620 const TypeArguments& func_type_args); |
| 620 AstNode* ParseSuperFieldAccess(const String& field_name, | 621 AstNode* ParseSuperFieldAccess(const String& field_name, |
| 621 TokenPosition field_pos); | 622 TokenPosition field_pos); |
| 622 AstNode* ParseSuperOperator(); | 623 AstNode* ParseSuperOperator(); |
| 623 AstNode* BuildUnarySuperOperator(Token::Kind op, PrimaryNode* super); | 624 AstNode* BuildUnarySuperOperator(Token::Kind op, PrimaryNode* super); |
| 624 | 625 |
| 625 static bool ParseFormalParameters(const Function& func, ParamList* params); | 626 static bool ParseFormalParameters(const Function& func, ParamList* params); |
| 626 | 627 |
| 627 void SetupDefaultsForOptionalParams(const ParamList& params); | 628 void SetupDefaultsForOptionalParams(const ParamList& params); |
| 628 ClosureNode* CreateImplicitClosureNode(const Function& func, | 629 ClosureNode* CreateImplicitClosureNode(const Function& func, |
| 629 TokenPosition token_pos, | 630 TokenPosition token_pos, |
| (...skipping 196 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 826 const TypeArguments& type_arguments); | 827 const TypeArguments& type_arguments); |
| 827 | 828 |
| 828 RawFunction* BuildConstructorClosureFunction(const Function& ctr, | 829 RawFunction* BuildConstructorClosureFunction(const Function& ctr, |
| 829 TokenPosition token_pos); | 830 TokenPosition token_pos); |
| 830 AstNode* ParseNewOperator(Token::Kind op_kind); | 831 AstNode* ParseNewOperator(Token::Kind op_kind); |
| 831 void ParseConstructorClosurization(Function* constructor, | 832 void ParseConstructorClosurization(Function* constructor, |
| 832 TypeArguments* type_arguments); | 833 TypeArguments* type_arguments); |
| 833 | 834 |
| 834 // An implicit argument, if non-null, is prepended to the returned list. | 835 // An implicit argument, if non-null, is prepended to the returned list. |
| 835 ArgumentListNode* ParseActualParameters(ArgumentListNode* implicit_arguments, | 836 ArgumentListNode* ParseActualParameters(ArgumentListNode* implicit_arguments, |
| 837 const TypeArguments& func_type_args, |
| 836 bool require_const); | 838 bool require_const); |
| 837 AstNode* ParseStaticCall(const Class& cls, | 839 AstNode* ParseStaticCall(const Class& cls, |
| 838 const String& method_name, | 840 const String& method_name, |
| 839 TokenPosition ident_pos, | 841 TokenPosition ident_pos, |
| 842 const TypeArguments& func_type_args, |
| 840 const LibraryPrefix* prefix = NULL); | 843 const LibraryPrefix* prefix = NULL); |
| 841 AstNode* ParseInstanceCall(AstNode* receiver, | 844 AstNode* ParseInstanceCall(AstNode* receiver, |
| 842 const String& method_name, | 845 const String& method_name, |
| 843 TokenPosition ident_pos, | 846 TokenPosition ident_pos, |
| 847 const TypeArguments& func_type_args, |
| 844 bool is_conditional); | 848 bool is_conditional); |
| 845 AstNode* ParseClosureCall(AstNode* closure); | 849 AstNode* ParseClosureCall(AstNode* closure, |
| 850 const TypeArguments& func_type_args); |
| 846 AstNode* GenerateStaticFieldLookup(const Field& field, | 851 AstNode* GenerateStaticFieldLookup(const Field& field, |
| 847 TokenPosition ident_pos); | 852 TokenPosition ident_pos); |
| 848 AstNode* GenerateStaticFieldAccess(const Class& cls, | 853 AstNode* GenerateStaticFieldAccess(const Class& cls, |
| 849 const String& field_name, | 854 const String& field_name, |
| 850 TokenPosition ident_pos); | 855 TokenPosition ident_pos); |
| 851 | 856 |
| 852 LocalVariable* LookupLocalScope(const String& ident); | 857 LocalVariable* LookupLocalScope(const String& ident); |
| 853 void CheckInstanceFieldAccess(TokenPosition field_pos, | 858 void CheckInstanceFieldAccess(TokenPosition field_pos, |
| 854 const String& field_name); | 859 const String& field_name); |
| 855 bool ParsingStaticMember() const; | 860 bool ParsingStaticMember() const; |
| (...skipping 150 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1006 | 1011 |
| 1007 intptr_t recursion_counter_; | 1012 intptr_t recursion_counter_; |
| 1008 friend class RecursionChecker; | 1013 friend class RecursionChecker; |
| 1009 | 1014 |
| 1010 DISALLOW_COPY_AND_ASSIGN(Parser); | 1015 DISALLOW_COPY_AND_ASSIGN(Parser); |
| 1011 }; | 1016 }; |
| 1012 | 1017 |
| 1013 } // namespace dart | 1018 } // namespace dart |
| 1014 | 1019 |
| 1015 #endif // RUNTIME_VM_PARSER_H_ | 1020 #endif // RUNTIME_VM_PARSER_H_ |
| OLD | NEW |