| OLD | NEW |
| 1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file |
| 2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
| 3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
| 4 | 4 |
| 5 library analyzer.src.generated.element_handle; | 5 library analyzer.src.generated.element_handle; |
| 6 | 6 |
| 7 import 'package:analyzer/dart/ast/ast.dart'; | 7 import 'package:analyzer/dart/ast/ast.dart'; |
| 8 import 'package:analyzer/dart/constant/value.dart'; | 8 import 'package:analyzer/dart/constant/value.dart'; |
| 9 import 'package:analyzer/dart/element/element.dart'; | 9 import 'package:analyzer/dart/element/element.dart'; |
| 10 import 'package:analyzer/dart/element/type.dart'; | 10 import 'package:analyzer/dart/element/type.dart'; |
| (...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 91 @override | 91 @override |
| 92 InterfaceType get supertype => actualElement.supertype; | 92 InterfaceType get supertype => actualElement.supertype; |
| 93 | 93 |
| 94 @override | 94 @override |
| 95 InterfaceType get type => actualElement.type; | 95 InterfaceType get type => actualElement.type; |
| 96 | 96 |
| 97 @override | 97 @override |
| 98 List<TypeParameterElement> get typeParameters => actualElement.typeParameters; | 98 List<TypeParameterElement> get typeParameters => actualElement.typeParameters; |
| 99 | 99 |
| 100 @override | 100 @override |
| 101 ConstructorElement get unnamedConstructor { | 101 ConstructorElement get unnamedConstructor => actualElement.unnamedConstructor; |
| 102 ensureConstructorsReady(); | |
| 103 return actualElement.unnamedConstructor; | |
| 104 } | |
| 105 | 102 |
| 106 @override | 103 @override |
| 107 NamedCompilationUnitMember computeNode() => super.computeNode(); | 104 NamedCompilationUnitMember computeNode() => super.computeNode(); |
| 108 | 105 |
| 109 /** | 106 @override |
| 110 * Ensure that [ClassElement.accessors] and [ClassElement.fields] are ready | 107 FieldElement getField(String fieldName) => actualElement.getField(fieldName); |
| 111 * in [actualElement]. | |
| 112 */ | |
| 113 void ensureAccessorsReady() {} | |
| 114 | |
| 115 /** | |
| 116 * The method is called by [ClassElementImpl.getImpl] before returning | |
| 117 * the [actualElement] as [ClassElementImpl]. At this moment we must ensure | |
| 118 * that [ClassElementImpl] is fully complete, we cannot continue filling it | |
| 119 * lazily. | |
| 120 */ | |
| 121 void ensureActualElementComplete() {} | |
| 122 | |
| 123 /** | |
| 124 * Ensure that [ClassElement.constructors] are ready in [actualElement]. | |
| 125 */ | |
| 126 void ensureConstructorsReady() {} | |
| 127 | |
| 128 /** | |
| 129 * Ensure that [ClassElement.methods] are ready in [actualElement]. | |
| 130 */ | |
| 131 void ensureMethodsReady() {} | |
| 132 | 108 |
| 133 @override | 109 @override |
| 134 FieldElement getField(String fieldName) { | 110 PropertyAccessorElement getGetter(String getterName) => |
| 135 ensureAccessorsReady(); | 111 actualElement.getGetter(getterName); |
| 136 return actualElement.getField(fieldName); | |
| 137 } | |
| 138 | 112 |
| 139 @override | 113 @override |
| 140 PropertyAccessorElement getGetter(String getterName) { | 114 MethodElement getMethod(String methodName) => |
| 141 ensureAccessorsReady(); | 115 actualElement.getMethod(methodName); |
| 142 return actualElement.getGetter(getterName); | |
| 143 } | |
| 144 | 116 |
| 145 @override | 117 @override |
| 146 MethodElement getMethod(String methodName) { | 118 ConstructorElement getNamedConstructor(String name) => |
| 147 ensureMethodsReady(); | 119 actualElement.getNamedConstructor(name); |
| 148 return actualElement.getMethod(methodName); | |
| 149 } | |
| 150 | 120 |
| 151 @override | 121 @override |
| 152 ConstructorElement getNamedConstructor(String name) { | 122 PropertyAccessorElement getSetter(String setterName) => |
| 153 ensureConstructorsReady(); | 123 actualElement.getSetter(setterName); |
| 154 return actualElement.getNamedConstructor(name); | |
| 155 } | |
| 156 | |
| 157 @override | |
| 158 PropertyAccessorElement getSetter(String setterName) { | |
| 159 ensureAccessorsReady(); | |
| 160 return actualElement.getSetter(setterName); | |
| 161 } | |
| 162 | 124 |
| 163 @override | 125 @override |
| 164 bool isSuperConstructorAccessible(ConstructorElement constructor) => | 126 bool isSuperConstructorAccessible(ConstructorElement constructor) => |
| 165 actualElement.isSuperConstructorAccessible(constructor); | 127 actualElement.isSuperConstructorAccessible(constructor); |
| 166 | 128 |
| 167 @override | 129 @override |
| 168 MethodElement lookUpConcreteMethod( | 130 MethodElement lookUpConcreteMethod( |
| 169 String methodName, LibraryElement library) { | 131 String methodName, LibraryElement library) => |
| 170 ensureMethodsReady(); | 132 actualElement.lookUpConcreteMethod(methodName, library); |
| 171 return actualElement.lookUpConcreteMethod(methodName, library); | |
| 172 } | |
| 173 | 133 |
| 174 @override | 134 @override |
| 175 PropertyAccessorElement lookUpGetter( | 135 PropertyAccessorElement lookUpGetter( |
| 176 String getterName, LibraryElement library) => | 136 String getterName, LibraryElement library) => |
| 177 actualElement.lookUpGetter(getterName, library); | 137 actualElement.lookUpGetter(getterName, library); |
| 178 | 138 |
| 179 @override | 139 @override |
| 180 PropertyAccessorElement lookUpInheritedConcreteGetter( | 140 PropertyAccessorElement lookUpInheritedConcreteGetter( |
| 181 String methodName, LibraryElement library) { | 141 String methodName, LibraryElement library) => |
| 182 ensureAccessorsReady(); | 142 actualElement.lookUpInheritedConcreteGetter(methodName, library); |
| 183 return actualElement.lookUpInheritedConcreteGetter(methodName, library); | |
| 184 } | |
| 185 | 143 |
| 186 @override | 144 @override |
| 187 MethodElement lookUpInheritedConcreteMethod( | 145 MethodElement lookUpInheritedConcreteMethod( |
| 188 String methodName, LibraryElement library) { | 146 String methodName, LibraryElement library) => |
| 189 ensureMethodsReady(); | 147 actualElement.lookUpInheritedConcreteMethod(methodName, library); |
| 190 return actualElement.lookUpInheritedConcreteMethod(methodName, library); | |
| 191 } | |
| 192 | 148 |
| 193 @override | 149 @override |
| 194 PropertyAccessorElement lookUpInheritedConcreteSetter( | 150 PropertyAccessorElement lookUpInheritedConcreteSetter( |
| 195 String methodName, LibraryElement library) { | 151 String methodName, LibraryElement library) => |
| 196 ensureAccessorsReady(); | 152 actualElement.lookUpInheritedConcreteSetter(methodName, library); |
| 197 return actualElement.lookUpInheritedConcreteSetter(methodName, library); | |
| 198 } | |
| 199 | 153 |
| 200 @override | 154 @override |
| 201 MethodElement lookUpInheritedMethod( | 155 MethodElement lookUpInheritedMethod( |
| 202 String methodName, LibraryElement library) { | 156 String methodName, LibraryElement library) { |
| 203 ensureMethodsReady(); | |
| 204 return actualElement.lookUpInheritedMethod(methodName, library); | 157 return actualElement.lookUpInheritedMethod(methodName, library); |
| 205 } | 158 } |
| 206 | 159 |
| 207 @override | 160 @override |
| 208 MethodElement lookUpMethod(String methodName, LibraryElement library) { | 161 MethodElement lookUpMethod(String methodName, LibraryElement library) => |
| 209 ensureMethodsReady(); | 162 actualElement.lookUpMethod(methodName, library); |
| 210 return actualElement.lookUpMethod(methodName, library); | |
| 211 } | |
| 212 | 163 |
| 213 @override | 164 @override |
| 214 PropertyAccessorElement lookUpSetter( | 165 PropertyAccessorElement lookUpSetter( |
| 215 String setterName, LibraryElement library) { | 166 String setterName, LibraryElement library) => |
| 216 ensureAccessorsReady(); | 167 actualElement.lookUpSetter(setterName, library); |
| 217 return actualElement.lookUpSetter(setterName, library); | |
| 218 } | |
| 219 } | 168 } |
| 220 | 169 |
| 221 /** | 170 /** |
| 222 * A handle to a [CompilationUnitElement]. | 171 * A handle to a [CompilationUnitElement]. |
| 223 */ | 172 */ |
| 224 class CompilationUnitElementHandle extends ElementHandle | 173 class CompilationUnitElementHandle extends ElementHandle |
| 225 implements CompilationUnitElement { | 174 implements CompilationUnitElement { |
| 226 /** | 175 /** |
| 227 * Initialize a newly created element handle to represent the element at the | 176 * Initialize a newly created element handle to represent the element at the |
| 228 * given [_location]. The [_resynthesizer] will be used to resynthesize the | 177 * given [_location]. The [_resynthesizer] will be used to resynthesize the |
| (...skipping 932 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1161 | 1110 |
| 1162 @override | 1111 @override |
| 1163 bool get isStatic => actualElement.isStatic; | 1112 bool get isStatic => actualElement.isStatic; |
| 1164 | 1113 |
| 1165 @override | 1114 @override |
| 1166 DartType get type => actualElement.type; | 1115 DartType get type => actualElement.type; |
| 1167 | 1116 |
| 1168 @override | 1117 @override |
| 1169 DartObject computeConstantValue() => actualElement.computeConstantValue(); | 1118 DartObject computeConstantValue() => actualElement.computeConstantValue(); |
| 1170 } | 1119 } |
| OLD | NEW |