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

Side by Side Diff: pkg/front_end/lib/src/fasta/kernel/builder_accessors.dart

Issue 2751083002: Revert "[kernel] offsets on direct property get/set" (Closed)
Patch Set: Created 3 years, 9 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
« no previous file with comments | « no previous file | pkg/front_end/lib/src/fasta/kernel/frontend_accessors.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) 2016, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2016, 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 fasta.builder_accessors; 5 library fasta.builder_accessors;
6 6
7 export 'frontend_accessors.dart' show wrapInvalid; 7 export 'frontend_accessors.dart' show wrapInvalid;
8 8
9 import 'frontend_accessors.dart' show Accessor; 9 import 'frontend_accessors.dart' show Accessor;
10 10
(...skipping 198 matching lines...) Expand 10 before | Expand all | Expand 10 after
209 // Notice that 'this' or 'super' can't be null. So we can ignore the 209 // Notice that 'this' or 'super' can't be null. So we can ignore the
210 // value of [isNullAware]. 210 // value of [isNullAware].
211 MethodInvocation result = buildMethodInvocation( 211 MethodInvocation result = buildMethodInvocation(
212 new ThisExpression(), send.name, send.arguments, charOffset); 212 new ThisExpression(), send.name, send.arguments, charOffset);
213 return isSuper ? helper.toSuperMethodInvocation(result) : result; 213 return isSuper ? helper.toSuperMethodInvocation(result) : result;
214 } else { 214 } else {
215 if (isSuper) { 215 if (isSuper) {
216 Member getter = helper.lookupSuperMember(send.name); 216 Member getter = helper.lookupSuperMember(send.name);
217 Member setter = helper.lookupSuperMember(send.name, isSetter: true); 217 Member setter = helper.lookupSuperMember(send.name, isSetter: true);
218 return new SuperPropertyAccessor( 218 return new SuperPropertyAccessor(
219 helper, send.charOffset, send.name, getter, setter); 219 helper, charOffset, send.name, getter, setter);
220 } else { 220 } else {
221 return new ThisPropertyAccessor( 221 return new ThisPropertyAccessor(
222 helper, send.charOffset, send.name, null, null); 222 helper, charOffset, send.name, null, null);
223 } 223 }
224 } 224 }
225 } 225 }
226 226
227 doInvocation(int charOffset, Arguments arguments) { 227 doInvocation(int charOffset, Arguments arguments) {
228 if (isInitializer) { 228 if (isInitializer) {
229 return buildConstructorInitializer(charOffset, new Name(""), arguments); 229 return buildConstructorInitializer(charOffset, new Name(""), arguments);
230 } else { 230 } else {
231 return buildMethodInvocation( 231 return buildMethodInvocation(
232 new ThisExpression(), new Name("call"), arguments, charOffset); 232 new ThisExpression(), new Name("call"), arguments, charOffset);
(...skipping 352 matching lines...) Expand 10 before | Expand all | Expand 10 after
585 } 585 }
586 } 586 }
587 587
588 toString() => "StaticAccessor()"; 588 toString() => "StaticAccessor()";
589 } 589 }
590 590
591 class SuperPropertyAccessor extends kernel.SuperPropertyAccessor 591 class SuperPropertyAccessor extends kernel.SuperPropertyAccessor
592 with BuilderAccessor { 592 with BuilderAccessor {
593 final BuilderHelper helper; 593 final BuilderHelper helper;
594 594
595 final int charOffset;
596
595 SuperPropertyAccessor( 597 SuperPropertyAccessor(
596 this.helper, int charOffset, Name name, Member getter, Member setter) 598 this.helper, this.charOffset, Name name, Member getter, Member setter)
597 : super(name, getter, setter, charOffset); 599 : super(name, getter, setter);
598 600
599 String get plainNameForRead => name.name; 601 String get plainNameForRead => name.name;
600 602
601 Expression doInvocation(int charOffset, Arguments arguments) { 603 Expression doInvocation(int charOffset, Arguments arguments) {
602 if (getter == null || isFieldOrGetter(getter)) { 604 if (getter == null || isFieldOrGetter(getter)) {
603 return buildMethodInvocation( 605 return buildMethodInvocation(
604 buildSimpleRead(), new Name("call"), arguments, charOffset); 606 buildSimpleRead(), new Name("call"), arguments, charOffset);
605 } else { 607 } else {
606 return new DirectMethodInvocation(new ThisExpression(), getter, arguments) 608 return new DirectMethodInvocation(new ThisExpression(), getter, arguments)
607 ..fileOffset = charOffset; 609 ..fileOffset = charOffset;
(...skipping 146 matching lines...) Expand 10 before | Expand all | Expand 10 after
754 buildIsNull(new VariableGet(variable)), 756 buildIsNull(new VariableGet(variable)),
755 new NullLiteral(), 757 new NullLiteral(),
756 new MethodInvocation(new VariableGet(variable), name, arguments) 758 new MethodInvocation(new VariableGet(variable), name, arguments)
757 ..fileOffset = charOffset, 759 ..fileOffset = charOffset,
758 const DynamicType())); 760 const DynamicType()));
759 } else { 761 } else {
760 return new MethodInvocation(receiver, name, arguments) 762 return new MethodInvocation(receiver, name, arguments)
761 ..fileOffset = charOffset; 763 ..fileOffset = charOffset;
762 } 764 }
763 } 765 }
OLDNEW
« no previous file with comments | « no previous file | pkg/front_end/lib/src/fasta/kernel/frontend_accessors.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698