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

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

Issue 18029018: Check that non-abstract classes implement all methods. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge
Patch Set: Address comments Created 7 years 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
« no previous file with comments | « no previous file | dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2013, 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.modelx; 5 library elements.modelx;
6 6
7 import 'elements.dart'; 7 import 'elements.dart';
8 import '../../compiler.dart' as api; 8 import '../../compiler.dart' as api;
9 import '../tree/tree.dart'; 9 import '../tree/tree.dart';
10 import '../util/util.dart'; 10 import '../util/util.dart';
(...skipping 1294 matching lines...) Expand 10 before | Expand all | Expand 10 after
1305 setter.modifiers.nodes, 1305 setter.modifiers.nodes,
1306 setter.modifiers.flags | Modifiers.FLAG_ABSTRACT); 1306 setter.modifiers.flags | Modifiers.FLAG_ABSTRACT);
1307 } 1307 }
1308 } 1308 }
1309 1309
1310 bool isInstanceMember() { 1310 bool isInstanceMember() {
1311 return isMember() && !modifiers.isStatic(); 1311 return isMember() && !modifiers.isStatic();
1312 } 1312 }
1313 1313
1314 accept(ElementVisitor visitor) => visitor.visitAbstractFieldElement(this); 1314 accept(ElementVisitor visitor) => visitor.visitAbstractFieldElement(this);
1315
1316 bool get isAbstract {
1317 return getter != null && getter.isAbstract
1318 || setter != null && setter.isAbstract;
1319 }
1315 } 1320 }
1316 1321
1317 // TODO(johnniwinther): [FunctionSignature] should be merged with 1322 // TODO(johnniwinther): [FunctionSignature] should be merged with
1318 // [FunctionType]. 1323 // [FunctionType].
1319 class FunctionSignatureX implements FunctionSignature { 1324 class FunctionSignatureX implements FunctionSignature {
1320 final Link<Element> requiredParameters; 1325 final Link<Element> requiredParameters;
1321 final Link<Element> optionalParameters; 1326 final Link<Element> optionalParameters;
1322 final DartType returnType; 1327 final DartType returnType;
1323 final int requiredParameterCount; 1328 final int requiredParameterCount;
1324 final int optionalParameterCount; 1329 final int optionalParameterCount;
(...skipping 1109 matching lines...) Expand 10 before | Expand all | Expand 10 after
2434 2439
2435 MetadataAnnotation ensureResolved(Compiler compiler) { 2440 MetadataAnnotation ensureResolved(Compiler compiler) {
2436 if (resolutionState == STATE_NOT_STARTED) { 2441 if (resolutionState == STATE_NOT_STARTED) {
2437 compiler.resolver.resolveMetadataAnnotation(this); 2442 compiler.resolver.resolveMetadataAnnotation(this);
2438 } 2443 }
2439 return this; 2444 return this;
2440 } 2445 }
2441 2446
2442 String toString() => 'MetadataAnnotation($value, $resolutionState)'; 2447 String toString() => 'MetadataAnnotation($value, $resolutionState)';
2443 } 2448 }
OLDNEW
« no previous file with comments | « no previous file | dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698