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

Side by Side Diff: pkg/compiler/lib/src/util/util.dart

Issue 1284593003: Remove dart2jslib.dart (Closed) Base URL: https://github.com/dart-lang/sdk.git@master
Patch Set: Created 5 years, 4 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 | « pkg/compiler/lib/src/use_unused_api.dart ('k') | pkg/compiler/lib/src/world.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) 2011, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2011, 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 dart2js.util; 5 library dart2js.util;
6 6
7 import 'util_implementation.dart'; 7 import 'util_implementation.dart';
8 import 'characters.dart'; 8 import 'characters.dart';
9 9
10 export 'setlet.dart'; 10 export 'setlet.dart';
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after
56 static int mapHash(Map map, [int existing = 0]) { 56 static int mapHash(Map map, [int existing = 0]) {
57 int h = existing; 57 int h = existing;
58 for (var key in map.keys) { 58 for (var key in map.keys) {
59 h = mixHashCodeBits(h, key.hashCode); 59 h = mixHashCodeBits(h, key.hashCode);
60 h = mixHashCodeBits(h, map[key].hashCode); 60 h = mixHashCodeBits(h, map[key].hashCode);
61 } 61 }
62 return h; 62 return h;
63 } 63 }
64 } 64 }
65 65
66 /**
67 * Tagging interface for classes from which source spans can be generated.
68 */
69 // TODO(johnniwinther): Find a better name.
70 // TODO(ahe): How about "Bolt"?
71 abstract class Spannable {}
72
73 class _SpannableSentinel implements Spannable {
74 final String name;
75
76 const _SpannableSentinel(this.name);
77
78 String toString() => name;
79 }
80
81 /// Sentinel spannable used to mark that diagnostics should point to the
82 /// current element. Note that the diagnostic reporting will fail if the current
83 /// element is `null`.
84 const Spannable CURRENT_ELEMENT_SPANNABLE =
85 const _SpannableSentinel("Current element");
86
87 /// Sentinel spannable used to mark that there might be no location for the
88 /// diagnostic. Use this only when it is not an error not to have a current
89 /// element.
90 const Spannable NO_LOCATION_SPANNABLE =
91 const _SpannableSentinel("No location");
92
93 class SpannableAssertionFailure {
94 final Spannable node;
95 final String message;
96 SpannableAssertionFailure(this.node, this.message);
97
98 String toString() => 'Assertion failure'
99 '${message != null ? ': $message' : ''}';
100 }
101
102 bool equalElements(List a, List b) { 66 bool equalElements(List a, List b) {
103 if (a.length != b.length) return false; 67 if (a.length != b.length) return false;
104 for (int index = 0; index < a.length; index++) { 68 for (int index = 0; index < a.length; index++) {
105 if (a[index] != b[index]) { 69 if (a[index] != b[index]) {
106 return false; 70 return false;
107 } 71 }
108 } 72 }
109 return true; 73 return true;
110 } 74 }
111 75
(...skipping 141 matching lines...) Expand 10 before | Expand all | Expand 10 after
253 if (usedNames.contains(suggestedName)) { 217 if (usedNames.contains(suggestedName)) {
254 int counter = 0; 218 int counter = 0;
255 while (usedNames.contains(result)) { 219 while (usedNames.contains(result)) {
256 counter++; 220 counter++;
257 result = "$suggestedName$counter"; 221 result = "$suggestedName$counter";
258 } 222 }
259 } 223 }
260 usedNames.add(result); 224 usedNames.add(result);
261 return result; 225 return result;
262 } 226 }
OLDNEW
« no previous file with comments | « pkg/compiler/lib/src/use_unused_api.dart ('k') | pkg/compiler/lib/src/world.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698