| 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 class Universe { | 5 class Universe { |
| 6 Map<Element, CodeBuffer> generatedCode; | 6 Map<Element, CodeBuffer> generatedCode; |
| 7 Map<Element, CodeBuffer> generatedBailoutCode; | 7 Map<Element, CodeBuffer> generatedBailoutCode; |
| 8 final Set<ClassElement> instantiatedClasses; | 8 final Set<ClassElement> instantiatedClasses; |
| 9 final Set<SourceString> instantiatedClassInstanceFields; | 9 final Set<SourceString> instantiatedClassInstanceFields; |
| 10 final Set<FunctionElement> staticFunctionsNeedingGetter; | 10 final Set<FunctionElement> staticFunctionsNeedingGetter; |
| (...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 66 | 66 |
| 67 bool hasFieldSetter(Element member, Compiler compiler) { | 67 bool hasFieldSetter(Element member, Compiler compiler) { |
| 68 return hasMatchingSelector(fieldSetters[member.name], member, compiler); | 68 return hasMatchingSelector(fieldSetters[member.name], member, compiler); |
| 69 } | 69 } |
| 70 } | 70 } |
| 71 | 71 |
| 72 class SelectorKind { | 72 class SelectorKind { |
| 73 final String name; | 73 final String name; |
| 74 const SelectorKind(this.name); | 74 const SelectorKind(this.name); |
| 75 | 75 |
| 76 static final SelectorKind GETTER = const SelectorKind('getter'); | 76 static const SelectorKind GETTER = const SelectorKind('getter'); |
| 77 static final SelectorKind SETTER = const SelectorKind('setter'); | 77 static const SelectorKind SETTER = const SelectorKind('setter'); |
| 78 static final SelectorKind CALL = const SelectorKind('call'); | 78 static const SelectorKind CALL = const SelectorKind('call'); |
| 79 static final SelectorKind OPERATOR = const SelectorKind('operator'); | 79 static const SelectorKind OPERATOR = const SelectorKind('operator'); |
| 80 static final SelectorKind INDEX = const SelectorKind('index'); | 80 static const SelectorKind INDEX = const SelectorKind('index'); |
| 81 | 81 |
| 82 toString() => name; | 82 toString() => name; |
| 83 } | 83 } |
| 84 | 84 |
| 85 class Selector implements Hashable { | 85 class Selector implements Hashable { |
| 86 final SelectorKind kind; | 86 final SelectorKind kind; |
| 87 final SourceString name; | 87 final SourceString name; |
| 88 final LibraryElement library; // Library is null for non-private selectors. | 88 final LibraryElement library; // Library is null for non-private selectors. |
| 89 | 89 |
| 90 // The numbers of arguments of the selector. Includes named arguments. | 90 // The numbers of arguments of the selector. Includes named arguments. |
| (...skipping 298 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 389 } | 389 } |
| 390 | 390 |
| 391 return false; | 391 return false; |
| 392 } | 392 } |
| 393 | 393 |
| 394 toString() { | 394 toString() { |
| 395 return 'Selector($kind, "${name.slowToString()}", ' | 395 return 'Selector($kind, "${name.slowToString()}", ' |
| 396 '$argumentCount, type=$receiverType)'; | 396 '$argumentCount, type=$receiverType)'; |
| 397 } | 397 } |
| 398 } | 398 } |
| OLD | NEW |