Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2015, 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 /** | 5 /** |
| 6 * This file is an "idl" style description of the summary format. It is not | 6 * This file is an "idl" style description of the summary format. It is not |
| 7 * executed directly; instead it is parsed and transformed into code that | 7 * executed directly; instead it is parsed and transformed into code that |
| 8 * implements the summary format. | 8 * implements the summary format. |
| 9 * | 9 * |
| 10 * The code generation process introduces the following non-typical semantics: | 10 * The code generation process introduces the following non-typical semantics: |
| (...skipping 105 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 116 * that reference is resolved. | 116 * that reference is resolved. |
| 117 */ | 117 */ |
| 118 List<PrelinkedReference> references; | 118 List<PrelinkedReference> references; |
| 119 } | 119 } |
| 120 | 120 |
| 121 /** | 121 /** |
| 122 * Information about the resolution of an [UnlinkedReference]. | 122 * Information about the resolution of an [UnlinkedReference]. |
| 123 */ | 123 */ |
| 124 class PrelinkedReference { | 124 class PrelinkedReference { |
| 125 /** | 125 /** |
| 126 * Index into [UnlinkedLibrary.dependencies] indicating which imported library | 126 * Index into [PrelinkedLibrary.dependencies] indicating which imported librar y |
| 127 * declares the entity being referred to. | 127 * declares the entity being referred to. |
| 128 */ | 128 */ |
| 129 int dependency; | 129 int dependency; |
| 130 | 130 |
| 131 /** | 131 /** |
| 132 * The kind of the entity being referred to. For the pseudo-type `dynamic`, | 132 * The kind of the entity being referred to. For the pseudo-type `dynamic`, |
| 133 * the kind if [PrelinkedReferenceKind.classOrEnum]. | 133 * the kind is [PrelinkedReferenceKind.classOrEnum]. |
| 134 */ | 134 */ |
| 135 PrelinkedReferenceKind kind; | 135 PrelinkedReferenceKind kind; |
| 136 | 136 |
| 137 /** | 137 /** |
| 138 * Integer index indicating which unit in the imported library contains the | 138 * Integer index indicating which unit in the imported library contains the |
| 139 * definition of the entity. As with indices into [UnlinkedLibrary.units], | 139 * definition of the entity. As with indices into [PrelinkedLibrary.units], |
| 140 * zero represents the defining compilation unit, and nonzero values | 140 * zero represents the defining compilation unit, and nonzero values |
| 141 * represent parts in the order of the corresponding `part` declarations. | 141 * represent parts in the order of the corresponding `part` declarations. |
| 142 */ | 142 */ |
| 143 int unit; | 143 int unit; |
| 144 } | 144 } |
| 145 | 145 |
| 146 /** | 146 /** |
| 147 * Enum used to indicate the kind of entity referred to by a | 147 * Enum used to indicate the kind of entity referred to by a |
| 148 * [PrelinkedReference]. | 148 * [PrelinkedReference]. |
| 149 */ | 149 */ |
| (...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 194 List<UnlinkedTypeParam> typeParameters; | 194 List<UnlinkedTypeParam> typeParameters; |
| 195 | 195 |
| 196 /** | 196 /** |
| 197 * Supertype of the class, or `null` if either (a) the class doesn't | 197 * Supertype of the class, or `null` if either (a) the class doesn't |
| 198 * explicitly declare a supertype (and hence has supertype `Object`), or (b) | 198 * explicitly declare a supertype (and hence has supertype `Object`), or (b) |
| 199 * the class *is* `Object` (and hence has no supertype). | 199 * the class *is* `Object` (and hence has no supertype). |
| 200 */ | 200 */ |
| 201 UnlinkedTypeRef supertype; | 201 UnlinkedTypeRef supertype; |
| 202 | 202 |
| 203 /** | 203 /** |
| 204 * Mixins appering in a `with` clause, if any. | 204 * Mixins appearing in a `with` clause, if any. |
| 205 */ | 205 */ |
| 206 List<UnlinkedTypeRef> mixins; | 206 List<UnlinkedTypeRef> mixins; |
| 207 | 207 |
| 208 /** | 208 /** |
| 209 * Interfaces appearing in an `implements` clause, if any. | 209 * Interfaces appearing in an `implements` clause, if any. |
| 210 */ | 210 */ |
| 211 List<UnlinkedTypeRef> interfaces; | 211 List<UnlinkedTypeRef> interfaces; |
| 212 | 212 |
| 213 /** | 213 /** |
| 214 * Field declarations contained in the class. | 214 * Field declarations contained in the class. |
| (...skipping 419 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 634 * instantiate it. Trailing type arguments of type `dynamic` are omitted. | 634 * instantiate it. Trailing type arguments of type `dynamic` are omitted. |
| 635 */ | 635 */ |
| 636 List<UnlinkedTypeRef> typeArguments; | 636 List<UnlinkedTypeRef> typeArguments; |
| 637 } | 637 } |
| 638 | 638 |
| 639 /** | 639 /** |
| 640 * Unlinked summary information about a compilation unit ("part file"). Note | 640 * Unlinked summary information about a compilation unit ("part file"). Note |
| 641 * that since a declaration can be moved from one part file to another without | 641 * that since a declaration can be moved from one part file to another without |
| 642 * changing semantics, the declarations themselves aren't stored here; they are | 642 * changing semantics, the declarations themselves aren't stored here; they are |
| 643 * stored in [UnlinkedLibrary] and they refer to [UnlinkedUnit]s via an index | 643 * stored in [UnlinkedLibrary] and they refer to [UnlinkedUnit]s via an index |
| 644 * into [UnlinkedLibrary.units]. | 644 * into [UnlinkedLibrary.units]. |
|
scheglov
2015/12/15 06:23:33
This comment also does not look right.
It says tha
Paul Berry
2015/12/15 17:35:32
You're right. I'll remove the bogus text in my ne
| |
| 645 */ | 645 */ |
| 646 class UnlinkedUnit { | 646 class UnlinkedUnit { |
| 647 /** | 647 /** |
| 648 * Name of the library (from a "library" declaration, if present). | 648 * Name of the library (from a "library" declaration, if present). |
| 649 */ | 649 */ |
| 650 String libraryName; | 650 String libraryName; |
| 651 | 651 |
| 652 /** | 652 /** |
| 653 * Classes declared in the compilation unit. | 653 * Classes declared in the compilation unit. |
| 654 */ | 654 */ |
| (...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 724 /** | 724 /** |
| 725 * Indicates whether the variable is declared using the `const` keyword. | 725 * Indicates whether the variable is declared using the `const` keyword. |
| 726 */ | 726 */ |
| 727 bool isConst; | 727 bool isConst; |
| 728 | 728 |
| 729 /** | 729 /** |
| 730 * Indicates whether this variable lacks an explicit type declaration. | 730 * Indicates whether this variable lacks an explicit type declaration. |
| 731 */ | 731 */ |
| 732 bool hasImplicitType; | 732 bool hasImplicitType; |
| 733 } | 733 } |
| OLD | NEW |