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 VM_PARSER_H_ | 5 #ifndef VM_PARSER_H_ |
6 #define VM_PARSER_H_ | 6 #define VM_PARSER_H_ |
7 | 7 |
8 #include "include/dart_api.h" | 8 #include "include/dart_api.h" |
9 | 9 |
10 #include "vm/ast.h" | 10 #include "vm/ast.h" |
(...skipping 203 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
214 void ParseLibraryName(); | 214 void ParseLibraryName(); |
215 void ParseLibraryImport(); | 215 void ParseLibraryImport(); |
216 void ParseLibraryInclude(); | 216 void ParseLibraryInclude(); |
217 | 217 |
218 enum TypeResolution { | 218 enum TypeResolution { |
219 kIgnore, // Parsed type is ignored and replaced by Dynamic. | 219 kIgnore, // Parsed type is ignored and replaced by Dynamic. |
220 kDoNotResolve, // Type resolution is postponed. | 220 kDoNotResolve, // Type resolution is postponed. |
221 kCanResolve, // Type resolution is optional. | 221 kCanResolve, // Type resolution is optional. |
222 kMustResolve // Type resolution is required. | 222 kMustResolve // Type resolution is required. |
223 }; | 223 }; |
224 void ResolveTypeFromClass(intptr_t type_pos, | 224 void ResolveTypeFromClass(const Class& cls, |
225 const Class& cls, | |
226 TypeResolution type_resolution, | 225 TypeResolution type_resolution, |
227 AbstractType* type); | 226 AbstractType* type); |
228 RawAbstractType* ParseType(TypeResolution type_resolution); | 227 RawAbstractType* ParseType(TypeResolution type_resolution); |
229 void ParseTypeParameters(const Class& cls); | 228 void ParseTypeParameters(const Class& cls); |
230 RawAbstractTypeArguments* ParseTypeArguments(TypeResolution type_resolution); | 229 RawAbstractTypeArguments* ParseTypeArguments(TypeResolution type_resolution); |
231 void ParseQualIdent(QualIdent* qual_ident); | 230 void ParseQualIdent(QualIdent* qual_ident); |
232 void ParseMethodOrConstructor(ClassDesc* members, MemberDesc* method); | 231 void ParseMethodOrConstructor(ClassDesc* members, MemberDesc* method); |
233 void ParseFieldDefinition(ClassDesc* members, MemberDesc* field); | 232 void ParseFieldDefinition(ClassDesc* members, MemberDesc* field); |
234 void ParseClassMemberDefinition(ClassDesc* members); | 233 void ParseClassMemberDefinition(ClassDesc* members); |
235 void ParseFormalParameter(bool allow_explicit_default_value, | 234 void ParseFormalParameter(bool allow_explicit_default_value, |
(...skipping 219 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
455 // code at all points in the try block where an exit from the block is | 454 // code at all points in the try block where an exit from the block is |
456 // done using 'return', 'break' or 'continue' statements. | 455 // done using 'return', 'break' or 'continue' statements. |
457 TryBlocks* try_blocks_list_; | 456 TryBlocks* try_blocks_list_; |
458 | 457 |
459 DISALLOW_COPY_AND_ASSIGN(Parser); | 458 DISALLOW_COPY_AND_ASSIGN(Parser); |
460 }; | 459 }; |
461 | 460 |
462 } // namespace dart | 461 } // namespace dart |
463 | 462 |
464 #endif // VM_PARSER_H_ | 463 #endif // VM_PARSER_H_ |
OLD | NEW |