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

Side by Side Diff: pkg/compiler/lib/src/elements/common.dart

Issue 2925263002: A step towards handling `new Object()` in compile_from_dill_test (Closed)
Patch Set: Created 3 years, 6 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
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 /// Mixins that implement convenience methods on [Element] subclasses. 5 /// Mixins that implement convenience methods on [Element] subclasses.
6 6
7 library elements.common; 7 library elements.common;
8 8
9 import '../common/names.dart' show Identifiers, Names, Uris; 9 import '../common/names.dart' show Identifiers, Names, Uris;
10 import '../common_elements.dart' show CommonElements; 10 import '../common_elements.dart' show CommonElements;
(...skipping 455 matching lines...) Expand 10 before | Expand all | Expand 10 after
466 return member != null && member.isMethod ? member.type : null; 466 return member != null && member.isMethod ? member.type : null;
467 } 467 }
468 468
469 @override 469 @override
470 bool get isNamedMixinApplication { 470 bool get isNamedMixinApplication {
471 return isMixinApplication && !isUnnamedMixinApplication; 471 return isMixinApplication && !isUnnamedMixinApplication;
472 } 472 }
473 473
474 // backendMembers are members that have been added by the backend to simplify 474 // backendMembers are members that have been added by the backend to simplify
475 // compilation. They don't have any user-side counter-part. 475 // compilation. They don't have any user-side counter-part.
476 Link<Element> backendMembers = const Link<Element>(); 476 Link<ConstructorBodyElement> backendMembers =
Siggi Cherem (dart-lang) 2017/06/08 18:01:46 TODO: rename?
Johnni Winther 2017/06/09 09:28:49 Renamed all methods - and removed the reverseBacke
477 const Link<ConstructorBodyElement>();
477 478
478 bool get hasBackendMembers => !backendMembers.isEmpty; 479 bool get hasBackendMembers => !backendMembers.isEmpty;
479 480
480 void addBackendMember(Element member) { 481 void addBackendMember(ConstructorBodyElement member) {
481 // TODO(ngeoffray): Deprecate this method. 482 // TODO(ngeoffray): Deprecate this method.
482 assert(member.isGenerativeConstructorBody); 483 assert(member.isGenerativeConstructorBody);
483 backendMembers = backendMembers.prepend(member); 484 backendMembers = backendMembers.prepend(member);
484 } 485 }
485 486
486 void reverseBackendMembers() { 487 void reverseBackendMembers() {
487 backendMembers = backendMembers.reverse(); 488 backendMembers = backendMembers.reverse();
488 } 489 }
489 490
490 /// Lookup a synthetic element created by the backend. 491 /// Lookup a synthetic element created by the backend.
491 Element lookupBackendMember(String memberName) { 492 ConstructorBodyElement lookupBackendMember(String memberName) {
492 for (Element element in backendMembers) { 493 for (ConstructorBodyElement element in backendMembers) {
493 if (element.name == memberName) { 494 if (element.name == memberName) {
494 return element; 495 return element;
495 } 496 }
496 } 497 }
497 return null; 498 return null;
498 } 499 }
499 500
500 void forEachBackendMember(void f(Element member)) { 501 void forEachBackendMember(void f(ConstructorBodyElement member)) {
501 backendMembers.forEach(f); 502 backendMembers.forEach(f);
502 } 503 }
503 } 504 }
504 505
505 abstract class FunctionSignatureCommon implements FunctionSignature { 506 abstract class FunctionSignatureCommon implements FunctionSignature {
506 ParameterStructure _parameterStructure; 507 ParameterStructure _parameterStructure;
507 508
508 ResolutionDartType get returnType => type.returnType; 509 ResolutionDartType get returnType => type.returnType;
509 510
510 void forEachRequiredParameter(void function(Element parameter)) { 511 void forEachRequiredParameter(void function(Element parameter)) {
(...skipping 162 matching lines...) Expand 10 before | Expand all | Expand 10 after
673 @override 674 @override
674 bool get isBoolFromEnvironmentConstructor { 675 bool get isBoolFromEnvironmentConstructor {
675 return fromEnvironmentState == _FromEnvironmentState.BOOL; 676 return fromEnvironmentState == _FromEnvironmentState.BOOL;
676 } 677 }
677 678
678 @override 679 @override
679 bool get isStringFromEnvironmentConstructor { 680 bool get isStringFromEnvironmentConstructor {
680 return fromEnvironmentState == _FromEnvironmentState.STRING; 681 return fromEnvironmentState == _FromEnvironmentState.STRING;
681 } 682 }
682 } 683 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698