| 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 library elements; | 5 library elements; |
| 6 | 6 |
| 7 | 7 |
| 8 import '../constants/expressions.dart'; | 8 import '../constants/expressions.dart'; |
| 9 import '../tree/tree.dart'; | 9 import '../tree/tree.dart'; |
| 10 import '../util/util.dart'; | 10 import '../util/util.dart'; |
| (...skipping 962 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 973 MemberElement get memberContext; | 973 MemberElement get memberContext; |
| 974 } | 974 } |
| 975 | 975 |
| 976 /// A top-level, static or instance field or method, or a constructor. | 976 /// A top-level, static or instance field or method, or a constructor. |
| 977 /// | 977 /// |
| 978 /// A [MemberElement] is the outermost executable element for any executable | 978 /// A [MemberElement] is the outermost executable element for any executable |
| 979 /// context. | 979 /// context. |
| 980 abstract class MemberElement extends Element implements ExecutableElement { | 980 abstract class MemberElement extends Element implements ExecutableElement { |
| 981 /// The local functions defined within this member. | 981 /// The local functions defined within this member. |
| 982 List<FunctionElement> get nestedClosures; | 982 List<FunctionElement> get nestedClosures; |
| 983 | |
| 984 /// The name of this member taking privacy into account. | |
| 985 Name get memberName; | |
| 986 } | 983 } |
| 987 | 984 |
| 988 /// A function, variable or parameter defined in an executable context. | 985 /// A function, variable or parameter defined in an executable context. |
| 989 abstract class LocalElement extends Element implements TypedElement, Local { | 986 abstract class LocalElement extends Element implements TypedElement, Local { |
| 990 } | 987 } |
| 991 | 988 |
| 992 /// A top level, static or instance field, a formal parameter or local variable. | 989 /// A top level, static or instance field, a formal parameter or local variable. |
| 993 abstract class VariableElement extends ExecutableElement { | 990 abstract class VariableElement extends ExecutableElement { |
| 994 Expression get initializer; | 991 Expression get initializer; |
| 995 } | 992 } |
| (...skipping 253 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1249 /// Class `E` has a synthesized constructor, `E.c`, whose defining constructor | 1246 /// Class `E` has a synthesized constructor, `E.c`, whose defining constructor |
| 1250 /// is `C.c`. | 1247 /// is `C.c`. |
| 1251 ConstructorElement get definingConstructor; | 1248 ConstructorElement get definingConstructor; |
| 1252 | 1249 |
| 1253 /// Use [enclosingClass] instead. | 1250 /// Use [enclosingClass] instead. |
| 1254 @deprecated | 1251 @deprecated |
| 1255 get enclosingElement; | 1252 get enclosingElement; |
| 1256 } | 1253 } |
| 1257 | 1254 |
| 1258 /// JavaScript backend specific element for the body of constructor. | 1255 /// JavaScript backend specific element for the body of constructor. |
| 1259 // TODO(johnniwinther): Remove this class from the element model. | 1256 // TODO(johnniwinther): Remove this class for the element model. |
| 1260 abstract class ConstructorBodyElement extends MethodElement { | 1257 abstract class ConstructorBodyElement extends FunctionElement { |
| 1261 FunctionElement get constructor; | 1258 FunctionElement get constructor; |
| 1262 } | 1259 } |
| 1263 | 1260 |
| 1264 /// [TypeDeclarationElement] defines the common interface for class/interface | 1261 /// [TypeDeclarationElement] defines the common interface for class/interface |
| 1265 /// declarations and typedefs. | 1262 /// declarations and typedefs. |
| 1266 abstract class TypeDeclarationElement extends Element implements AstElement { | 1263 abstract class TypeDeclarationElement extends Element implements AstElement { |
| 1267 /** | 1264 /** |
| 1268 * The `this type` for this type declaration. | 1265 * The `this type` for this type declaration. |
| 1269 * | 1266 * |
| 1270 * The type of [:this:] is the generic type based on this element in which | 1267 * The type of [:this:] is the generic type based on this element in which |
| (...skipping 355 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1626 bool get isDeclaredByField; | 1623 bool get isDeclaredByField; |
| 1627 | 1624 |
| 1628 /// Returns `true` if this member is abstract. | 1625 /// Returns `true` if this member is abstract. |
| 1629 bool get isAbstract; | 1626 bool get isAbstract; |
| 1630 | 1627 |
| 1631 /// If abstract, [implementation] points to the overridden concrete member, | 1628 /// If abstract, [implementation] points to the overridden concrete member, |
| 1632 /// if any. Otherwise [implementation] points to the member itself. | 1629 /// if any. Otherwise [implementation] points to the member itself. |
| 1633 Member get implementation; | 1630 Member get implementation; |
| 1634 } | 1631 } |
| 1635 | 1632 |
| OLD | NEW |