| OLD | NEW |
| 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2012, 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 package com.google.dart.compiler.type; | 5 package com.google.dart.compiler.type; |
| 6 | 6 |
| 7 import com.google.common.annotations.VisibleForTesting; | 7 import com.google.common.annotations.VisibleForTesting; |
| 8 import com.google.common.base.Joiner; | 8 import com.google.common.base.Joiner; |
| 9 import com.google.common.base.Objects; | 9 import com.google.common.base.Objects; |
| 10 import com.google.common.collect.ArrayListMultimap; | 10 import com.google.common.collect.ArrayListMultimap; |
| (...skipping 2868 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2879 } | 2879 } |
| 2880 | 2880 |
| 2881 @Override | 2881 @Override |
| 2882 public Void visitMethodDefinition(DartMethodDefinition node) { | 2882 public Void visitMethodDefinition(DartMethodDefinition node) { |
| 2883 MethodElement method = node.getElement(); | 2883 MethodElement method = node.getElement(); |
| 2884 String name = method.getName(); | 2884 String name = method.getName(); |
| 2885 if (superMembers != null && !method.isConstructor()) { | 2885 if (superMembers != null && !method.isConstructor()) { |
| 2886 Collection<Element> overridden = superMembers.removeAll(name); | 2886 Collection<Element> overridden = superMembers.removeAll(name); |
| 2887 Elements.setOverridden(method, ImmutableSet.copyOf(overridden)); | 2887 Elements.setOverridden(method, ImmutableSet.copyOf(overridden)); |
| 2888 // Check for invalid @override metadata. | 2888 // Check for invalid @override metadata. |
| 2889 if (overridden.isEmpty() && node.getMetadata().isOverride()) { | 2889 if (overridden.isEmpty() && node.getObsoleteMetadata().isOverride()) { |
| 2890 typeError(node.getName(), ResolverErrorCode.INVALID_OVERRIDE_METADAT
A); | 2890 typeError(node.getName(), ResolverErrorCode.INVALID_OVERRIDE_METADAT
A); |
| 2891 } | 2891 } |
| 2892 // Check that override is valid. | 2892 // Check that override is valid. |
| 2893 for (Element superElement : overridden) { | 2893 for (Element superElement : overridden) { |
| 2894 if (!(method.isStatic() && superElement.getModifiers().isStatic()))
{ | 2894 if (!(method.isStatic() && superElement.getModifiers().isStatic()))
{ |
| 2895 if (canOverride(node.getName(), method.getModifiers(), superElemen
t) | 2895 if (canOverride(node.getName(), method.getModifiers(), superElemen
t) |
| 2896 && !superElement.getModifiers().isStatic()) { | 2896 && !superElement.getModifiers().isStatic()) { |
| 2897 switch (superElement.getKind()) { | 2897 switch (superElement.getKind()) { |
| 2898 case METHOD: | 2898 case METHOD: |
| 2899 checkOverride(node.getName(), method, superElement); | 2899 checkOverride(node.getName(), method, superElement); |
| (...skipping 149 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3049 for (VariableElement v : parameters) { | 3049 for (VariableElement v : parameters) { |
| 3050 if (v.isNamed()) { | 3050 if (v.isNamed()) { |
| 3051 named.add(v); | 3051 named.add(v); |
| 3052 } | 3052 } |
| 3053 } | 3053 } |
| 3054 return named; | 3054 return named; |
| 3055 } | 3055 } |
| 3056 } | 3056 } |
| 3057 } | 3057 } |
| 3058 } | 3058 } |
| OLD | NEW |