OLD | NEW |
1 // This code was auto-generated, is not intended to be edited, and is subject to | 1 // This code was auto-generated, is not intended to be edited, and is subject to |
2 // significant change. Please see the README file for more information. | 2 // significant change. Please see the README file for more information. |
3 | 3 |
4 library engine.element; | 4 library engine.element; |
5 | 5 |
6 import 'dart:collection'; | 6 import 'dart:collection'; |
7 import 'java_core.dart'; | 7 import 'java_core.dart'; |
8 import 'java_engine.dart'; | 8 import 'java_engine.dart'; |
9 import 'source.dart'; | 9 import 'source.dart'; |
10 import 'scanner.dart' show Keyword; | 10 import 'scanner.dart' show Keyword; |
11 import 'ast.dart' show Identifier, LibraryIdentifier; | 11 import 'ast.dart' show Identifier, LibraryIdentifier; |
12 import 'html.dart' show XmlTagNode; | 12 import 'html.dart' show XmlTagNode; |
13 import 'engine.dart' show AnalysisContext; | 13 import 'engine.dart' show AnalysisContext; |
| 14 import 'constant.dart' show EvaluationResultImpl; |
14 import 'utilities_dart.dart'; | 15 import 'utilities_dart.dart'; |
15 | 16 |
16 /** | 17 /** |
17 * The interface {@code Annotation} defines the behavior of objects representing
a single annotation | 18 * The interface {@code Annotation} defines the behavior of objects representing
a single annotation |
18 * associated with an element. | 19 * associated with an element. |
19 * @coverage dart.engine.element | 20 * @coverage dart.engine.element |
20 */ | 21 */ |
21 abstract class Annotation { | 22 abstract class Annotation { |
22 /** | 23 /** |
23 * Return the element representing the field, variable, or const constructor b
eing used as an | 24 * Return the element representing the field, variable, or const constructor b
eing used as an |
(...skipping 177 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
201 * Return an array containing all of the top-level functions contained in this
compilation unit. | 202 * Return an array containing all of the top-level functions contained in this
compilation unit. |
202 * @return the top-level functions contained in this compilation unit | 203 * @return the top-level functions contained in this compilation unit |
203 */ | 204 */ |
204 List<FunctionElement> get functions; | 205 List<FunctionElement> get functions; |
205 /** | 206 /** |
206 * Return an array containing all of the top-level variables contained in this
compilation unit. | 207 * Return an array containing all of the top-level variables contained in this
compilation unit. |
207 * @return the top-level variables contained in this compilation unit | 208 * @return the top-level variables contained in this compilation unit |
208 */ | 209 */ |
209 List<TopLevelVariableElement> get topLevelVariables; | 210 List<TopLevelVariableElement> get topLevelVariables; |
210 /** | 211 /** |
211 * Return an array containing all of the type aliases contained in this compil
ation unit. | 212 * Return an array containing all of the function type aliases contained in th
is compilation unit. |
212 * @return the type aliases contained in this compilation unit | 213 * @return the function type aliases contained in this compilation unit |
213 */ | 214 */ |
214 List<TypeAliasElement> get typeAliases; | 215 List<FunctionTypeAliasElement> get functionTypeAliases; |
215 /** | 216 /** |
216 * Return an array containing all of the classes contained in this compilation
unit. | 217 * Return an array containing all of the classes contained in this compilation
unit. |
217 * @return the classes contained in this compilation unit | 218 * @return the classes contained in this compilation unit |
218 */ | 219 */ |
219 List<ClassElement> get types; | 220 List<ClassElement> get types; |
220 } | 221 } |
221 /** | 222 /** |
222 * The interface {@code ConstructorElement} defines the behavior of elements rep
resenting a | 223 * The interface {@code ConstructorElement} defines the behavior of elements rep
resenting a |
223 * constructor or a factory method defined within a type. | 224 * constructor or a factory method defined within a type. |
224 * @coverage dart.engine.element | 225 * @coverage dart.engine.element |
(...skipping 148 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
373 static final ElementKind IMPORT = new ElementKind('IMPORT', 12, "import direct
ive"); | 374 static final ElementKind IMPORT = new ElementKind('IMPORT', 12, "import direct
ive"); |
374 static final ElementKind LABEL = new ElementKind('LABEL', 13, "label"); | 375 static final ElementKind LABEL = new ElementKind('LABEL', 13, "label"); |
375 static final ElementKind LIBRARY = new ElementKind('LIBRARY', 14, "library"); | 376 static final ElementKind LIBRARY = new ElementKind('LIBRARY', 14, "library"); |
376 static final ElementKind LOCAL_VARIABLE = new ElementKind('LOCAL_VARIABLE', 15
, "local variable"); | 377 static final ElementKind LOCAL_VARIABLE = new ElementKind('LOCAL_VARIABLE', 15
, "local variable"); |
377 static final ElementKind METHOD = new ElementKind('METHOD', 16, "method"); | 378 static final ElementKind METHOD = new ElementKind('METHOD', 16, "method"); |
378 static final ElementKind NAME = new ElementKind('NAME', 17, "<name>"); | 379 static final ElementKind NAME = new ElementKind('NAME', 17, "<name>"); |
379 static final ElementKind PARAMETER = new ElementKind('PARAMETER', 18, "paramet
er"); | 380 static final ElementKind PARAMETER = new ElementKind('PARAMETER', 18, "paramet
er"); |
380 static final ElementKind PREFIX = new ElementKind('PREFIX', 19, "import prefix
"); | 381 static final ElementKind PREFIX = new ElementKind('PREFIX', 19, "import prefix
"); |
381 static final ElementKind SETTER = new ElementKind('SETTER', 20, "setter"); | 382 static final ElementKind SETTER = new ElementKind('SETTER', 20, "setter"); |
382 static final ElementKind TOP_LEVEL_VARIABLE = new ElementKind('TOP_LEVEL_VARIA
BLE', 21, "top level variable"); | 383 static final ElementKind TOP_LEVEL_VARIABLE = new ElementKind('TOP_LEVEL_VARIA
BLE', 21, "top level variable"); |
383 static final ElementKind TYPE_ALIAS = new ElementKind('TYPE_ALIAS', 22, "funct
ion type alias"); | 384 static final ElementKind FUNCTION_TYPE_ALIAS = new ElementKind('FUNCTION_TYPE_
ALIAS', 22, "function type alias"); |
384 static final ElementKind TYPE_VARIABLE = new ElementKind('TYPE_VARIABLE', 23,
"type variable"); | 385 static final ElementKind TYPE_VARIABLE = new ElementKind('TYPE_VARIABLE', 23,
"type variable"); |
385 static final ElementKind UNIVERSE = new ElementKind('UNIVERSE', 24, "<universe
>"); | 386 static final ElementKind UNIVERSE = new ElementKind('UNIVERSE', 24, "<universe
>"); |
386 static final List<ElementKind> values = [CLASS, COMPILATION_UNIT, CONSTRUCTOR,
DYNAMIC, EMBEDDED_HTML_SCRIPT, ERROR, EXPORT, EXTERNAL_HTML_SCRIPT, FIELD, FUNC
TION, GETTER, HTML, IMPORT, LABEL, LIBRARY, LOCAL_VARIABLE, METHOD, NAME, PARAME
TER, PREFIX, SETTER, TOP_LEVEL_VARIABLE, TYPE_ALIAS, TYPE_VARIABLE, UNIVERSE]; | 387 static final List<ElementKind> values = [CLASS, COMPILATION_UNIT, CONSTRUCTOR,
DYNAMIC, EMBEDDED_HTML_SCRIPT, ERROR, EXPORT, EXTERNAL_HTML_SCRIPT, FIELD, FUNC
TION, GETTER, HTML, IMPORT, LABEL, LIBRARY, LOCAL_VARIABLE, METHOD, NAME, PARAME
TER, PREFIX, SETTER, TOP_LEVEL_VARIABLE, FUNCTION_TYPE_ALIAS, TYPE_VARIABLE, UNI
VERSE]; |
387 final String __name; | 388 final String __name; |
388 final int __ordinal; | 389 final int __ordinal; |
389 int get ordinal => __ordinal; | 390 int get ordinal => __ordinal; |
390 String _displayName; | 391 String _displayName; |
391 ElementKind(this.__name, this.__ordinal, String displayName) { | 392 ElementKind(this.__name, this.__ordinal, String displayName) { |
392 this._displayName = displayName; | 393 this._displayName = displayName; |
393 } | 394 } |
394 /** | 395 /** |
395 * @return the name of this {@link ElementKind} to display in UI. | 396 * @return the name of this {@link ElementKind} to display in UI. |
396 */ | 397 */ |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
428 R visitImportElement(ImportElement element); | 429 R visitImportElement(ImportElement element); |
429 R visitLabelElement(LabelElement element); | 430 R visitLabelElement(LabelElement element); |
430 R visitLibraryElement(LibraryElement element); | 431 R visitLibraryElement(LibraryElement element); |
431 R visitLocalVariableElement(LocalVariableElement element); | 432 R visitLocalVariableElement(LocalVariableElement element); |
432 R visitMethodElement(MethodElement element); | 433 R visitMethodElement(MethodElement element); |
433 R visitMultiplyDefinedElement(MultiplyDefinedElement element); | 434 R visitMultiplyDefinedElement(MultiplyDefinedElement element); |
434 R visitParameterElement(ParameterElement element); | 435 R visitParameterElement(ParameterElement element); |
435 R visitPrefixElement(PrefixElement element); | 436 R visitPrefixElement(PrefixElement element); |
436 R visitPropertyAccessorElement(PropertyAccessorElement element); | 437 R visitPropertyAccessorElement(PropertyAccessorElement element); |
437 R visitTopLevelVariableElement(TopLevelVariableElement element); | 438 R visitTopLevelVariableElement(TopLevelVariableElement element); |
438 R visitTypeAliasElement(TypeAliasElement element); | 439 R visitFunctionTypeAliasElement(FunctionTypeAliasElement element); |
439 R visitTypeVariableElement(TypeVariableElement element); | 440 R visitTypeVariableElement(TypeVariableElement element); |
440 } | 441 } |
441 /** | 442 /** |
442 * The interface {@code EmbeddedHtmlScriptElement} defines the behavior of eleme
nts representing a | 443 * The interface {@code EmbeddedHtmlScriptElement} defines the behavior of eleme
nts representing a |
443 * script tag in an HTML file having content that defines a Dart library. | 444 * script tag in an HTML file having content that defines a Dart library. |
444 * @coverage dart.engine.element | 445 * @coverage dart.engine.element |
445 */ | 446 */ |
446 abstract class EmbeddedHtmlScriptElement implements HtmlScriptElement { | 447 abstract class EmbeddedHtmlScriptElement implements HtmlScriptElement { |
447 /** | 448 /** |
448 * Return the library element defined by the content of the script tag. | 449 * Return the library element defined by the content of the script tag. |
(...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
536 */ | 537 */ |
537 ClassElement get enclosingElement; | 538 ClassElement get enclosingElement; |
538 } | 539 } |
539 /** | 540 /** |
540 * The interface {@code FunctionElement} defines the behavior of elements repres
enting a function. | 541 * The interface {@code FunctionElement} defines the behavior of elements repres
enting a function. |
541 * @coverage dart.engine.element | 542 * @coverage dart.engine.element |
542 */ | 543 */ |
543 abstract class FunctionElement implements ExecutableElement, LocalElement { | 544 abstract class FunctionElement implements ExecutableElement, LocalElement { |
544 } | 545 } |
545 /** | 546 /** |
| 547 * The interface {@code FunctionTypeAliasElement} defines the behavior of elemen
ts representing a |
| 548 * function type alias ({@code typedef}). |
| 549 * @coverage dart.engine.element |
| 550 */ |
| 551 abstract class FunctionTypeAliasElement implements Element { |
| 552 /** |
| 553 * Return the compilation unit in which this type alias is defined. |
| 554 * @return the compilation unit in which this type alias is defined |
| 555 */ |
| 556 CompilationUnitElement get enclosingElement; |
| 557 /** |
| 558 * Return an array containing all of the parameters defined by this type alias
. |
| 559 * @return the parameters defined by this type alias |
| 560 */ |
| 561 List<ParameterElement> get parameters; |
| 562 /** |
| 563 * Return the type of function defined by this type alias. |
| 564 * @return the type of function defined by this type alias |
| 565 */ |
| 566 FunctionType get type; |
| 567 /** |
| 568 * Return an array containing all of the type variables defined for this type. |
| 569 * @return the type variables defined for this type |
| 570 */ |
| 571 List<TypeVariableElement> get typeVariables; |
| 572 } |
| 573 /** |
546 * The interface {@code HideCombinator} defines the behavior of combinators that
cause some of the | 574 * The interface {@code HideCombinator} defines the behavior of combinators that
cause some of the |
547 * names in a namespace to be hidden when being imported. | 575 * names in a namespace to be hidden when being imported. |
548 * @coverage dart.engine.element | 576 * @coverage dart.engine.element |
549 */ | 577 */ |
550 abstract class HideCombinator implements NamespaceCombinator { | 578 abstract class HideCombinator implements NamespaceCombinator { |
551 /** | 579 /** |
552 * Return an array containing the names that are not to be made visible in the
importing library | 580 * Return an array containing the names that are not to be made visible in the
importing library |
553 * even if they are defined in the imported library. | 581 * even if they are defined in the imported library. |
554 * @return the names from the imported library that are hidden from the import
ing library | 582 * @return the names from the imported library that are hidden from the import
ing library |
555 */ | 583 */ |
(...skipping 324 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
880 List<String> get shownNames; | 908 List<String> get shownNames; |
881 } | 909 } |
882 /** | 910 /** |
883 * The interface {@code TopLevelVariableElement} defines the behavior of element
s representing a | 911 * The interface {@code TopLevelVariableElement} defines the behavior of element
s representing a |
884 * top-level variable. | 912 * top-level variable. |
885 * @coverage dart.engine.element | 913 * @coverage dart.engine.element |
886 */ | 914 */ |
887 abstract class TopLevelVariableElement implements PropertyInducingElement { | 915 abstract class TopLevelVariableElement implements PropertyInducingElement { |
888 } | 916 } |
889 /** | 917 /** |
890 * The interface {@code TypeAliasElement} defines the behavior of elements repre
senting a type alias | |
891 * ({@code typedef}). | |
892 * @coverage dart.engine.element | |
893 */ | |
894 abstract class TypeAliasElement implements Element { | |
895 /** | |
896 * Return the compilation unit in which this type alias is defined. | |
897 * @return the compilation unit in which this type alias is defined | |
898 */ | |
899 CompilationUnitElement get enclosingElement; | |
900 /** | |
901 * Return an array containing all of the parameters defined by this type alias
. | |
902 * @return the parameters defined by this type alias | |
903 */ | |
904 List<ParameterElement> get parameters; | |
905 /** | |
906 * Return the type of function defined by this type alias. | |
907 * @return the type of function defined by this type alias | |
908 */ | |
909 FunctionType get type; | |
910 /** | |
911 * Return an array containing all of the type variables defined for this type. | |
912 * @return the type variables defined for this type | |
913 */ | |
914 List<TypeVariableElement> get typeVariables; | |
915 } | |
916 /** | |
917 * The interface {@code TypeVariableElement} defines the behavior of elements re
presenting a type | 918 * The interface {@code TypeVariableElement} defines the behavior of elements re
presenting a type |
918 * variable. | 919 * variable. |
919 * @coverage dart.engine.element | 920 * @coverage dart.engine.element |
920 */ | 921 */ |
921 abstract class TypeVariableElement implements Element { | 922 abstract class TypeVariableElement implements Element { |
922 /** | 923 /** |
923 * Return the type representing the bound associated with this variable, or {@
code null} if this | 924 * Return the type representing the bound associated with this variable, or {@
code null} if this |
924 * variable does not have an explicit bound. | 925 * variable does not have an explicit bound. |
925 * @return the type representing the bound associated with this variable | 926 * @return the type representing the bound associated with this variable |
926 */ | 927 */ |
(...skipping 125 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1052 return null; | 1053 return null; |
1053 } | 1054 } |
1054 R visitLocalVariableElement(LocalVariableElement element) => visitLocalElement
(element); | 1055 R visitLocalVariableElement(LocalVariableElement element) => visitLocalElement
(element); |
1055 R visitMethodElement(MethodElement element) => visitExecutableElement(element)
; | 1056 R visitMethodElement(MethodElement element) => visitExecutableElement(element)
; |
1056 R visitMultiplyDefinedElement(MultiplyDefinedElement element) => visitElement(
element); | 1057 R visitMultiplyDefinedElement(MultiplyDefinedElement element) => visitElement(
element); |
1057 R visitParameterElement(ParameterElement element) => visitLocalElement(element
); | 1058 R visitParameterElement(ParameterElement element) => visitLocalElement(element
); |
1058 R visitPrefixElement(PrefixElement element) => visitElement(element); | 1059 R visitPrefixElement(PrefixElement element) => visitElement(element); |
1059 R visitPropertyAccessorElement(PropertyAccessorElement element) => visitExecut
ableElement(element); | 1060 R visitPropertyAccessorElement(PropertyAccessorElement element) => visitExecut
ableElement(element); |
1060 R visitPropertyInducingElement(PropertyInducingElement element) => visitVariab
leElement(element); | 1061 R visitPropertyInducingElement(PropertyInducingElement element) => visitVariab
leElement(element); |
1061 R visitTopLevelVariableElement(TopLevelVariableElement element) => visitProper
tyInducingElement(element); | 1062 R visitTopLevelVariableElement(TopLevelVariableElement element) => visitProper
tyInducingElement(element); |
1062 R visitTypeAliasElement(TypeAliasElement element) => visitElement(element); | 1063 R visitFunctionTypeAliasElement(FunctionTypeAliasElement element) => visitElem
ent(element); |
1063 R visitTypeVariableElement(TypeVariableElement element) => visitElement(elemen
t); | 1064 R visitTypeVariableElement(TypeVariableElement element) => visitElement(elemen
t); |
1064 R visitVariableElement(VariableElement element) => visitElement(element); | 1065 R visitVariableElement(VariableElement element) => visitElement(element); |
1065 } | 1066 } |
1066 /** | 1067 /** |
1067 * Instances of the class {@code RecursiveElementVisitor} implement an element v
isitor that will | 1068 * Instances of the class {@code RecursiveElementVisitor} implement an element v
isitor that will |
1068 * recursively visit all of the element in an element model. For example, using
an instance of this | 1069 * recursively visit all of the element in an element model. For example, using
an instance of this |
1069 * class to visit a {@link CompilationUnitElement} will also cause all of the ty
pes in the | 1070 * class to visit a {@link CompilationUnitElement} will also cause all of the ty
pes in the |
1070 * compilation unit to be visited. | 1071 * compilation unit to be visited. |
1071 * <p> | 1072 * <p> |
1072 * Subclasses that override a visit method must either invoke the overridden vis
it method or must | 1073 * Subclasses that override a visit method must either invoke the overridden vis
it method or must |
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1144 return null; | 1145 return null; |
1145 } | 1146 } |
1146 R visitPropertyAccessorElement(PropertyAccessorElement element) { | 1147 R visitPropertyAccessorElement(PropertyAccessorElement element) { |
1147 element.visitChildren(this); | 1148 element.visitChildren(this); |
1148 return null; | 1149 return null; |
1149 } | 1150 } |
1150 R visitTopLevelVariableElement(TopLevelVariableElement element) { | 1151 R visitTopLevelVariableElement(TopLevelVariableElement element) { |
1151 element.visitChildren(this); | 1152 element.visitChildren(this); |
1152 return null; | 1153 return null; |
1153 } | 1154 } |
1154 R visitTypeAliasElement(TypeAliasElement element) { | 1155 R visitFunctionTypeAliasElement(FunctionTypeAliasElement element) { |
1155 element.visitChildren(this); | 1156 element.visitChildren(this); |
1156 return null; | 1157 return null; |
1157 } | 1158 } |
1158 R visitTypeVariableElement(TypeVariableElement element) { | 1159 R visitTypeVariableElement(TypeVariableElement element) { |
1159 element.visitChildren(this); | 1160 element.visitChildren(this); |
1160 return null; | 1161 return null; |
1161 } | 1162 } |
1162 } | 1163 } |
1163 /** | 1164 /** |
1164 * Instances of the class {@code SimpleElementVisitor} implement an element visi
tor that will do | 1165 * Instances of the class {@code SimpleElementVisitor} implement an element visi
tor that will do |
(...skipping 15 matching lines...) Expand all Loading... |
1180 R visitImportElement(ImportElement element) => null; | 1181 R visitImportElement(ImportElement element) => null; |
1181 R visitLabelElement(LabelElement element) => null; | 1182 R visitLabelElement(LabelElement element) => null; |
1182 R visitLibraryElement(LibraryElement element) => null; | 1183 R visitLibraryElement(LibraryElement element) => null; |
1183 R visitLocalVariableElement(LocalVariableElement element) => null; | 1184 R visitLocalVariableElement(LocalVariableElement element) => null; |
1184 R visitMethodElement(MethodElement element) => null; | 1185 R visitMethodElement(MethodElement element) => null; |
1185 R visitMultiplyDefinedElement(MultiplyDefinedElement element) => null; | 1186 R visitMultiplyDefinedElement(MultiplyDefinedElement element) => null; |
1186 R visitParameterElement(ParameterElement element) => null; | 1187 R visitParameterElement(ParameterElement element) => null; |
1187 R visitPrefixElement(PrefixElement element) => null; | 1188 R visitPrefixElement(PrefixElement element) => null; |
1188 R visitPropertyAccessorElement(PropertyAccessorElement element) => null; | 1189 R visitPropertyAccessorElement(PropertyAccessorElement element) => null; |
1189 R visitTopLevelVariableElement(TopLevelVariableElement element) => null; | 1190 R visitTopLevelVariableElement(TopLevelVariableElement element) => null; |
1190 R visitTypeAliasElement(TypeAliasElement element) => null; | 1191 R visitFunctionTypeAliasElement(FunctionTypeAliasElement element) => null; |
1191 R visitTypeVariableElement(TypeVariableElement element) => null; | 1192 R visitTypeVariableElement(TypeVariableElement element) => null; |
1192 } | 1193 } |
1193 /** | 1194 /** |
1194 * Instances of the class {@code AnnotationImpl} implement an {@link Annotation}
. | 1195 * Instances of the class {@code AnnotationImpl} implement an {@link Annotation}
. |
1195 * @coverage dart.engine.element | 1196 * @coverage dart.engine.element |
1196 */ | 1197 */ |
1197 class AnnotationImpl implements Annotation { | 1198 class AnnotationImpl implements Annotation { |
1198 /** | 1199 /** |
1199 * The element representing the field, variable, or constructor being used as
an annotation. | 1200 * The element representing the field, variable, or constructor being used as
an annotation. |
1200 */ | 1201 */ |
(...skipping 409 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1610 List<FunctionElement> _functions = FunctionElementImpl.EMPTY_ARRAY; | 1611 List<FunctionElement> _functions = FunctionElementImpl.EMPTY_ARRAY; |
1611 /** | 1612 /** |
1612 * An array containing all of the variables contained in this compilation unit
. | 1613 * An array containing all of the variables contained in this compilation unit
. |
1613 */ | 1614 */ |
1614 List<TopLevelVariableElement> _variables = TopLevelVariableElementImpl.EMPTY_A
RRAY; | 1615 List<TopLevelVariableElement> _variables = TopLevelVariableElementImpl.EMPTY_A
RRAY; |
1615 /** | 1616 /** |
1616 * The source that corresponds to this compilation unit. | 1617 * The source that corresponds to this compilation unit. |
1617 */ | 1618 */ |
1618 Source _source; | 1619 Source _source; |
1619 /** | 1620 /** |
1620 * An array containing all of the type aliases contained in this compilation u
nit. | 1621 * An array containing all of the function type aliases contained in this comp
ilation unit. |
1621 */ | 1622 */ |
1622 List<TypeAliasElement> _typeAliases = TypeAliasElementImpl.EMPTY_ARRAY; | 1623 List<FunctionTypeAliasElement> _typeAliases = FunctionTypeAliasElementImpl.EMP
TY_ARRAY; |
1623 /** | 1624 /** |
1624 * An array containing all of the types contained in this compilation unit. | 1625 * An array containing all of the types contained in this compilation unit. |
1625 */ | 1626 */ |
1626 List<ClassElement> _types = ClassElementImpl.EMPTY_ARRAY; | 1627 List<ClassElement> _types = ClassElementImpl.EMPTY_ARRAY; |
1627 /** | 1628 /** |
1628 * An empty array of compilation unit elements. | 1629 * An empty array of compilation unit elements. |
1629 */ | 1630 */ |
1630 static List<CompilationUnitElement> EMPTY_ARRAY = new List<CompilationUnitElem
ent>(0); | 1631 static List<CompilationUnitElement> EMPTY_ARRAY = new List<CompilationUnitElem
ent>(0); |
1631 /** | 1632 /** |
1632 * Initialize a newly created compilation unit element to have the given name. | 1633 * Initialize a newly created compilation unit element to have the given name. |
1633 * @param name the name of this element | 1634 * @param name the name of this element |
1634 */ | 1635 */ |
1635 CompilationUnitElementImpl(String name) : super.con2(name, -1) { | 1636 CompilationUnitElementImpl(String name) : super.con2(name, -1) { |
1636 } | 1637 } |
1637 accept(ElementVisitor visitor) => visitor.visitCompilationUnitElement(this); | 1638 accept(ElementVisitor visitor) => visitor.visitCompilationUnitElement(this); |
1638 bool operator ==(Object object) => identical(runtimeType, object.runtimeType)
&& _source == ((object as CompilationUnitElementImpl)).source; | 1639 bool operator ==(Object object) => object != null && identical(runtimeType, ob
ject.runtimeType) && _source == ((object as CompilationUnitElementImpl)).source; |
1639 List<PropertyAccessorElement> get accessors => _accessors; | 1640 List<PropertyAccessorElement> get accessors => _accessors; |
1640 ElementImpl getChild(String identifier26) { | 1641 ElementImpl getChild(String identifier26) { |
1641 for (PropertyAccessorElement accessor in _accessors) { | 1642 for (PropertyAccessorElement accessor in _accessors) { |
1642 if (((accessor as PropertyAccessorElementImpl)).identifier == identifier26
) { | 1643 if (((accessor as PropertyAccessorElementImpl)).identifier == identifier26
) { |
1643 return accessor as PropertyAccessorElementImpl; | 1644 return accessor as PropertyAccessorElementImpl; |
1644 } | 1645 } |
1645 } | 1646 } |
1646 for (VariableElement variable in _variables) { | 1647 for (VariableElement variable in _variables) { |
1647 if (((variable as VariableElementImpl)).identifier == identifier26) { | 1648 if (((variable as VariableElementImpl)).identifier == identifier26) { |
1648 return variable as VariableElementImpl; | 1649 return variable as VariableElementImpl; |
1649 } | 1650 } |
1650 } | 1651 } |
1651 for (ExecutableElement function in _functions) { | 1652 for (ExecutableElement function in _functions) { |
1652 if (((function as ExecutableElementImpl)).identifier == identifier26) { | 1653 if (((function as ExecutableElementImpl)).identifier == identifier26) { |
1653 return function as ExecutableElementImpl; | 1654 return function as ExecutableElementImpl; |
1654 } | 1655 } |
1655 } | 1656 } |
1656 for (TypeAliasElement typeAlias in _typeAliases) { | 1657 for (FunctionTypeAliasElement typeAlias in _typeAliases) { |
1657 if (((typeAlias as TypeAliasElementImpl)).identifier == identifier26) { | 1658 if (((typeAlias as FunctionTypeAliasElementImpl)).identifier == identifier
26) { |
1658 return typeAlias as TypeAliasElementImpl; | 1659 return typeAlias as FunctionTypeAliasElementImpl; |
1659 } | 1660 } |
1660 } | 1661 } |
1661 for (ClassElement type in _types) { | 1662 for (ClassElement type in _types) { |
1662 if (((type as ClassElementImpl)).identifier == identifier26) { | 1663 if (((type as ClassElementImpl)).identifier == identifier26) { |
1663 return type as ClassElementImpl; | 1664 return type as ClassElementImpl; |
1664 } | 1665 } |
1665 } | 1666 } |
1666 return null; | 1667 return null; |
1667 } | 1668 } |
1668 LibraryElement get enclosingElement => super.enclosingElement as LibraryElemen
t; | 1669 LibraryElement get enclosingElement => super.enclosingElement as LibraryElemen
t; |
1669 List<FunctionElement> get functions => _functions; | 1670 List<FunctionElement> get functions => _functions; |
| 1671 List<FunctionTypeAliasElement> get functionTypeAliases => _typeAliases; |
1670 String get identifier => source.fullName; | 1672 String get identifier => source.fullName; |
1671 ElementKind get kind => ElementKind.COMPILATION_UNIT; | 1673 ElementKind get kind => ElementKind.COMPILATION_UNIT; |
1672 Source get source => _source; | 1674 Source get source => _source; |
1673 List<TopLevelVariableElement> get topLevelVariables => _variables; | 1675 List<TopLevelVariableElement> get topLevelVariables => _variables; |
1674 List<TypeAliasElement> get typeAliases => _typeAliases; | |
1675 List<ClassElement> get types => _types; | 1676 List<ClassElement> get types => _types; |
1676 int get hashCode => _source.hashCode; | 1677 int get hashCode => _source.hashCode; |
1677 /** | 1678 /** |
1678 * Set the top-level accessors (getters and setters) contained in this compila
tion unit to the | 1679 * Set the top-level accessors (getters and setters) contained in this compila
tion unit to the |
1679 * given accessors. | 1680 * given accessors. |
1680 * @param the top-level accessors (getters and setters) contained in this comp
ilation unit | 1681 * @param the top-level accessors (getters and setters) contained in this comp
ilation unit |
1681 */ | 1682 */ |
1682 void set accessors(List<PropertyAccessorElement> accessors3) { | 1683 void set accessors(List<PropertyAccessorElement> accessors3) { |
1683 for (PropertyAccessorElement accessor in accessors3) { | 1684 for (PropertyAccessorElement accessor in accessors3) { |
1684 ((accessor as PropertyAccessorElementImpl)).enclosingElement = this; | 1685 ((accessor as PropertyAccessorElementImpl)).enclosingElement = this; |
(...skipping 21 matching lines...) Expand all Loading... |
1706 * Set the top-level variables contained in this compilation unit to the given
variables. | 1707 * Set the top-level variables contained in this compilation unit to the given
variables. |
1707 * @param variables the top-level variables contained in this compilation unit | 1708 * @param variables the top-level variables contained in this compilation unit |
1708 */ | 1709 */ |
1709 void set topLevelVariables(List<TopLevelVariableElement> variables2) { | 1710 void set topLevelVariables(List<TopLevelVariableElement> variables2) { |
1710 for (TopLevelVariableElement field in variables2) { | 1711 for (TopLevelVariableElement field in variables2) { |
1711 ((field as TopLevelVariableElementImpl)).enclosingElement = this; | 1712 ((field as TopLevelVariableElementImpl)).enclosingElement = this; |
1712 } | 1713 } |
1713 this._variables = variables2; | 1714 this._variables = variables2; |
1714 } | 1715 } |
1715 /** | 1716 /** |
1716 * Set the type aliases contained in this compilation unit to the given type a
liases. | 1717 * Set the function type aliases contained in this compilation unit to the giv
en type aliases. |
1717 * @param typeAliases the type aliases contained in this compilation unit | 1718 * @param typeAliases the function type aliases contained in this compilation
unit |
1718 */ | 1719 */ |
1719 void set typeAliases(List<TypeAliasElement> typeAliases2) { | 1720 void set typeAliases(List<FunctionTypeAliasElement> typeAliases2) { |
1720 for (TypeAliasElement typeAlias in typeAliases2) { | 1721 for (FunctionTypeAliasElement typeAlias in typeAliases2) { |
1721 ((typeAlias as TypeAliasElementImpl)).enclosingElement = this; | 1722 ((typeAlias as FunctionTypeAliasElementImpl)).enclosingElement = this; |
1722 } | 1723 } |
1723 this._typeAliases = typeAliases2; | 1724 this._typeAliases = typeAliases2; |
1724 } | 1725 } |
1725 /** | 1726 /** |
1726 * Set the types contained in this compilation unit to the given types. | 1727 * Set the types contained in this compilation unit to the given types. |
1727 * @param types types contained in this compilation unit | 1728 * @param types types contained in this compilation unit |
1728 */ | 1729 */ |
1729 void set types(List<ClassElement> types2) { | 1730 void set types(List<ClassElement> types2) { |
1730 for (ClassElement type in types2) { | 1731 for (ClassElement type in types2) { |
1731 ((type as ClassElementImpl)).enclosingElement = this; | 1732 ((type as ClassElementImpl)).enclosingElement = this; |
(...skipping 10 matching lines...) Expand all Loading... |
1742 } | 1743 } |
1743 void appendTo(JavaStringBuilder builder) { | 1744 void appendTo(JavaStringBuilder builder) { |
1744 if (_source == null) { | 1745 if (_source == null) { |
1745 builder.append("{compilation unit}"); | 1746 builder.append("{compilation unit}"); |
1746 } else { | 1747 } else { |
1747 builder.append(_source.fullName); | 1748 builder.append(_source.fullName); |
1748 } | 1749 } |
1749 } | 1750 } |
1750 } | 1751 } |
1751 /** | 1752 /** |
| 1753 * Instances of the class {@code ConstFieldElementImpl} implement a {@code Field
Element} for a |
| 1754 * 'const' field that has an initializer. |
| 1755 */ |
| 1756 class ConstFieldElementImpl extends FieldElementImpl { |
| 1757 /** |
| 1758 * The result of evaluating this variable's initializer. |
| 1759 */ |
| 1760 EvaluationResultImpl _result; |
| 1761 /** |
| 1762 * Initialize a newly created field element to have the given name. |
| 1763 * @param name the name of this element |
| 1764 */ |
| 1765 ConstFieldElementImpl(Identifier name) : super.con1(name) { |
| 1766 } |
| 1767 EvaluationResultImpl get evaluationResult => _result; |
| 1768 void set evaluationResult(EvaluationResultImpl result2) { |
| 1769 this._result = result2; |
| 1770 } |
| 1771 } |
| 1772 /** |
| 1773 * Instances of the class {@code ConstLocalVariableElementImpl} implement a{@cod
e LocalVariableElement} for a local 'const' variable that has an initializer. |
| 1774 * @coverage dart.engine.element |
| 1775 */ |
| 1776 class ConstLocalVariableElementImpl extends LocalVariableElementImpl { |
| 1777 /** |
| 1778 * The result of evaluating this variable's initializer. |
| 1779 */ |
| 1780 EvaluationResultImpl _result; |
| 1781 /** |
| 1782 * Initialize a newly created local variable element to have the given name. |
| 1783 * @param name the name of this element |
| 1784 */ |
| 1785 ConstLocalVariableElementImpl(Identifier name) : super(name) { |
| 1786 } |
| 1787 EvaluationResultImpl get evaluationResult => _result; |
| 1788 void set evaluationResult(EvaluationResultImpl result3) { |
| 1789 this._result = result3; |
| 1790 } |
| 1791 } |
| 1792 /** |
| 1793 * Instances of the class {@code ConstParameterElementImpl} implement a {@code P
arameterElement} for |
| 1794 * a 'const' parameter that has an initializer. |
| 1795 * @coverage dart.engine.element |
| 1796 */ |
| 1797 class ConstParameterElementImpl extends ParameterElementImpl { |
| 1798 /** |
| 1799 * The result of evaluating this variable's initializer. |
| 1800 */ |
| 1801 EvaluationResultImpl _result; |
| 1802 /** |
| 1803 * Initialize a newly created parameter element to have the given name. |
| 1804 * @param name the name of this element |
| 1805 */ |
| 1806 ConstParameterElementImpl(Identifier name) : super(name) { |
| 1807 } |
| 1808 EvaluationResultImpl get evaluationResult => _result; |
| 1809 void set evaluationResult(EvaluationResultImpl result4) { |
| 1810 this._result = result4; |
| 1811 } |
| 1812 } |
| 1813 /** |
| 1814 * Instances of the class {@code ConstTopLevelVariableElementImpl} implement a{@
code TopLevelVariableElement} for a top-level 'const' variable that has an initi
alizer. |
| 1815 */ |
| 1816 class ConstTopLevelVariableElementImpl extends TopLevelVariableElementImpl { |
| 1817 /** |
| 1818 * The result of evaluating this variable's initializer. |
| 1819 */ |
| 1820 EvaluationResultImpl _result; |
| 1821 /** |
| 1822 * Initialize a newly created top-level variable element to have the given nam
e. |
| 1823 * @param name the name of this element |
| 1824 */ |
| 1825 ConstTopLevelVariableElementImpl(Identifier name) : super.con1(name) { |
| 1826 } |
| 1827 EvaluationResultImpl get evaluationResult => _result; |
| 1828 void set evaluationResult(EvaluationResultImpl result5) { |
| 1829 this._result = result5; |
| 1830 } |
| 1831 } |
| 1832 /** |
1752 * Instances of the class {@code ConstructorElementImpl} implement a {@code Cons
tructorElement}. | 1833 * Instances of the class {@code ConstructorElementImpl} implement a {@code Cons
tructorElement}. |
1753 * @coverage dart.engine.element | 1834 * @coverage dart.engine.element |
1754 */ | 1835 */ |
1755 class ConstructorElementImpl extends ExecutableElementImpl implements Constructo
rElement { | 1836 class ConstructorElementImpl extends ExecutableElementImpl implements Constructo
rElement { |
1756 /** | 1837 /** |
1757 * An empty array of constructor elements. | 1838 * An empty array of constructor elements. |
1758 */ | 1839 */ |
1759 static List<ConstructorElement> EMPTY_ARRAY = new List<ConstructorElement>(0); | 1840 static List<ConstructorElement> EMPTY_ARRAY = new List<ConstructorElement>(0); |
1760 /** | 1841 /** |
1761 * Initialize a newly created constructor element to have the given name. | 1842 * Initialize a newly created constructor element to have the given name. |
1762 * @param name the name of this element | 1843 * @param name the name of this element |
1763 */ | 1844 */ |
1764 ConstructorElementImpl(Identifier name) : super.con1(name) { | 1845 ConstructorElementImpl(Identifier name) : super.con1(name) { |
1765 } | 1846 } |
1766 accept(ElementVisitor visitor) => visitor.visitConstructorElement(this); | 1847 accept(ElementVisitor visitor) => visitor.visitConstructorElement(this); |
1767 ClassElement get enclosingElement => super.enclosingElement as ClassElement; | 1848 ClassElement get enclosingElement => super.enclosingElement as ClassElement; |
1768 ElementKind get kind => ElementKind.CONSTRUCTOR; | 1849 ElementKind get kind => ElementKind.CONSTRUCTOR; |
1769 bool isConst() => hasModifier(Modifier.CONST); | 1850 bool isConst() => hasModifier(Modifier.CONST); |
1770 bool isFactory() => hasModifier(Modifier.FACTORY); | 1851 bool isFactory() => hasModifier(Modifier.FACTORY); |
1771 bool isStatic() => false; | 1852 bool isStatic() => false; |
1772 /** | 1853 /** |
| 1854 * Set whether this constructor represents a 'const' constructor to the given
value. |
| 1855 * @param isConst {@code true} if this constructor represents a 'const' constr
uctor |
| 1856 */ |
| 1857 void set const2(bool isConst) { |
| 1858 setModifier(Modifier.CONST, isConst); |
| 1859 } |
| 1860 /** |
1773 * Set whether this constructor represents a factory method to the given value
. | 1861 * Set whether this constructor represents a factory method to the given value
. |
1774 * @param isFactory {@code true} if this constructor represents a factory meth
od | 1862 * @param isFactory {@code true} if this constructor represents a factory meth
od |
1775 */ | 1863 */ |
1776 void set factory(bool isFactory) { | 1864 void set factory(bool isFactory) { |
1777 setModifier(Modifier.FACTORY, isFactory); | 1865 setModifier(Modifier.FACTORY, isFactory); |
1778 } | 1866 } |
1779 void appendTo(JavaStringBuilder builder) { | 1867 void appendTo(JavaStringBuilder builder) { |
1780 builder.append(enclosingElement.name); | 1868 builder.append(enclosingElement.name); |
1781 String name12 = name; | 1869 String name12 = name; |
1782 if (name12 != null && !name12.isEmpty) { | 1870 if (name12 != null && !name12.isEmpty) { |
(...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1850 Set<Modifier> _modifiers; | 1938 Set<Modifier> _modifiers; |
1851 /** | 1939 /** |
1852 * An array containing all of the metadata associated with this element. | 1940 * An array containing all of the metadata associated with this element. |
1853 */ | 1941 */ |
1854 List<Annotation> _metadata = AnnotationImpl.EMPTY_ARRAY; | 1942 List<Annotation> _metadata = AnnotationImpl.EMPTY_ARRAY; |
1855 /** | 1943 /** |
1856 * Initialize a newly created element to have the given name. | 1944 * Initialize a newly created element to have the given name. |
1857 * @param name the name of this element | 1945 * @param name the name of this element |
1858 */ | 1946 */ |
1859 ElementImpl.con1(Identifier name24) { | 1947 ElementImpl.con1(Identifier name24) { |
1860 _jtd_constructor_161_impl(name24); | 1948 _jtd_constructor_172_impl(name24); |
1861 } | 1949 } |
1862 _jtd_constructor_161_impl(Identifier name24) { | 1950 _jtd_constructor_172_impl(Identifier name24) { |
1863 _jtd_constructor_162_impl(name24 == null ? "" : name24.name, name24 == null
? -1 : name24.offset); | 1951 _jtd_constructor_173_impl(name24 == null ? "" : name24.name, name24 == null
? -1 : name24.offset); |
1864 } | 1952 } |
1865 /** | 1953 /** |
1866 * Initialize a newly created element to have the given name. | 1954 * Initialize a newly created element to have the given name. |
1867 * @param name the name of this element | 1955 * @param name the name of this element |
1868 * @param nameOffset the offset of the name of this element in the file that c
ontains the | 1956 * @param nameOffset the offset of the name of this element in the file that c
ontains the |
1869 * declaration of this element | 1957 * declaration of this element |
1870 */ | 1958 */ |
1871 ElementImpl.con2(String name8, int nameOffset2) { | 1959 ElementImpl.con2(String name8, int nameOffset2) { |
1872 _jtd_constructor_162_impl(name8, nameOffset2); | 1960 _jtd_constructor_173_impl(name8, nameOffset2); |
1873 } | 1961 } |
1874 _jtd_constructor_162_impl(String name8, int nameOffset2) { | 1962 _jtd_constructor_173_impl(String name8, int nameOffset2) { |
1875 this._name = name8; | 1963 this._name = name8; |
1876 this._nameOffset = nameOffset2; | 1964 this._nameOffset = nameOffset2; |
1877 this._modifiers = new Set(); | 1965 this._modifiers = new Set(); |
1878 } | 1966 } |
1879 bool operator ==(Object object) => object != null && identical(object.runtimeT
ype, runtimeType) && ((object as Element)).location == location; | 1967 bool operator ==(Object object) => object != null && identical(object.runtimeT
ype, runtimeType) && ((object as Element)).location == location; |
1880 Element getAncestor(Type elementClass) { | 1968 Element getAncestor(Type elementClass) { |
1881 Element ancestor = _enclosingElement; | 1969 Element ancestor = _enclosingElement; |
1882 while (ancestor != null && !isInstanceOf(ancestor, elementClass)) { | 1970 while (ancestor != null && !isInstanceOf(ancestor, elementClass)) { |
1883 ancestor = ancestor.enclosingElement; | 1971 ancestor = ancestor.enclosingElement; |
1884 } | 1972 } |
(...skipping 17 matching lines...) Expand all Loading... |
1902 List<Annotation> get metadata => _metadata; | 1990 List<Annotation> get metadata => _metadata; |
1903 String get name => _name; | 1991 String get name => _name; |
1904 int get nameOffset => _nameOffset; | 1992 int get nameOffset => _nameOffset; |
1905 Source get source { | 1993 Source get source { |
1906 if (_enclosingElement == null) { | 1994 if (_enclosingElement == null) { |
1907 return null; | 1995 return null; |
1908 } | 1996 } |
1909 return _enclosingElement.source; | 1997 return _enclosingElement.source; |
1910 } | 1998 } |
1911 int get hashCode => location.hashCode; | 1999 int get hashCode => location.hashCode; |
1912 bool isAccessibleIn(LibraryElement library20) { | 2000 bool isAccessibleIn(LibraryElement library21) { |
1913 if (Identifier.isPrivateName(_name)) { | 2001 if (Identifier.isPrivateName(_name)) { |
1914 return library20 == library; | 2002 return library21 == library; |
1915 } | 2003 } |
1916 return true; | 2004 return true; |
1917 } | 2005 } |
1918 bool isSynthetic() => hasModifier(Modifier.SYNTHETIC); | 2006 bool isSynthetic() => hasModifier(Modifier.SYNTHETIC); |
1919 /** | 2007 /** |
1920 * Set the metadata associate with this element to the given array of annotati
ons. | 2008 * Set the metadata associate with this element to the given array of annotati
ons. |
1921 * @param metadata the metadata to be associated with this element | 2009 * @param metadata the metadata to be associated with this element |
1922 */ | 2010 */ |
1923 void set metadata(List<Annotation> metadata2) { | 2011 void set metadata(List<Annotation> metadata2) { |
1924 this._metadata = metadata2; | 2012 this._metadata = metadata2; |
(...skipping 91 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2016 List<String> _components; | 2104 List<String> _components; |
2017 /** | 2105 /** |
2018 * The character used to separate components in the encoded form. | 2106 * The character used to separate components in the encoded form. |
2019 */ | 2107 */ |
2020 static int _SEPARATOR_CHAR = 0x3B; | 2108 static int _SEPARATOR_CHAR = 0x3B; |
2021 /** | 2109 /** |
2022 * Initialize a newly created location to represent the given element. | 2110 * Initialize a newly created location to represent the given element. |
2023 * @param element the element whose location is being represented | 2111 * @param element the element whose location is being represented |
2024 */ | 2112 */ |
2025 ElementLocationImpl.con1(Element element) { | 2113 ElementLocationImpl.con1(Element element) { |
2026 _jtd_constructor_163_impl(element); | 2114 _jtd_constructor_174_impl(element); |
2027 } | 2115 } |
2028 _jtd_constructor_163_impl(Element element) { | 2116 _jtd_constructor_174_impl(Element element) { |
2029 List<String> components = new List<String>(); | 2117 List<String> components = new List<String>(); |
2030 Element ancestor = element; | 2118 Element ancestor = element; |
2031 while (ancestor != null) { | 2119 while (ancestor != null) { |
2032 components.insertRange(0, 1, ((ancestor as ElementImpl)).identifier); | 2120 components.insertRange(0, 1, ((ancestor as ElementImpl)).identifier); |
2033 ancestor = ancestor.enclosingElement; | 2121 ancestor = ancestor.enclosingElement; |
2034 } | 2122 } |
2035 this._components = new List.from(components); | 2123 this._components = new List.from(components); |
2036 } | 2124 } |
2037 /** | 2125 /** |
2038 * Initialize a newly created location from the given encoded form. | 2126 * Initialize a newly created location from the given encoded form. |
2039 * @param encoding the encoded form of a location | 2127 * @param encoding the encoded form of a location |
2040 */ | 2128 */ |
2041 ElementLocationImpl.con2(String encoding) { | 2129 ElementLocationImpl.con2(String encoding) { |
2042 _jtd_constructor_164_impl(encoding); | 2130 _jtd_constructor_175_impl(encoding); |
2043 } | 2131 } |
2044 _jtd_constructor_164_impl(String encoding) { | 2132 _jtd_constructor_175_impl(String encoding) { |
2045 this._components = decode(encoding); | 2133 this._components = decode(encoding); |
2046 } | 2134 } |
2047 bool operator ==(Object object) { | 2135 bool operator ==(Object object) { |
2048 if (object is! ElementLocationImpl) { | 2136 if (object is! ElementLocationImpl) { |
2049 return false; | 2137 return false; |
2050 } | 2138 } |
2051 ElementLocationImpl location = object as ElementLocationImpl; | 2139 ElementLocationImpl location = object as ElementLocationImpl; |
2052 return JavaArrays.equals(_components, location._components); | 2140 return JavaArrays.equals(_components, location._components); |
2053 } | 2141 } |
2054 /** | 2142 /** |
(...skipping 118 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2173 FunctionType _type; | 2261 FunctionType _type; |
2174 /** | 2262 /** |
2175 * An empty array of executable elements. | 2263 * An empty array of executable elements. |
2176 */ | 2264 */ |
2177 static List<ExecutableElement> EMPTY_ARRAY = new List<ExecutableElement>(0); | 2265 static List<ExecutableElement> EMPTY_ARRAY = new List<ExecutableElement>(0); |
2178 /** | 2266 /** |
2179 * Initialize a newly created executable element to have the given name. | 2267 * Initialize a newly created executable element to have the given name. |
2180 * @param name the name of this element | 2268 * @param name the name of this element |
2181 */ | 2269 */ |
2182 ExecutableElementImpl.con1(Identifier name) : super.con1(name) { | 2270 ExecutableElementImpl.con1(Identifier name) : super.con1(name) { |
2183 _jtd_constructor_166_impl(name); | 2271 _jtd_constructor_177_impl(name); |
2184 } | 2272 } |
2185 _jtd_constructor_166_impl(Identifier name) { | 2273 _jtd_constructor_177_impl(Identifier name) { |
2186 } | 2274 } |
2187 /** | 2275 /** |
2188 * Initialize a newly created executable element to have the given name. | 2276 * Initialize a newly created executable element to have the given name. |
2189 * @param name the name of this element | 2277 * @param name the name of this element |
2190 * @param nameOffset the offset of the name of this element in the file that c
ontains the | 2278 * @param nameOffset the offset of the name of this element in the file that c
ontains the |
2191 * declaration of this element | 2279 * declaration of this element |
2192 */ | 2280 */ |
2193 ExecutableElementImpl.con2(String name, int nameOffset) : super.con2(name, nam
eOffset) { | 2281 ExecutableElementImpl.con2(String name, int nameOffset) : super.con2(name, nam
eOffset) { |
2194 _jtd_constructor_167_impl(name, nameOffset); | 2282 _jtd_constructor_178_impl(name, nameOffset); |
2195 } | 2283 } |
2196 _jtd_constructor_167_impl(String name, int nameOffset) { | 2284 _jtd_constructor_178_impl(String name, int nameOffset) { |
2197 } | 2285 } |
2198 ElementImpl getChild(String identifier27) { | 2286 ElementImpl getChild(String identifier27) { |
2199 for (ExecutableElement function in _functions) { | 2287 for (ExecutableElement function in _functions) { |
2200 if (((function as ExecutableElementImpl)).identifier == identifier27) { | 2288 if (((function as ExecutableElementImpl)).identifier == identifier27) { |
2201 return function as ExecutableElementImpl; | 2289 return function as ExecutableElementImpl; |
2202 } | 2290 } |
2203 } | 2291 } |
2204 for (LabelElement label in _labels) { | 2292 for (LabelElement label in _labels) { |
2205 if (((label as LabelElementImpl)).identifier == identifier27) { | 2293 if (((label as LabelElementImpl)).identifier == identifier27) { |
2206 return label as LabelElementImpl; | 2294 return label as LabelElementImpl; |
(...skipping 163 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2370 class FieldElementImpl extends PropertyInducingElementImpl implements FieldEleme
nt { | 2458 class FieldElementImpl extends PropertyInducingElementImpl implements FieldEleme
nt { |
2371 /** | 2459 /** |
2372 * An empty array of field elements. | 2460 * An empty array of field elements. |
2373 */ | 2461 */ |
2374 static List<FieldElement> EMPTY_ARRAY = new List<FieldElement>(0); | 2462 static List<FieldElement> EMPTY_ARRAY = new List<FieldElement>(0); |
2375 /** | 2463 /** |
2376 * Initialize a newly created field element to have the given name. | 2464 * Initialize a newly created field element to have the given name. |
2377 * @param name the name of this element | 2465 * @param name the name of this element |
2378 */ | 2466 */ |
2379 FieldElementImpl.con1(Identifier name) : super.con1(name) { | 2467 FieldElementImpl.con1(Identifier name) : super.con1(name) { |
2380 _jtd_constructor_170_impl(name); | 2468 _jtd_constructor_181_impl(name); |
2381 } | 2469 } |
2382 _jtd_constructor_170_impl(Identifier name) { | 2470 _jtd_constructor_181_impl(Identifier name) { |
2383 } | 2471 } |
2384 /** | 2472 /** |
2385 * Initialize a newly created synthetic field element to have the given name. | 2473 * Initialize a newly created synthetic field element to have the given name. |
2386 * @param name the name of this element | 2474 * @param name the name of this element |
2387 */ | 2475 */ |
2388 FieldElementImpl.con2(String name) : super.con2(name) { | 2476 FieldElementImpl.con2(String name) : super.con2(name) { |
2389 _jtd_constructor_171_impl(name); | 2477 _jtd_constructor_182_impl(name); |
2390 } | 2478 } |
2391 _jtd_constructor_171_impl(String name) { | 2479 _jtd_constructor_182_impl(String name) { |
2392 } | 2480 } |
2393 accept(ElementVisitor visitor) => visitor.visitFieldElement(this); | 2481 accept(ElementVisitor visitor) => visitor.visitFieldElement(this); |
2394 ClassElement get enclosingElement => super.enclosingElement as ClassElement; | 2482 ClassElement get enclosingElement => super.enclosingElement as ClassElement; |
2395 ElementKind get kind => ElementKind.FIELD; | 2483 ElementKind get kind => ElementKind.FIELD; |
2396 bool isStatic() => hasModifier(Modifier.STATIC); | 2484 bool isStatic() => hasModifier(Modifier.STATIC); |
2397 /** | 2485 /** |
2398 * Set whether this field is static to correspond to the given value. | 2486 * Set whether this field is static to correspond to the given value. |
2399 * @param isStatic {@code true} if the field is static | 2487 * @param isStatic {@code true} if the field is static |
2400 */ | 2488 */ |
2401 void set static(bool isStatic) { | 2489 void set static(bool isStatic) { |
(...skipping 15 matching lines...) Expand all Loading... |
2417 */ | 2505 */ |
2418 int _visibleRangeLength = -1; | 2506 int _visibleRangeLength = -1; |
2419 /** | 2507 /** |
2420 * An empty array of function elements. | 2508 * An empty array of function elements. |
2421 */ | 2509 */ |
2422 static List<FunctionElement> EMPTY_ARRAY = new List<FunctionElement>(0); | 2510 static List<FunctionElement> EMPTY_ARRAY = new List<FunctionElement>(0); |
2423 /** | 2511 /** |
2424 * Initialize a newly created synthetic function element. | 2512 * Initialize a newly created synthetic function element. |
2425 */ | 2513 */ |
2426 FunctionElementImpl() : super.con2("", -1) { | 2514 FunctionElementImpl() : super.con2("", -1) { |
2427 _jtd_constructor_172_impl(); | 2515 _jtd_constructor_183_impl(); |
2428 } | 2516 } |
2429 _jtd_constructor_172_impl() { | 2517 _jtd_constructor_183_impl() { |
2430 synthetic = true; | 2518 synthetic = true; |
2431 } | 2519 } |
2432 /** | 2520 /** |
2433 * Initialize a newly created function element to have the given name. | 2521 * Initialize a newly created function element to have the given name. |
2434 * @param name the name of this element | 2522 * @param name the name of this element |
2435 */ | 2523 */ |
2436 FunctionElementImpl.con1(Identifier name) : super.con1(name) { | 2524 FunctionElementImpl.con1(Identifier name) : super.con1(name) { |
2437 _jtd_constructor_173_impl(name); | 2525 _jtd_constructor_184_impl(name); |
2438 } | 2526 } |
2439 _jtd_constructor_173_impl(Identifier name) { | 2527 _jtd_constructor_184_impl(Identifier name) { |
2440 } | 2528 } |
2441 accept(ElementVisitor visitor) => visitor.visitFunctionElement(this); | 2529 accept(ElementVisitor visitor) => visitor.visitFunctionElement(this); |
2442 String get identifier => name; | 2530 String get identifier => name; |
2443 ElementKind get kind => ElementKind.FUNCTION; | 2531 ElementKind get kind => ElementKind.FUNCTION; |
2444 SourceRange get visibleRange { | 2532 SourceRange get visibleRange { |
2445 if (_visibleRangeLength < 0) { | 2533 if (_visibleRangeLength < 0) { |
2446 return null; | 2534 return null; |
2447 } | 2535 } |
2448 return new SourceRange(_visibleRangeOffset, _visibleRangeLength); | 2536 return new SourceRange(_visibleRangeOffset, _visibleRangeLength); |
2449 } | 2537 } |
(...skipping 11 matching lines...) Expand all Loading... |
2461 } | 2549 } |
2462 void appendTo(JavaStringBuilder builder) { | 2550 void appendTo(JavaStringBuilder builder) { |
2463 String name13 = name; | 2551 String name13 = name; |
2464 if (name13 != null) { | 2552 if (name13 != null) { |
2465 builder.append(name13); | 2553 builder.append(name13); |
2466 } | 2554 } |
2467 super.appendTo(builder); | 2555 super.appendTo(builder); |
2468 } | 2556 } |
2469 } | 2557 } |
2470 /** | 2558 /** |
| 2559 * Instances of the class {@code FunctionTypeAliasElementImpl} implement a{@code
FunctionTypeAliasElement}. |
| 2560 * @coverage dart.engine.element |
| 2561 */ |
| 2562 class FunctionTypeAliasElementImpl extends ElementImpl implements FunctionTypeAl
iasElement { |
| 2563 /** |
| 2564 * An array containing all of the parameters defined by this type alias. |
| 2565 */ |
| 2566 List<ParameterElement> _parameters = ParameterElementImpl.EMPTY_ARRAY; |
| 2567 /** |
| 2568 * The type of function defined by this type alias. |
| 2569 */ |
| 2570 FunctionType _type; |
| 2571 /** |
| 2572 * An array containing all of the type variables defined for this type. |
| 2573 */ |
| 2574 List<TypeVariableElement> _typeVariables = TypeVariableElementImpl.EMPTY_ARRAY
; |
| 2575 /** |
| 2576 * An empty array of type alias elements. |
| 2577 */ |
| 2578 static List<FunctionTypeAliasElement> EMPTY_ARRAY = new List<FunctionTypeAlias
Element>(0); |
| 2579 /** |
| 2580 * Initialize a newly created type alias element to have the given name. |
| 2581 * @param name the name of this element |
| 2582 */ |
| 2583 FunctionTypeAliasElementImpl(Identifier name) : super.con1(name) { |
| 2584 } |
| 2585 accept(ElementVisitor visitor) => visitor.visitFunctionTypeAliasElement(this); |
| 2586 ElementImpl getChild(String identifier28) { |
| 2587 for (VariableElement parameter in _parameters) { |
| 2588 if (((parameter as VariableElementImpl)).identifier == identifier28) { |
| 2589 return parameter as VariableElementImpl; |
| 2590 } |
| 2591 } |
| 2592 for (TypeVariableElement typeVariable in _typeVariables) { |
| 2593 if (((typeVariable as TypeVariableElementImpl)).identifier == identifier28
) { |
| 2594 return typeVariable as TypeVariableElementImpl; |
| 2595 } |
| 2596 } |
| 2597 return null; |
| 2598 } |
| 2599 CompilationUnitElement get enclosingElement => super.enclosingElement as Compi
lationUnitElement; |
| 2600 ElementKind get kind => ElementKind.FUNCTION_TYPE_ALIAS; |
| 2601 List<ParameterElement> get parameters => _parameters; |
| 2602 FunctionType get type => _type; |
| 2603 List<TypeVariableElement> get typeVariables => _typeVariables; |
| 2604 /** |
| 2605 * Set the parameters defined by this type alias to the given parameters. |
| 2606 * @param parameters the parameters defined by this type alias |
| 2607 */ |
| 2608 void set parameters(List<ParameterElement> parameters8) { |
| 2609 if (parameters8 != null) { |
| 2610 for (ParameterElement parameter in parameters8) { |
| 2611 ((parameter as ParameterElementImpl)).enclosingElement = this; |
| 2612 } |
| 2613 } |
| 2614 this._parameters = parameters8; |
| 2615 } |
| 2616 /** |
| 2617 * Set the type of function defined by this type alias to the given type. |
| 2618 * @param type the type of function defined by this type alias |
| 2619 */ |
| 2620 void set type(FunctionType type8) { |
| 2621 this._type = type8; |
| 2622 } |
| 2623 /** |
| 2624 * Set the type variables defined for this type to the given variables. |
| 2625 * @param typeVariables the type variables defined for this type |
| 2626 */ |
| 2627 void set typeVariables(List<TypeVariableElement> typeVariables3) { |
| 2628 for (TypeVariableElement variable in typeVariables3) { |
| 2629 ((variable as TypeVariableElementImpl)).enclosingElement = this; |
| 2630 } |
| 2631 this._typeVariables = typeVariables3; |
| 2632 } |
| 2633 void visitChildren(ElementVisitor<Object> visitor) { |
| 2634 super.visitChildren(visitor); |
| 2635 safelyVisitChildren(_parameters, visitor); |
| 2636 safelyVisitChildren(_typeVariables, visitor); |
| 2637 } |
| 2638 void appendTo(JavaStringBuilder builder) { |
| 2639 builder.append("typedef "); |
| 2640 builder.append(name); |
| 2641 int variableCount = _typeVariables.length; |
| 2642 if (variableCount > 0) { |
| 2643 builder.append("<"); |
| 2644 for (int i = 0; i < variableCount; i++) { |
| 2645 if (i > 0) { |
| 2646 builder.append(", "); |
| 2647 } |
| 2648 ((_typeVariables[i] as TypeVariableElementImpl)).appendTo(builder); |
| 2649 } |
| 2650 builder.append(">"); |
| 2651 } |
| 2652 builder.append("("); |
| 2653 int parameterCount = _parameters.length; |
| 2654 for (int i = 0; i < parameterCount; i++) { |
| 2655 if (i > 0) { |
| 2656 builder.append(", "); |
| 2657 } |
| 2658 ((_parameters[i] as ParameterElementImpl)).appendTo(builder); |
| 2659 } |
| 2660 builder.append(")"); |
| 2661 if (_type != null) { |
| 2662 builder.append(" -> "); |
| 2663 builder.append(_type.returnType); |
| 2664 } |
| 2665 } |
| 2666 } |
| 2667 /** |
2471 * Instances of the class {@code ShowCombinatorImpl} implement a {@link ShowComb
inator}. | 2668 * Instances of the class {@code ShowCombinatorImpl} implement a {@link ShowComb
inator}. |
2472 * @coverage dart.engine.element | 2669 * @coverage dart.engine.element |
2473 */ | 2670 */ |
2474 class HideCombinatorImpl implements HideCombinator { | 2671 class HideCombinatorImpl implements HideCombinator { |
2475 /** | 2672 /** |
2476 * The names that are not to be made visible in the importing library even if
they are defined in | 2673 * The names that are not to be made visible in the importing library even if
they are defined in |
2477 * the imported library. | 2674 * the imported library. |
2478 */ | 2675 */ |
2479 List<String> _hiddenNames = StringUtilities.EMPTY_ARRAY; | 2676 List<String> _hiddenNames = StringUtilities.EMPTY_ARRAY; |
2480 /** | 2677 /** |
(...skipping 271 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2752 List<CompilationUnitElement> _parts = CompilationUnitElementImpl.EMPTY_ARRAY; | 2949 List<CompilationUnitElement> _parts = CompilationUnitElementImpl.EMPTY_ARRAY; |
2753 /** | 2950 /** |
2754 * Initialize a newly created library element to have the given name. | 2951 * Initialize a newly created library element to have the given name. |
2755 * @param context the analysis context in which the library is defined | 2952 * @param context the analysis context in which the library is defined |
2756 * @param name the name of this element | 2953 * @param name the name of this element |
2757 */ | 2954 */ |
2758 LibraryElementImpl(AnalysisContext context, LibraryIdentifier name) : super.co
n1(name) { | 2955 LibraryElementImpl(AnalysisContext context, LibraryIdentifier name) : super.co
n1(name) { |
2759 this._context = context; | 2956 this._context = context; |
2760 } | 2957 } |
2761 accept(ElementVisitor visitor) => visitor.visitLibraryElement(this); | 2958 accept(ElementVisitor visitor) => visitor.visitLibraryElement(this); |
2762 bool operator ==(Object object) => identical(runtimeType, object.runtimeType)
&& _definingCompilationUnit == ((object as LibraryElementImpl)).definingCompilat
ionUnit; | 2959 bool operator ==(Object object) => object != null && identical(runtimeType, ob
ject.runtimeType) && _definingCompilationUnit == ((object as LibraryElementImpl)
).definingCompilationUnit; |
2763 ElementImpl getChild(String identifier28) { | 2960 ElementImpl getChild(String identifier29) { |
2764 if (((_definingCompilationUnit as CompilationUnitElementImpl)).identifier ==
identifier28) { | 2961 if (((_definingCompilationUnit as CompilationUnitElementImpl)).identifier ==
identifier29) { |
2765 return _definingCompilationUnit as CompilationUnitElementImpl; | 2962 return _definingCompilationUnit as CompilationUnitElementImpl; |
2766 } | 2963 } |
2767 for (CompilationUnitElement part in _parts) { | 2964 for (CompilationUnitElement part in _parts) { |
2768 if (((part as CompilationUnitElementImpl)).identifier == identifier28) { | 2965 if (((part as CompilationUnitElementImpl)).identifier == identifier29) { |
2769 return part as CompilationUnitElementImpl; | 2966 return part as CompilationUnitElementImpl; |
2770 } | 2967 } |
2771 } | 2968 } |
2772 return null; | 2969 return null; |
2773 } | 2970 } |
2774 AnalysisContext get context => _context; | 2971 AnalysisContext get context => _context; |
2775 CompilationUnitElement get definingCompilationUnit => _definingCompilationUnit
; | 2972 CompilationUnitElement get definingCompilationUnit => _definingCompilationUnit
; |
2776 FunctionElement get entryPoint => _entryPoint; | 2973 FunctionElement get entryPoint => _entryPoint; |
2777 List<LibraryElement> get exportedLibraries { | 2974 List<LibraryElement> get exportedLibraries { |
2778 Set<LibraryElement> libraries = new Set<LibraryElement>(); | 2975 Set<LibraryElement> libraries = new Set<LibraryElement>(); |
(...skipping 129 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2908 /** | 3105 /** |
2909 * The length of the visible range for this element, or {@code -1} if this ele
ment does not have a | 3106 * The length of the visible range for this element, or {@code -1} if this ele
ment does not have a |
2910 * visible range. | 3107 * visible range. |
2911 */ | 3108 */ |
2912 int _visibleRangeLength = -1; | 3109 int _visibleRangeLength = -1; |
2913 /** | 3110 /** |
2914 * An empty array of field elements. | 3111 * An empty array of field elements. |
2915 */ | 3112 */ |
2916 static List<LocalVariableElement> EMPTY_ARRAY = new List<LocalVariableElement>
(0); | 3113 static List<LocalVariableElement> EMPTY_ARRAY = new List<LocalVariableElement>
(0); |
2917 /** | 3114 /** |
2918 * Initialize a newly created parameter element to have the given name. | 3115 * Initialize a newly created local variable element to have the given name. |
2919 * @param name the name of this element | 3116 * @param name the name of this element |
2920 */ | 3117 */ |
2921 LocalVariableElementImpl(Identifier name) : super.con1(name) { | 3118 LocalVariableElementImpl(Identifier name) : super.con1(name) { |
2922 } | 3119 } |
2923 accept(ElementVisitor visitor) => visitor.visitLocalVariableElement(this); | 3120 accept(ElementVisitor visitor) => visitor.visitLocalVariableElement(this); |
2924 ElementKind get kind => ElementKind.LOCAL_VARIABLE; | 3121 ElementKind get kind => ElementKind.LOCAL_VARIABLE; |
2925 SourceRange get visibleRange { | 3122 SourceRange get visibleRange { |
2926 if (_visibleRangeLength < 0) { | 3123 if (_visibleRangeLength < 0) { |
2927 return null; | 3124 return null; |
2928 } | 3125 } |
(...skipping 23 matching lines...) Expand all Loading... |
2952 class MethodElementImpl extends ExecutableElementImpl implements MethodElement { | 3149 class MethodElementImpl extends ExecutableElementImpl implements MethodElement { |
2953 /** | 3150 /** |
2954 * An empty array of method elements. | 3151 * An empty array of method elements. |
2955 */ | 3152 */ |
2956 static List<MethodElement> EMPTY_ARRAY = new List<MethodElement>(0); | 3153 static List<MethodElement> EMPTY_ARRAY = new List<MethodElement>(0); |
2957 /** | 3154 /** |
2958 * Initialize a newly created method element to have the given name. | 3155 * Initialize a newly created method element to have the given name. |
2959 * @param name the name of this element | 3156 * @param name the name of this element |
2960 */ | 3157 */ |
2961 MethodElementImpl.con1(Identifier name) : super.con1(name) { | 3158 MethodElementImpl.con1(Identifier name) : super.con1(name) { |
2962 _jtd_constructor_181_impl(name); | 3159 _jtd_constructor_193_impl(name); |
2963 } | 3160 } |
2964 _jtd_constructor_181_impl(Identifier name) { | 3161 _jtd_constructor_193_impl(Identifier name) { |
2965 } | 3162 } |
2966 /** | 3163 /** |
2967 * Initialize a newly created method element to have the given name. | 3164 * Initialize a newly created method element to have the given name. |
2968 * @param name the name of this element | 3165 * @param name the name of this element |
2969 * @param nameOffset the offset of the name of this element in the file that c
ontains the | 3166 * @param nameOffset the offset of the name of this element in the file that c
ontains the |
2970 * declaration of this element | 3167 * declaration of this element |
2971 */ | 3168 */ |
2972 MethodElementImpl.con2(String name, int nameOffset) : super.con2(name, nameOff
set) { | 3169 MethodElementImpl.con2(String name, int nameOffset) : super.con2(name, nameOff
set) { |
2973 _jtd_constructor_182_impl(name, nameOffset); | 3170 _jtd_constructor_194_impl(name, nameOffset); |
2974 } | 3171 } |
2975 _jtd_constructor_182_impl(String name, int nameOffset) { | 3172 _jtd_constructor_194_impl(String name, int nameOffset) { |
2976 } | 3173 } |
2977 accept(ElementVisitor visitor) => visitor.visitMethodElement(this); | 3174 accept(ElementVisitor visitor) => visitor.visitMethodElement(this); |
2978 ClassElement get enclosingElement => super.enclosingElement as ClassElement; | 3175 ClassElement get enclosingElement => super.enclosingElement as ClassElement; |
2979 ElementKind get kind => ElementKind.METHOD; | 3176 ElementKind get kind => ElementKind.METHOD; |
2980 bool isAbstract() => hasModifier(Modifier.ABSTRACT); | 3177 bool isAbstract() => hasModifier(Modifier.ABSTRACT); |
2981 bool isStatic() => hasModifier(Modifier.STATIC); | 3178 bool isStatic() => hasModifier(Modifier.STATIC); |
2982 /** | 3179 /** |
2983 * Set whether this method is abstract to correspond to the given value. | 3180 * Set whether this method is abstract to correspond to the given value. |
2984 * @param isAbstract {@code true} if the method is abstract | 3181 * @param isAbstract {@code true} if the method is abstract |
2985 */ | 3182 */ |
(...skipping 254 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3240 PropertyInducingElement _variable; | 3437 PropertyInducingElement _variable; |
3241 /** | 3438 /** |
3242 * An empty array of property accessor elements. | 3439 * An empty array of property accessor elements. |
3243 */ | 3440 */ |
3244 static List<PropertyAccessorElement> EMPTY_ARRAY = new List<PropertyAccessorEl
ement>(0); | 3441 static List<PropertyAccessorElement> EMPTY_ARRAY = new List<PropertyAccessorEl
ement>(0); |
3245 /** | 3442 /** |
3246 * Initialize a newly created property accessor element to have the given name
. | 3443 * Initialize a newly created property accessor element to have the given name
. |
3247 * @param name the name of this element | 3444 * @param name the name of this element |
3248 */ | 3445 */ |
3249 PropertyAccessorElementImpl.con1(Identifier name) : super.con1(name) { | 3446 PropertyAccessorElementImpl.con1(Identifier name) : super.con1(name) { |
3250 _jtd_constructor_187_impl(name); | 3447 _jtd_constructor_199_impl(name); |
3251 } | 3448 } |
3252 _jtd_constructor_187_impl(Identifier name) { | 3449 _jtd_constructor_199_impl(Identifier name) { |
3253 } | 3450 } |
3254 /** | 3451 /** |
3255 * Initialize a newly created synthetic property accessor element to be associ
ated with the given | 3452 * Initialize a newly created synthetic property accessor element to be associ
ated with the given |
3256 * variable. | 3453 * variable. |
3257 * @param variable the variable with which this access is associated | 3454 * @param variable the variable with which this access is associated |
3258 */ | 3455 */ |
3259 PropertyAccessorElementImpl.con2(PropertyInducingElementImpl variable2) : supe
r.con2(variable2.name, -1) { | 3456 PropertyAccessorElementImpl.con2(PropertyInducingElementImpl variable2) : supe
r.con2(variable2.name, -1) { |
3260 _jtd_constructor_188_impl(variable2); | 3457 _jtd_constructor_200_impl(variable2); |
3261 } | 3458 } |
3262 _jtd_constructor_188_impl(PropertyInducingElementImpl variable2) { | 3459 _jtd_constructor_200_impl(PropertyInducingElementImpl variable2) { |
3263 this._variable = variable2; | 3460 this._variable = variable2; |
3264 synthetic = true; | 3461 synthetic = true; |
3265 } | 3462 } |
3266 accept(ElementVisitor visitor) => visitor.visitPropertyAccessorElement(this); | 3463 accept(ElementVisitor visitor) => visitor.visitPropertyAccessorElement(this); |
3267 bool operator ==(Object object) => super == object && identical(isGetter(), ((
object as PropertyAccessorElement)).isGetter()); | 3464 bool operator ==(Object object) => super == object && identical(isGetter(), ((
object as PropertyAccessorElement)).isGetter()); |
3268 ElementKind get kind { | 3465 ElementKind get kind { |
3269 if (isGetter()) { | 3466 if (isGetter()) { |
3270 return ElementKind.GETTER; | 3467 return ElementKind.GETTER; |
3271 } | 3468 } |
3272 return ElementKind.SETTER; | 3469 return ElementKind.SETTER; |
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3317 PropertyAccessorElement _setter; | 3514 PropertyAccessorElement _setter; |
3318 /** | 3515 /** |
3319 * An empty array of elements. | 3516 * An empty array of elements. |
3320 */ | 3517 */ |
3321 static List<PropertyInducingElement> EMPTY_ARRAY = new List<PropertyInducingEl
ement>(0); | 3518 static List<PropertyInducingElement> EMPTY_ARRAY = new List<PropertyInducingEl
ement>(0); |
3322 /** | 3519 /** |
3323 * Initialize a newly created element to have the given name. | 3520 * Initialize a newly created element to have the given name. |
3324 * @param name the name of this element | 3521 * @param name the name of this element |
3325 */ | 3522 */ |
3326 PropertyInducingElementImpl.con1(Identifier name) : super.con1(name) { | 3523 PropertyInducingElementImpl.con1(Identifier name) : super.con1(name) { |
3327 _jtd_constructor_189_impl(name); | 3524 _jtd_constructor_201_impl(name); |
3328 } | 3525 } |
3329 _jtd_constructor_189_impl(Identifier name) { | 3526 _jtd_constructor_201_impl(Identifier name) { |
3330 } | 3527 } |
3331 /** | 3528 /** |
3332 * Initialize a newly created synthetic element to have the given name. | 3529 * Initialize a newly created synthetic element to have the given name. |
3333 * @param name the name of this element | 3530 * @param name the name of this element |
3334 */ | 3531 */ |
3335 PropertyInducingElementImpl.con2(String name) : super.con2(name, -1) { | 3532 PropertyInducingElementImpl.con2(String name) : super.con2(name, -1) { |
3336 _jtd_constructor_190_impl(name); | 3533 _jtd_constructor_202_impl(name); |
3337 } | 3534 } |
3338 _jtd_constructor_190_impl(String name) { | 3535 _jtd_constructor_202_impl(String name) { |
3339 synthetic = true; | 3536 synthetic = true; |
3340 } | 3537 } |
3341 PropertyAccessorElement get getter => _getter; | 3538 PropertyAccessorElement get getter => _getter; |
3342 PropertyAccessorElement get setter => _setter; | 3539 PropertyAccessorElement get setter => _setter; |
3343 /** | 3540 /** |
3344 * Set the getter associated with this element to the given accessor. | 3541 * Set the getter associated with this element to the given accessor. |
3345 * @param getter the getter associated with this element | 3542 * @param getter the getter associated with this element |
3346 */ | 3543 */ |
3347 void set getter(PropertyAccessorElement getter2) { | 3544 void set getter(PropertyAccessorElement getter2) { |
3348 this._getter = getter2; | 3545 this._getter = getter2; |
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3399 class TopLevelVariableElementImpl extends PropertyInducingElementImpl implements
TopLevelVariableElement { | 3596 class TopLevelVariableElementImpl extends PropertyInducingElementImpl implements
TopLevelVariableElement { |
3400 /** | 3597 /** |
3401 * An empty array of top-level variable elements. | 3598 * An empty array of top-level variable elements. |
3402 */ | 3599 */ |
3403 static List<TopLevelVariableElement> EMPTY_ARRAY = new List<TopLevelVariableEl
ement>(0); | 3600 static List<TopLevelVariableElement> EMPTY_ARRAY = new List<TopLevelVariableEl
ement>(0); |
3404 /** | 3601 /** |
3405 * Initialize a newly created top-level variable element to have the given nam
e. | 3602 * Initialize a newly created top-level variable element to have the given nam
e. |
3406 * @param name the name of this element | 3603 * @param name the name of this element |
3407 */ | 3604 */ |
3408 TopLevelVariableElementImpl.con1(Identifier name) : super.con1(name) { | 3605 TopLevelVariableElementImpl.con1(Identifier name) : super.con1(name) { |
3409 _jtd_constructor_192_impl(name); | 3606 _jtd_constructor_204_impl(name); |
3410 } | 3607 } |
3411 _jtd_constructor_192_impl(Identifier name) { | 3608 _jtd_constructor_204_impl(Identifier name) { |
3412 } | 3609 } |
3413 /** | 3610 /** |
3414 * Initialize a newly created synthetic top-level variable element to have the
given name. | 3611 * Initialize a newly created synthetic top-level variable element to have the
given name. |
3415 * @param name the name of this element | 3612 * @param name the name of this element |
3416 */ | 3613 */ |
3417 TopLevelVariableElementImpl.con2(String name) : super.con2(name) { | 3614 TopLevelVariableElementImpl.con2(String name) : super.con2(name) { |
3418 _jtd_constructor_193_impl(name); | 3615 _jtd_constructor_205_impl(name); |
3419 } | 3616 } |
3420 _jtd_constructor_193_impl(String name) { | 3617 _jtd_constructor_205_impl(String name) { |
3421 } | 3618 } |
3422 accept(ElementVisitor visitor) => visitor.visitTopLevelVariableElement(this); | 3619 accept(ElementVisitor visitor) => visitor.visitTopLevelVariableElement(this); |
3423 ElementKind get kind => ElementKind.TOP_LEVEL_VARIABLE; | 3620 ElementKind get kind => ElementKind.TOP_LEVEL_VARIABLE; |
3424 bool isStatic() => true; | 3621 bool isStatic() => true; |
3425 } | 3622 } |
3426 /** | 3623 /** |
3427 * Instances of the class {@code TypeAliasElementImpl} implement a {@code TypeAl
iasElement}. | |
3428 * @coverage dart.engine.element | |
3429 */ | |
3430 class TypeAliasElementImpl extends ElementImpl implements TypeAliasElement { | |
3431 /** | |
3432 * An array containing all of the parameters defined by this type alias. | |
3433 */ | |
3434 List<ParameterElement> _parameters = ParameterElementImpl.EMPTY_ARRAY; | |
3435 /** | |
3436 * The type of function defined by this type alias. | |
3437 */ | |
3438 FunctionType _type; | |
3439 /** | |
3440 * An array containing all of the type variables defined for this type. | |
3441 */ | |
3442 List<TypeVariableElement> _typeVariables = TypeVariableElementImpl.EMPTY_ARRAY
; | |
3443 /** | |
3444 * An empty array of type alias elements. | |
3445 */ | |
3446 static List<TypeAliasElement> EMPTY_ARRAY = new List<TypeAliasElement>(0); | |
3447 /** | |
3448 * Initialize a newly created type alias element to have the given name. | |
3449 * @param name the name of this element | |
3450 */ | |
3451 TypeAliasElementImpl(Identifier name) : super.con1(name) { | |
3452 } | |
3453 accept(ElementVisitor visitor) => visitor.visitTypeAliasElement(this); | |
3454 ElementImpl getChild(String identifier29) { | |
3455 for (VariableElement parameter in _parameters) { | |
3456 if (((parameter as VariableElementImpl)).identifier == identifier29) { | |
3457 return parameter as VariableElementImpl; | |
3458 } | |
3459 } | |
3460 for (TypeVariableElement typeVariable in _typeVariables) { | |
3461 if (((typeVariable as TypeVariableElementImpl)).identifier == identifier29
) { | |
3462 return typeVariable as TypeVariableElementImpl; | |
3463 } | |
3464 } | |
3465 return null; | |
3466 } | |
3467 CompilationUnitElement get enclosingElement => super.enclosingElement as Compi
lationUnitElement; | |
3468 ElementKind get kind => ElementKind.TYPE_ALIAS; | |
3469 List<ParameterElement> get parameters => _parameters; | |
3470 FunctionType get type => _type; | |
3471 List<TypeVariableElement> get typeVariables => _typeVariables; | |
3472 /** | |
3473 * Set the parameters defined by this type alias to the given parameters. | |
3474 * @param parameters the parameters defined by this type alias | |
3475 */ | |
3476 void set parameters(List<ParameterElement> parameters8) { | |
3477 if (parameters8 != null) { | |
3478 for (ParameterElement parameter in parameters8) { | |
3479 ((parameter as ParameterElementImpl)).enclosingElement = this; | |
3480 } | |
3481 } | |
3482 this._parameters = parameters8; | |
3483 } | |
3484 /** | |
3485 * Set the type of function defined by this type alias to the given type. | |
3486 * @param type the type of function defined by this type alias | |
3487 */ | |
3488 void set type(FunctionType type8) { | |
3489 this._type = type8; | |
3490 } | |
3491 /** | |
3492 * Set the type variables defined for this type to the given variables. | |
3493 * @param typeVariables the type variables defined for this type | |
3494 */ | |
3495 void set typeVariables(List<TypeVariableElement> typeVariables3) { | |
3496 for (TypeVariableElement variable in typeVariables3) { | |
3497 ((variable as TypeVariableElementImpl)).enclosingElement = this; | |
3498 } | |
3499 this._typeVariables = typeVariables3; | |
3500 } | |
3501 void visitChildren(ElementVisitor<Object> visitor) { | |
3502 super.visitChildren(visitor); | |
3503 safelyVisitChildren(_parameters, visitor); | |
3504 safelyVisitChildren(_typeVariables, visitor); | |
3505 } | |
3506 void appendTo(JavaStringBuilder builder) { | |
3507 builder.append("typedef "); | |
3508 builder.append(name); | |
3509 int variableCount = _typeVariables.length; | |
3510 if (variableCount > 0) { | |
3511 builder.append("<"); | |
3512 for (int i = 0; i < variableCount; i++) { | |
3513 if (i > 0) { | |
3514 builder.append(", "); | |
3515 } | |
3516 ((_typeVariables[i] as TypeVariableElementImpl)).appendTo(builder); | |
3517 } | |
3518 builder.append(">"); | |
3519 } | |
3520 builder.append("("); | |
3521 int parameterCount = _parameters.length; | |
3522 for (int i = 0; i < parameterCount; i++) { | |
3523 if (i > 0) { | |
3524 builder.append(", "); | |
3525 } | |
3526 ((_parameters[i] as ParameterElementImpl)).appendTo(builder); | |
3527 } | |
3528 builder.append(")"); | |
3529 if (_type != null) { | |
3530 builder.append(" -> "); | |
3531 builder.append(_type.returnType); | |
3532 } | |
3533 } | |
3534 } | |
3535 /** | |
3536 * Instances of the class {@code TypeVariableElementImpl} implement a {@code Typ
eVariableElement}. | 3624 * Instances of the class {@code TypeVariableElementImpl} implement a {@code Typ
eVariableElement}. |
3537 * @coverage dart.engine.element | 3625 * @coverage dart.engine.element |
3538 */ | 3626 */ |
3539 class TypeVariableElementImpl extends ElementImpl implements TypeVariableElement
{ | 3627 class TypeVariableElementImpl extends ElementImpl implements TypeVariableElement
{ |
3540 /** | 3628 /** |
3541 * The type defined by this type variable. | 3629 * The type defined by this type variable. |
3542 */ | 3630 */ |
3543 TypeVariableType _type; | 3631 TypeVariableType _type; |
3544 /** | 3632 /** |
3545 * The type representing the bound associated with this variable, or {@code nu
ll} if this variable | 3633 * The type representing the bound associated with this variable, or {@code nu
ll} if this variable |
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3598 FunctionElement _initializer; | 3686 FunctionElement _initializer; |
3599 /** | 3687 /** |
3600 * An empty array of variable elements. | 3688 * An empty array of variable elements. |
3601 */ | 3689 */ |
3602 static List<VariableElement> EMPTY_ARRAY = new List<VariableElement>(0); | 3690 static List<VariableElement> EMPTY_ARRAY = new List<VariableElement>(0); |
3603 /** | 3691 /** |
3604 * Initialize a newly created variable element to have the given name. | 3692 * Initialize a newly created variable element to have the given name. |
3605 * @param name the name of this element | 3693 * @param name the name of this element |
3606 */ | 3694 */ |
3607 VariableElementImpl.con1(Identifier name) : super.con1(name) { | 3695 VariableElementImpl.con1(Identifier name) : super.con1(name) { |
3608 _jtd_constructor_196_impl(name); | 3696 _jtd_constructor_207_impl(name); |
3609 } | 3697 } |
3610 _jtd_constructor_196_impl(Identifier name) { | 3698 _jtd_constructor_207_impl(Identifier name) { |
3611 } | 3699 } |
3612 /** | 3700 /** |
3613 * Initialize a newly created variable element to have the given name. | 3701 * Initialize a newly created variable element to have the given name. |
3614 * @param name the name of this element | 3702 * @param name the name of this element |
3615 * @param nameOffset the offset of the name of this element in the file that c
ontains the | 3703 * @param nameOffset the offset of the name of this element in the file that c
ontains the |
3616 * declaration of this element | 3704 * declaration of this element |
3617 */ | 3705 */ |
3618 VariableElementImpl.con2(String name, int nameOffset) : super.con2(name, nameO
ffset) { | 3706 VariableElementImpl.con2(String name, int nameOffset) : super.con2(name, nameO
ffset) { |
3619 _jtd_constructor_197_impl(name, nameOffset); | 3707 _jtd_constructor_208_impl(name, nameOffset); |
3620 } | 3708 } |
3621 _jtd_constructor_197_impl(String name, int nameOffset) { | 3709 _jtd_constructor_208_impl(String name, int nameOffset) { |
3622 } | 3710 } |
| 3711 /** |
| 3712 * Return the result of evaluating this variable's initializer as a compile-ti
me constant |
| 3713 * expression, or {@code null} if this variable is not a 'const' variable or d
oes not have an |
| 3714 * initializer. |
| 3715 * @return the result of evaluating this variable's initializer |
| 3716 */ |
| 3717 EvaluationResultImpl get evaluationResult => null; |
3623 FunctionElement get initializer => _initializer; | 3718 FunctionElement get initializer => _initializer; |
3624 Type2 get type => _type; | 3719 Type2 get type => _type; |
3625 bool isConst() => hasModifier(Modifier.CONST); | 3720 bool isConst() => hasModifier(Modifier.CONST); |
3626 bool isFinal() => hasModifier(Modifier.FINAL); | 3721 bool isFinal() => hasModifier(Modifier.FINAL); |
3627 /** | 3722 /** |
3628 * Set whether this variable is const to correspond to the given value. | 3723 * Set whether this variable is const to correspond to the given value. |
3629 * @param isConst {@code true} if the variable is const | 3724 * @param isConst {@code true} if the variable is const |
3630 */ | 3725 */ |
3631 void set const2(bool isConst) { | 3726 void set const3(bool isConst) { |
3632 setModifier(Modifier.CONST, isConst); | 3727 setModifier(Modifier.CONST, isConst); |
3633 } | 3728 } |
3634 /** | 3729 /** |
| 3730 * Set the result of evaluating this variable's initializer as a compile-time
constant expression |
| 3731 * to the given result. |
| 3732 * @param result the result of evaluating this variable's initializer |
| 3733 */ |
| 3734 void set evaluationResult(EvaluationResultImpl result) { |
| 3735 throw new IllegalStateException("Invalid attempt to set a compile-time const
ant result"); |
| 3736 } |
| 3737 /** |
3635 * Set whether this variable is final to correspond to the given value. | 3738 * Set whether this variable is final to correspond to the given value. |
3636 * @param isFinal {@code true} if the variable is final | 3739 * @param isFinal {@code true} if the variable is final |
3637 */ | 3740 */ |
3638 void set final2(bool isFinal) { | 3741 void set final2(bool isFinal) { |
3639 setModifier(Modifier.FINAL, isFinal); | 3742 setModifier(Modifier.FINAL, isFinal); |
3640 } | 3743 } |
3641 /** | 3744 /** |
3642 * Set the function representing this variable's initializer to the given func
tion. | 3745 * Set the function representing this variable's initializer to the given func
tion. |
3643 * @param initializer the function representing this variable's initializer | 3746 * @param initializer the function representing this variable's initializer |
3644 */ | 3747 */ |
(...skipping 144 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3789 /** | 3892 /** |
3790 * The type of object returned by this type of function. | 3893 * The type of object returned by this type of function. |
3791 */ | 3894 */ |
3792 Type2 _returnType = VoidTypeImpl.instance; | 3895 Type2 _returnType = VoidTypeImpl.instance; |
3793 /** | 3896 /** |
3794 * Initialize a newly created function type to be declared by the given elemen
t and to have the | 3897 * Initialize a newly created function type to be declared by the given elemen
t and to have the |
3795 * given name. | 3898 * given name. |
3796 * @param element the element representing the declaration of the function typ
e | 3899 * @param element the element representing the declaration of the function typ
e |
3797 */ | 3900 */ |
3798 FunctionTypeImpl.con1(ExecutableElement element) : super(element, element == n
ull ? null : element.name) { | 3901 FunctionTypeImpl.con1(ExecutableElement element) : super(element, element == n
ull ? null : element.name) { |
3799 _jtd_constructor_248_impl(element); | 3902 _jtd_constructor_259_impl(element); |
3800 } | 3903 } |
3801 _jtd_constructor_248_impl(ExecutableElement element) { | 3904 _jtd_constructor_259_impl(ExecutableElement element) { |
3802 } | 3905 } |
3803 /** | 3906 /** |
3804 * Initialize a newly created function type to be declared by the given elemen
t and to have the | 3907 * Initialize a newly created function type to be declared by the given elemen
t and to have the |
3805 * given name. | 3908 * given name. |
3806 * @param element the element representing the declaration of the function typ
e | 3909 * @param element the element representing the declaration of the function typ
e |
3807 */ | 3910 */ |
3808 FunctionTypeImpl.con2(TypeAliasElement element) : super(element, element == nu
ll ? null : element.name) { | 3911 FunctionTypeImpl.con2(FunctionTypeAliasElement element) : super(element, eleme
nt == null ? null : element.name) { |
3809 _jtd_constructor_249_impl(element); | 3912 _jtd_constructor_260_impl(element); |
3810 } | 3913 } |
3811 _jtd_constructor_249_impl(TypeAliasElement element) { | 3914 _jtd_constructor_260_impl(FunctionTypeAliasElement element) { |
3812 } | 3915 } |
3813 bool operator ==(Object object) { | 3916 bool operator ==(Object object) { |
3814 if (object is! FunctionTypeImpl) { | 3917 if (object is! FunctionTypeImpl) { |
3815 return false; | 3918 return false; |
3816 } | 3919 } |
3817 FunctionTypeImpl otherType = object as FunctionTypeImpl; | 3920 FunctionTypeImpl otherType = object as FunctionTypeImpl; |
3818 return element == otherType.element && JavaArrays.equals(_normalParameterTyp
es, otherType._normalParameterTypes) && JavaArrays.equals(_optionalParameterType
s, otherType._optionalParameterTypes) && equals2(_namedParameterTypes, otherType
._namedParameterTypes); | 3921 return element == otherType.element && JavaArrays.equals(_normalParameterTyp
es, otherType._normalParameterTypes) && JavaArrays.equals(_optionalParameterType
s, otherType._optionalParameterTypes) && equals2(_namedParameterTypes, otherType
._namedParameterTypes); |
3819 } | 3922 } |
3820 Map<String, Type2> get namedParameterTypes => _namedParameterTypes; | 3923 Map<String, Type2> get namedParameterTypes => _namedParameterTypes; |
3821 List<Type2> get normalParameterTypes => _normalParameterTypes; | 3924 List<Type2> get normalParameterTypes => _normalParameterTypes; |
3822 List<Type2> get optionalParameterTypes => _optionalParameterTypes; | 3925 List<Type2> get optionalParameterTypes => _optionalParameterTypes; |
3823 Type2 get returnType => _returnType; | 3926 Type2 get returnType => _returnType; |
3824 List<Type2> get typeArguments => _typeArguments; | 3927 List<Type2> get typeArguments => _typeArguments; |
3825 int get hashCode { | 3928 int get hashCode { |
3826 Element element39 = element; | 3929 Element element40 = element; |
3827 if (element39 == null) { | 3930 if (element40 == null) { |
3828 return 0; | 3931 return 0; |
3829 } | 3932 } |
3830 return element39.hashCode; | 3933 return element40.hashCode; |
3831 } | 3934 } |
3832 bool isSubtypeOf(Type2 type) { | 3935 bool isSubtypeOf(Type2 type) { |
3833 if (type == null) { | 3936 if (type == null) { |
3834 return false; | 3937 return false; |
3835 } else if (identical(this, type) || type.isDynamic() || type.isDartCoreFunct
ion()) { | 3938 } else if (identical(this, type) || type.isDynamic() || type.isDartCoreFunct
ion()) { |
3836 return true; | 3939 return true; |
3837 } else if (type is! FunctionType) { | 3940 } else if (type is! FunctionType) { |
3838 return false; | 3941 return false; |
3839 } else if (this == type) { | 3942 } else if (this == type) { |
3840 return true; | 3943 return true; |
(...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3931 this._typeArguments = typeArguments4; | 4034 this._typeArguments = typeArguments4; |
3932 } | 4035 } |
3933 FunctionTypeImpl substitute4(List<Type2> argumentTypes) => substitute2(argumen
tTypes, typeArguments); | 4036 FunctionTypeImpl substitute4(List<Type2> argumentTypes) => substitute2(argumen
tTypes, typeArguments); |
3934 FunctionTypeImpl substitute2(List<Type2> argumentTypes, List<Type2> parameterT
ypes) { | 4037 FunctionTypeImpl substitute2(List<Type2> argumentTypes, List<Type2> parameterT
ypes) { |
3935 if (argumentTypes.length != parameterTypes.length) { | 4038 if (argumentTypes.length != parameterTypes.length) { |
3936 throw new IllegalArgumentException("argumentTypes.length (${argumentTypes.
length}) != parameterTypes.length (${parameterTypes.length})"); | 4039 throw new IllegalArgumentException("argumentTypes.length (${argumentTypes.
length}) != parameterTypes.length (${parameterTypes.length})"); |
3937 } | 4040 } |
3938 if (argumentTypes.length == 0) { | 4041 if (argumentTypes.length == 0) { |
3939 return this; | 4042 return this; |
3940 } | 4043 } |
3941 Element element40 = element; | 4044 Element element41 = element; |
3942 FunctionTypeImpl newType = (element40 is ExecutableElement) ? new FunctionTy
peImpl.con1((element40 as ExecutableElement)) : new FunctionTypeImpl.con2((eleme
nt40 as TypeAliasElement)); | 4045 FunctionTypeImpl newType = (element41 is ExecutableElement) ? new FunctionTy
peImpl.con1((element41 as ExecutableElement)) : new FunctionTypeImpl.con2((eleme
nt41 as FunctionTypeAliasElement)); |
3943 newType.returnType = _returnType.substitute2(argumentTypes, parameterTypes); | 4046 newType.returnType = _returnType.substitute2(argumentTypes, parameterTypes); |
3944 newType.normalParameterTypes = TypeImpl.substitute(_normalParameterTypes, ar
gumentTypes, parameterTypes); | 4047 newType.normalParameterTypes = TypeImpl.substitute(_normalParameterTypes, ar
gumentTypes, parameterTypes); |
3945 newType.optionalParameterTypes = TypeImpl.substitute(_optionalParameterTypes
, argumentTypes, parameterTypes); | 4048 newType.optionalParameterTypes = TypeImpl.substitute(_optionalParameterTypes
, argumentTypes, parameterTypes); |
3946 newType._namedParameterTypes = substitute3(_namedParameterTypes, argumentTyp
es, parameterTypes); | 4049 newType._namedParameterTypes = substitute3(_namedParameterTypes, argumentTyp
es, parameterTypes); |
3947 return newType; | 4050 return newType; |
3948 } | 4051 } |
3949 void appendTo(JavaStringBuilder builder) { | 4052 void appendTo(JavaStringBuilder builder) { |
3950 builder.append("("); | 4053 builder.append("("); |
3951 bool needsComma = false; | 4054 bool needsComma = false; |
3952 if (_normalParameterTypes.length > 0) { | 4055 if (_normalParameterTypes.length > 0) { |
(...skipping 112 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4065 /** | 4168 /** |
4066 * Returns the set of all superinterfaces of the passed {@link Type}. This is
a recursive method, | 4169 * Returns the set of all superinterfaces of the passed {@link Type}. This is
a recursive method, |
4067 * callers should call the public {@link #computeSuperinterfaceSet(Type)}. | 4170 * callers should call the public {@link #computeSuperinterfaceSet(Type)}. |
4068 * @param type the {@link Type} to compute the set of superinterfaces of | 4171 * @param type the {@link Type} to compute the set of superinterfaces of |
4069 * @param set a {@link HashSet} used recursively by this method | 4172 * @param set a {@link HashSet} used recursively by this method |
4070 * @return the {@link Set} of superinterfaces of the passed {@link Type} | 4173 * @return the {@link Set} of superinterfaces of the passed {@link Type} |
4071 * @see #computeSuperinterfaceSet(Type) | 4174 * @see #computeSuperinterfaceSet(Type) |
4072 * @see #getLeastUpperBound(Type) | 4175 * @see #getLeastUpperBound(Type) |
4073 */ | 4176 */ |
4074 static Set<InterfaceType> computeSuperinterfaceSet2(InterfaceType type, Set<In
terfaceType> set) { | 4177 static Set<InterfaceType> computeSuperinterfaceSet2(InterfaceType type, Set<In
terfaceType> set) { |
4075 Element element41 = type.element; | 4178 Element element42 = type.element; |
4076 if (element41 != null && element41 is ClassElement) { | 4179 if (element42 != null && element42 is ClassElement) { |
4077 ClassElement classElement = element41 as ClassElement; | 4180 ClassElement classElement = element42 as ClassElement; |
4078 List<InterfaceType> superinterfaces = classElement.interfaces; | 4181 List<InterfaceType> superinterfaces = classElement.interfaces; |
4079 for (InterfaceType superinterface in superinterfaces) { | 4182 for (InterfaceType superinterface in superinterfaces) { |
4080 javaSetAdd(set, superinterface); | 4183 javaSetAdd(set, superinterface); |
4081 computeSuperinterfaceSet2(superinterface, set); | 4184 computeSuperinterfaceSet2(superinterface, set); |
4082 } | 4185 } |
4083 InterfaceType supertype4 = classElement.supertype; | 4186 InterfaceType supertype4 = classElement.supertype; |
4084 if (supertype4 != null) { | 4187 if (supertype4 != null) { |
4085 javaSetAdd(set, supertype4); | 4188 javaSetAdd(set, supertype4); |
4086 computeSuperinterfaceSet2(supertype4, set); | 4189 computeSuperinterfaceSet2(supertype4, set); |
4087 } | 4190 } |
4088 } | 4191 } |
4089 return set; | 4192 return set; |
4090 } | 4193 } |
4091 /** | 4194 /** |
4092 * An array containing the actual types of the type arguments. | 4195 * An array containing the actual types of the type arguments. |
4093 */ | 4196 */ |
4094 List<Type2> _typeArguments = TypeImpl.EMPTY_ARRAY; | 4197 List<Type2> _typeArguments = TypeImpl.EMPTY_ARRAY; |
4095 /** | 4198 /** |
4096 * Initialize a newly created type to be declared by the given element. | 4199 * Initialize a newly created type to be declared by the given element. |
4097 * @param element the element representing the declaration of the type | 4200 * @param element the element representing the declaration of the type |
4098 */ | 4201 */ |
4099 InterfaceTypeImpl.con1(ClassElement element) : super(element, element.name) { | 4202 InterfaceTypeImpl.con1(ClassElement element) : super(element, element.name) { |
4100 _jtd_constructor_250_impl(element); | 4203 _jtd_constructor_261_impl(element); |
4101 } | 4204 } |
4102 _jtd_constructor_250_impl(ClassElement element) { | 4205 _jtd_constructor_261_impl(ClassElement element) { |
4103 } | 4206 } |
4104 /** | 4207 /** |
4105 * Initialize a newly created type to have the given name. This constructor sh
ould only be used in | 4208 * Initialize a newly created type to have the given name. This constructor sh
ould only be used in |
4106 * cases where there is no declaration of the type. | 4209 * cases where there is no declaration of the type. |
4107 * @param name the name of the type | 4210 * @param name the name of the type |
4108 */ | 4211 */ |
4109 InterfaceTypeImpl.con2(String name) : super(null, name) { | 4212 InterfaceTypeImpl.con2(String name) : super(null, name) { |
4110 _jtd_constructor_251_impl(name); | 4213 _jtd_constructor_262_impl(name); |
4111 } | 4214 } |
4112 _jtd_constructor_251_impl(String name) { | 4215 _jtd_constructor_262_impl(String name) { |
4113 } | 4216 } |
4114 bool operator ==(Object object) { | 4217 bool operator ==(Object object) { |
4115 if (object is! InterfaceTypeImpl) { | 4218 if (object is! InterfaceTypeImpl) { |
4116 return false; | 4219 return false; |
4117 } | 4220 } |
4118 InterfaceTypeImpl otherType = object as InterfaceTypeImpl; | 4221 InterfaceTypeImpl otherType = object as InterfaceTypeImpl; |
4119 return element == otherType.element && JavaArrays.equals(_typeArguments, oth
erType._typeArguments); | 4222 return element == otherType.element && JavaArrays.equals(_typeArguments, oth
erType._typeArguments); |
4120 } | 4223 } |
4121 ClassElement get element => super.element as ClassElement; | 4224 ClassElement get element => super.element as ClassElement; |
4122 Type2 getLeastUpperBound(Type2 type) { | 4225 Type2 getLeastUpperBound(Type2 type) { |
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4158 } | 4261 } |
4159 } | 4262 } |
4160 return null; | 4263 return null; |
4161 } | 4264 } |
4162 Type2 get superclass { | 4265 Type2 get superclass { |
4163 ClassElement classElement = element; | 4266 ClassElement classElement = element; |
4164 return element.supertype.substitute2(_typeArguments, TypeVariableTypeImpl.ge
tTypes(classElement.typeVariables)); | 4267 return element.supertype.substitute2(_typeArguments, TypeVariableTypeImpl.ge
tTypes(classElement.typeVariables)); |
4165 } | 4268 } |
4166 List<Type2> get typeArguments => _typeArguments; | 4269 List<Type2> get typeArguments => _typeArguments; |
4167 int get hashCode { | 4270 int get hashCode { |
4168 ClassElement element42 = element; | 4271 ClassElement element43 = element; |
4169 if (element42 == null) { | 4272 if (element43 == null) { |
4170 return 0; | 4273 return 0; |
4171 } | 4274 } |
4172 return element42.hashCode; | 4275 return element43.hashCode; |
4173 } | 4276 } |
4174 bool isDartCoreFunction() { | 4277 bool isDartCoreFunction() { |
4175 ClassElement element43 = element; | 4278 ClassElement element44 = element; |
4176 if (element43 == null) { | 4279 if (element44 == null) { |
4177 return false; | 4280 return false; |
4178 } | 4281 } |
4179 return element43.name == "Function" && element43.library.isDartCore(); | 4282 return element44.name == "Function" && element44.library.isDartCore(); |
4180 } | 4283 } |
4181 bool isDirectSupertypeOf(InterfaceType type) { | 4284 bool isDirectSupertypeOf(InterfaceType type) { |
4182 ClassElement i = element; | 4285 ClassElement i = element; |
4183 ClassElement j = type.element; | 4286 ClassElement j = type.element; |
4184 InterfaceType supertype5 = j.supertype; | 4287 InterfaceType supertype5 = j.supertype; |
4185 if (supertype5 == null) { | 4288 if (supertype5 == null) { |
4186 return false; | 4289 return false; |
4187 } | 4290 } |
4188 ClassElement supertypeElement = supertype5.element; | 4291 ClassElement supertypeElement = supertype5.element; |
4189 if (supertypeElement == i) { | 4292 if (supertypeElement == i) { |
(...skipping 579 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4769 abstract class TypeVariableType implements Type2 { | 4872 abstract class TypeVariableType implements Type2 { |
4770 TypeVariableElement get element; | 4873 TypeVariableElement get element; |
4771 } | 4874 } |
4772 /** | 4875 /** |
4773 * The interface {@code VoidType} defines the behavior of the unique object repr
esenting the type{@code void}. | 4876 * The interface {@code VoidType} defines the behavior of the unique object repr
esenting the type{@code void}. |
4774 * @coverage dart.engine.type | 4877 * @coverage dart.engine.type |
4775 */ | 4878 */ |
4776 abstract class VoidType implements Type2 { | 4879 abstract class VoidType implements Type2 { |
4777 VoidType substitute2(List<Type2> argumentTypes, List<Type2> parameterTypes); | 4880 VoidType substitute2(List<Type2> argumentTypes, List<Type2> parameterTypes); |
4778 } | 4881 } |
OLD | NEW |