| OLD | NEW |
| (Empty) |
| 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 | |
| 3 // BSD-style license that can be found in the LICENSE file. | |
| 4 | |
| 5 /// Shared element model between the dart analyzer and dart2js. | |
| 6 | |
| 7 library elements; | |
| 8 | |
| 9 /// The interface `Element` defines the behavior common to all of the elements | |
| 10 /// in the element model. Generally speaking, the element model is a semantic | |
| 11 /// model of the program that represents things that are declared with a name | |
| 12 /// and hence can be referenced elsewhere in the code. | |
| 13 abstract class Element { | |
| 14 // TODO(johnniwinther): Semantic difference. Setter names from the analyzer | |
| 15 // contain '=' but doesn't in dart2js. | |
| 16 // TODO(johnniwinther,paulberry,brianwilkerson): What about privacy? Maybe | |
| 17 // name should be the `Name` class in | |
| 18 // 'package:compiler/src/elements/names.dart'. | |
| 19 /// The name of this element, or `null` if this element does not have a name. | |
| 20 String get name; | |
| 21 | |
| 22 /// The library that contains this element. This will be the element itself if | |
| 23 /// it is a library element. | |
| 24 LibraryElement get library; | |
| 25 } | |
| 26 | |
| 27 /// The interface `LibraryElement` defines the behavior of elements representing | |
| 28 /// a library. | |
| 29 abstract class LibraryElement extends Element { | |
| 30 | |
| 31 } | |
| 32 | |
| 33 /// The interface `ClassElement` defines the behavior of elements that represent | |
| 34 /// a class. | |
| 35 abstract class ClassElement extends Element { | |
| 36 | |
| 37 } | |
| OLD | NEW |