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 |