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

Side by Side Diff: pkg/compiler/lib/src/resolution/constructors.dart

Issue 2537303004: Disallow `null` in spanFromSpannable. (Closed)
Patch Set: Created 4 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
OLDNEW
1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2015, 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 dart2js.resolution.constructors; 5 library dart2js.resolution.constructors;
6 6
7 import '../common.dart'; 7 import '../common.dart';
8 import '../common/resolution.dart' show Resolution; 8 import '../common/resolution.dart' show Resolution;
9 import '../constants/constructors.dart' 9 import '../constants/constructors.dart'
10 show 10 show
(...skipping 327 matching lines...) Expand 10 before | Expand all | Expand 10 after
338 } 338 }
339 } 339 }
340 if (element.isInitializingFormal) { 340 if (element.isInitializingFormal) {
341 VariableDefinitions variableDefinitions = parameterNodes.head; 341 VariableDefinitions variableDefinitions = parameterNodes.head;
342 Node parameterNode = variableDefinitions.definitions.nodes.head; 342 Node parameterNode = variableDefinitions.definitions.nodes.head;
343 InitializingFormalElementX initializingFormal = element; 343 InitializingFormalElementX initializingFormal = element;
344 FieldElement field = initializingFormal.fieldElement; 344 FieldElement field = initializingFormal.fieldElement;
345 if (!field.isMalformed) { 345 if (!field.isMalformed) {
346 registry.registerStaticUse(new StaticUse.fieldInit(field)); 346 registry.registerStaticUse(new StaticUse.fieldInit(field));
347 } 347 }
348 checkForDuplicateInitializers(field, element.initializer); 348 checkForDuplicateInitializers(field, parameterNode);
349 visitor.defineLocalVariable(parameterNode, initializingFormal); 349 visitor.defineLocalVariable(parameterNode, initializingFormal);
350 visitor.addToScope(initializingFormal); 350 visitor.addToScope(initializingFormal);
351 if (isConst) { 351 if (isConst) {
352 if (element.isNamed) { 352 if (element.isNamed) {
353 fieldInitializers[field] = new NamedArgumentReference(element.name); 353 fieldInitializers[field] = new NamedArgumentReference(element.name);
354 } else { 354 } else {
355 int index = element.functionDeclaration.parameters.indexOf(element); 355 int index = element.functionDeclaration.parameters.indexOf(element);
356 fieldInitializers[field] = new PositionalArgumentReference(index); 356 fieldInitializers[field] = new PositionalArgumentReference(index);
357 } 357 }
358 } else { 358 } else {
(...skipping 520 matching lines...) Expand 10 before | Expand all | Expand 10 after
879 // constructors. 879 // constructors.
880 return null; 880 return null;
881 } 881 }
882 // TODO(johnniwinther): Use [Name] for lookup. 882 // TODO(johnniwinther): Use [Name] for lookup.
883 ConstructorElement constructor = cls.lookupConstructor(constructorName); 883 ConstructorElement constructor = cls.lookupConstructor(constructorName);
884 if (constructor != null) { 884 if (constructor != null) {
885 constructor = constructor.declaration; 885 constructor = constructor.declaration;
886 } 886 }
887 return constructor; 887 return constructor;
888 } 888 }
OLDNEW
« no previous file with comments | « pkg/compiler/lib/src/resolution/class_hierarchy.dart ('k') | pkg/compiler/lib/src/resolved_uri_translator.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698