| OLD | NEW |
| 1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2014, 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 * Defines the element model. The element model describes the semantic (as | 6 * Defines the element model. The element model describes the semantic (as |
| 7 * opposed to syntactic) structure of Dart code. The syntactic structure of the | 7 * opposed to syntactic) structure of Dart code. The syntactic structure of the |
| 8 * code is modeled by the [AST structure](../ast/ast.dart). | 8 * code is modeled by the [AST structure](../ast/ast.dart). |
| 9 * | 9 * |
| 10 * The element model consists of two closely related kinds of objects: elements | 10 * The element model consists of two closely related kinds of objects: elements |
| (...skipping 1265 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1276 * Clients may not extend, implement or mix-in this class. | 1276 * Clients may not extend, implement or mix-in this class. |
| 1277 */ | 1277 */ |
| 1278 abstract class FunctionTypeAliasElement | 1278 abstract class FunctionTypeAliasElement |
| 1279 implements FunctionTypedElement, TypeDefiningElement { | 1279 implements FunctionTypedElement, TypeDefiningElement { |
| 1280 /** | 1280 /** |
| 1281 * An empty array of type alias elements. | 1281 * An empty array of type alias elements. |
| 1282 */ | 1282 */ |
| 1283 static List<FunctionTypeAliasElement> EMPTY_LIST = | 1283 static List<FunctionTypeAliasElement> EMPTY_LIST = |
| 1284 new List<FunctionTypeAliasElement>(0); | 1284 new List<FunctionTypeAliasElement>(0); |
| 1285 | 1285 |
| 1286 /** | |
| 1287 * Return the compilation unit in which this type alias is defined. | |
| 1288 */ | |
| 1289 @override | 1286 @override |
| 1290 CompilationUnitElement get enclosingElement; | 1287 CompilationUnitElement get enclosingElement; |
| 1291 | 1288 |
| 1292 @override | 1289 @override |
| 1293 FunctionTypeAlias computeNode(); | 1290 TypeAlias computeNode(); |
| 1294 } | 1291 } |
| 1295 | 1292 |
| 1296 /** | 1293 /** |
| 1297 * An element that has a [FunctionType] as its [type]. | 1294 * An element that has a [FunctionType] as its [type]. |
| 1298 * | 1295 * |
| 1299 * This also provides convenient access to the parameters and return type. | 1296 * This also provides convenient access to the parameters and return type. |
| 1300 * | 1297 * |
| 1301 * Clients may not extend, implement or mix-in this class. | 1298 * Clients may not extend, implement or mix-in this class. |
| 1302 */ | 1299 */ |
| 1303 abstract class FunctionTypedElement implements TypeParameterizedElement { | 1300 abstract class FunctionTypedElement implements TypeParameterizedElement { |
| 1304 /** | 1301 /** |
| 1305 * Return a list containing all of the parameters defined by this executable | 1302 * Return a list containing all of the parameters defined by this executable |
| 1306 * element. | 1303 * element. |
| 1307 */ | 1304 */ |
| 1308 List<ParameterElement> get parameters; | 1305 List<ParameterElement> get parameters; |
| 1309 | 1306 |
| 1310 /** | 1307 /** |
| 1311 * Return the return type defined by this element. If the element model is | 1308 * Return the return type defined by this element. If the element model is |
| 1312 * fully populated, then the [returnType] will not be `null`, even if no | 1309 * fully populated, then the [returnType] will not be `null`, even if no |
| 1313 * return type was explicitly specified. | 1310 * return type was explicitly specified. |
| 1314 */ | 1311 */ |
| 1315 DartType get returnType; | 1312 DartType get returnType; |
| 1316 | 1313 |
| 1317 /** | 1314 @override |
| 1318 * The type of this element, which will be a function type. | |
| 1319 */ | |
| 1320 FunctionType get type; | 1315 FunctionType get type; |
| 1321 } | 1316 } |
| 1322 | 1317 |
| 1323 /** | 1318 /** |
| 1324 * A combinator that causes some of the names in a namespace to be hidden when | 1319 * A combinator that causes some of the names in a namespace to be hidden when |
| 1325 * being imported. | 1320 * being imported. |
| 1326 * | 1321 * |
| 1327 * Clients may not extend, implement or mix-in this class. | 1322 * Clients may not extend, implement or mix-in this class. |
| 1328 */ | 1323 */ |
| 1329 abstract class HideElementCombinator implements NamespaceCombinator { | 1324 abstract class HideElementCombinator implements NamespaceCombinator { |
| (...skipping 727 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2057 DartType get type; | 2052 DartType get type; |
| 2058 | 2053 |
| 2059 /** | 2054 /** |
| 2060 * Return a representation of the value of this variable, forcing the value | 2055 * Return a representation of the value of this variable, forcing the value |
| 2061 * to be computed if it had not previously been computed, or `null` if either | 2056 * to be computed if it had not previously been computed, or `null` if either |
| 2062 * this variable was not declared with the 'const' modifier or if the value of | 2057 * this variable was not declared with the 'const' modifier or if the value of |
| 2063 * this variable could not be computed because of errors. | 2058 * this variable could not be computed because of errors. |
| 2064 */ | 2059 */ |
| 2065 DartObject computeConstantValue(); | 2060 DartObject computeConstantValue(); |
| 2066 } | 2061 } |
| OLD | NEW |