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

Side by Side Diff: editor/tools/plugins/com.google.dart.engine/src/com/google/dart/engine/internal/builder/ElementBuilder.java

Issue 26746002: Issue 13918. final fields induce setters that are illegal to call (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 7 years, 2 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 /* 1 /*
2 * Copyright (c) 2012, the Dart project authors. 2 * Copyright (c) 2012, the Dart project authors.
3 * 3 *
4 * Licensed under the Eclipse Public License v1.0 (the "License"); you may not u se this file except 4 * Licensed under the Eclipse Public License v1.0 (the "License"); you may not u se this file except
5 * in compliance with the License. You may obtain a copy of the License at 5 * in compliance with the License. You may obtain a copy of the License at
6 * 6 *
7 * http://www.eclipse.org/legal/epl-v10.html 7 * http://www.eclipse.org/legal/epl-v10.html
8 * 8 *
9 * Unless required by applicable law or agreed to in writing, software distribut ed under the License 9 * Unless required by applicable law or agreed to in writing, software distribut ed under the License
10 * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY K IND, either express 10 * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY K IND, either express
(...skipping 742 matching lines...) Expand 10 before | Expand all | Expand 10 after
753 Keyword.STATIC)); 753 Keyword.STATIC));
754 } 754 }
755 755
756 PropertyAccessorElementImpl getter = new PropertyAccessorElementImpl(varia ble); 756 PropertyAccessorElementImpl getter = new PropertyAccessorElementImpl(varia ble);
757 getter.setGetter(true); 757 getter.setGetter(true);
758 getter.setStatic(variable.isStatic()); 758 getter.setStatic(variable.isStatic());
759 759
760 currentHolder.addAccessor(getter); 760 currentHolder.addAccessor(getter);
761 variable.setGetter(getter); 761 variable.setGetter(getter);
762 762
763 if (!isFinal) { 763 {
Brian Wilkerson 2013/10/09 19:57:48 nit: please remove the unnecessary block
scheglov 2013/10/09 20:04:00 Done.
764 PropertyAccessorElementImpl setter = new PropertyAccessorElementImpl(var iable); 764 PropertyAccessorElementImpl setter = new PropertyAccessorElementImpl(var iable);
765 setter.setSetter(true); 765 setter.setSetter(true);
766 setter.setStatic(variable.isStatic()); 766 setter.setStatic(variable.isStatic());
767 ParameterElementImpl parameter = new ParameterElementImpl( 767 ParameterElementImpl parameter = new ParameterElementImpl(
768 "_" + variable.getName(), 768 "_" + variable.getName(),
769 variable.getNameOffset()); 769 variable.getNameOffset());
770 parameter.setSynthetic(true); 770 parameter.setSynthetic(true);
771 parameter.setParameterKind(ParameterKind.REQUIRED); 771 parameter.setParameterKind(ParameterKind.REQUIRED);
772 setter.setParameters(new ParameterElement[] {parameter}); 772 setter.setParameters(new ParameterElement[] {parameter});
773 773
(...skipping 112 matching lines...) Expand 10 before | Expand all | Expand 10 after
886 ElementHolder previousHolder = currentHolder; 886 ElementHolder previousHolder = currentHolder;
887 currentHolder = holder; 887 currentHolder = holder;
888 try { 888 try {
889 node.visitChildren(this); 889 node.visitChildren(this);
890 } finally { 890 } finally {
891 currentHolder = previousHolder; 891 currentHolder = previousHolder;
892 } 892 }
893 } 893 }
894 } 894 }
895 } 895 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698