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

Side by Side Diff: pkg/collection/lib/equality.dart

Issue 261763002: Rip out the last dart:io dependency from pkg/http. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 6 years, 7 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
« no previous file with comments | « no previous file | pkg/http/CHANGELOG.md » ('j') | pkg/http/lib/browser_client.dart » ('J')
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2013, 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 /** 5 /**
6 * Defines equality relations on collections. 6 * Defines equality relations on collections.
7 */ 7 */
8 library dart.pkg.collection.equality; 8 library dart.pkg.collection.equality;
9 9
10 import "dart:collection"; 10 import "dart:collection";
11 11
12 const int _HASH_MASK = 0x7fffffff; 12 const int _HASH_MASK = 0x7fffffff;
13 13
14 /** 14 /**
15 * A generic equality relation on objects. 15 * A generic equality relation on objects.
16 */ 16 */
17 abstract class Equality<E> { 17 abstract class Equality<E> {
18 const factory Equality() = DefaultEquality; 18 factory Equality() => const DefaultEquality();
Bob Nystrom 2014/05/01 18:30:12 What's up with this?
nweiz 2014/05/01 19:34:54 Oops, this works around a dart2js bug but shouldn'
19 19
20 /** 20 /**
21 * Compare two elements for being equal. 21 * Compare two elements for being equal.
22 * 22 *
23 * This should be a proper equality relation. 23 * This should be a proper equality relation.
24 */ 24 */
25 bool equals(E e1, E e2); 25 bool equals(E e1, E e2);
26 26
27 /** 27 /**
28 * Get a hashcode of an element. 28 * Get a hashcode of an element.
(...skipping 381 matching lines...) Expand 10 before | Expand all | Expand 10 after
410 if (o is List) return new ListEquality(this).hash(o); 410 if (o is List) return new ListEquality(this).hash(o);
411 if (o is Iterable) return new IterableEquality(this).hash(o); 411 if (o is Iterable) return new IterableEquality(this).hash(o);
412 } else if (o is Iterable) { 412 } else if (o is Iterable) {
413 return new UnorderedIterableEquality(this).hash(o); 413 return new UnorderedIterableEquality(this).hash(o);
414 } 414 }
415 return _base.hash(o); 415 return _base.hash(o);
416 } 416 }
417 417
418 bool isValidKey(Object o) => o is Iterable || o is Map || _base.isValidKey(o); 418 bool isValidKey(Object o) => o is Iterable || o is Map || _base.isValidKey(o);
419 } 419 }
OLDNEW
« no previous file with comments | « no previous file | pkg/http/CHANGELOG.md » ('j') | pkg/http/lib/browser_client.dart » ('J')

Powered by Google App Engine
This is Rietveld 408576698