Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(90)

Side by Side Diff: sdk/lib/_internal/compiler/implementation/elements/elements.dart

Issue 14168003: Implement implicit constructors in mixin applications. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Fix an assert. Created 7 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 library elements; 5 library elements;
6 6
7 import 'dart:uri'; 7 import 'dart:uri';
8 8
9 import 'modelx.dart'; 9 import 'modelx.dart';
10 import '../tree/tree.dart'; 10 import '../tree/tree.dart';
(...skipping 211 matching lines...) Expand 10 before | Expand all | Expand 10 after
222 Element getEnclosingMember(); 222 Element getEnclosingMember();
223 Element getOutermostEnclosingMemberOrTopLevel(); 223 Element getOutermostEnclosingMemberOrTopLevel();
224 224
225 FunctionElement asFunctionElement(); 225 FunctionElement asFunctionElement();
226 226
227 bool get isPatched; 227 bool get isPatched;
228 bool get isPatch; 228 bool get isPatch;
229 bool get isImplementation; 229 bool get isImplementation;
230 bool get isDeclaration; 230 bool get isDeclaration;
231 bool get isSynthesized; 231 bool get isSynthesized;
232 bool get isForwardingConstructor;
232 233
233 Element get implementation; 234 Element get implementation;
234 Element get declaration; 235 Element get declaration;
235 Element get patch; 236 Element get patch;
236 Element get origin; 237 Element get origin;
237 238
238 bool hasFixedBackendName(); 239 bool hasFixedBackendName();
239 String fixedBackendName(); 240 String fixedBackendName();
240 241
241 bool isAbstract(Compiler compiler); 242 bool isAbstract(Compiler compiler);
242 bool isForeign(Compiler compiler); 243 bool isForeign(Compiler compiler);
243 244
244 void addMetadata(MetadataAnnotation annotation); 245 void addMetadata(MetadataAnnotation annotation);
245 void setNative(String name); 246 void setNative(String name);
246 void setFixedBackendName(String name); 247 void setFixedBackendName(String name);
247 248
248 Scope buildScope(); 249 Scope buildScope();
250
251 /// If the element is a forwarding constructor, [targetConstructor] holds
252 /// the generative constructor that the forwarding constructor points to
253 /// (possibly via other forwarding constructors).
254 FunctionElement get targetConstructor;
249 } 255 }
250 256
251 class Elements { 257 class Elements {
252 static bool isUnresolved(Element e) { 258 static bool isUnresolved(Element e) {
253 return e == null || e.isErroneous(); 259 return e == null || e.isErroneous();
254 } 260 }
255 static bool isErroneousElement(Element e) => e != null && e.isErroneous(); 261 static bool isErroneousElement(Element e) => e != null && e.isErroneous();
256 262
257 static bool isClass(Element e) => e != null && e.kind == ElementKind.CLASS; 263 static bool isClass(Element e) => e != null && e.kind == ElementKind.CLASS;
258 static bool isTypedef(Element e) { 264 static bool isTypedef(Element e) {
(...skipping 611 matching lines...) Expand 10 before | Expand all | Expand 10 after
870 int get resolutionState; 876 int get resolutionState;
871 Token get beginToken; 877 Token get beginToken;
872 Token get endToken; 878 Token get endToken;
873 879
874 // TODO(kasperl): Try to get rid of these. 880 // TODO(kasperl): Try to get rid of these.
875 void set annotatedElement(Element value); 881 void set annotatedElement(Element value);
876 void set resolutionState(int value); 882 void set resolutionState(int value);
877 883
878 MetadataAnnotation ensureResolved(Compiler compiler); 884 MetadataAnnotation ensureResolved(Compiler compiler);
879 } 885 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698