Commit Graph

19 Commits

Author SHA1 Message Date
lrn@google.com 18362b2cf4 Revert "Convert HashSet, LinkedHashSet to factory methods and custom implementations."
Triggers an error in html tests on dartium.

Review URL: https://codereview.chromium.org//23451045

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@27392 260f80e4-7a28-3924-810f-c04153c831b5
2013-09-11 16:19:45 +00:00
lrn@google.com c5bb6f7b15 Convert HashSet, LinkedHashSet to factory methods and custom implementations.
R=floitsch@google.com

Review URL: https://codereview.chromium.org//23859008

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@27378 260f80e4-7a28-3924-810f-c04153c831b5
2013-09-11 12:35:57 +00:00
lrn@google.com 0f1e912d9d Reapply "Make LinkedHashMap also have a factory constructor and be customizable""
The change was reverted due to failing Dartium tests that were not easily handelable on a Friday afternoon.

Review URL: https://codereview.chromium.org//23872008

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@27284 260f80e4-7a28-3924-810f-c04153c831b5
2013-09-09 10:49:32 +00:00
lrn@google.com 761f55b1b9 Revert "Make LinkedHashMap also have a factory constructor and be customizable"
Dartium expectations expects "LinkedHashMap" and gets "_LinkedHashMap".

Review URL: https://codereview.chromium.org//23890008

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@27250 260f80e4-7a28-3924-810f-c04153c831b5
2013-09-06 14:29:04 +00:00
lrn@google.com 64359158ab Make LinkedHashMap also have a factory constructor and be customizable
R=floitsch@google.com

Review URL: https://codereview.chromium.org//23494027

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@27246 260f80e4-7a28-3924-810f-c04153c831b5
2013-09-06 13:01:54 +00:00
lrn@google.com 5d8f2cad4e Reapply "Add custom equals and hashCode for HashMap implementation."
Review URL: https://codereview.chromium.org//23493017

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@27179 260f80e4-7a28-3924-810f-c04153c831b5
2013-09-05 08:29:26 +00:00
lrn@google.com c288d7c951 Revert "Add custom equals and hashCode for HashMap implementation."
Review URL: https://codereview.chromium.org//23883003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@27111 260f80e4-7a28-3924-810f-c04153c831b5
2013-09-04 11:17:15 +00:00
lrn@google.com 76c0e79ff6 Add custom equals and hashCode for HashMap implementation.
R=floitsch@google.com

Review URL: https://codereview.chromium.org//23893002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@27106 260f80e4-7a28-3924-810f-c04153c831b5
2013-09-04 09:42:21 +00:00
lrn@google.com eaf1021a87 Make HashMap constructor a factory.
Add optional parameters that aren't supported yet.

R=floitsch@google.com

Review URL: https://codereview.chromium.org//23513010

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@27044 260f80e4-7a28-3924-810f-c04153c831b5
2013-09-03 11:45:12 +00:00
lrn@google.com 788c569e9c Convert HashMap and LinkedHashMap to closed addressing hash tables.
R=regis@google.com, sgjesse@google.com

Review URL: https://codereview.chromium.org//23056002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@26863 260f80e4-7a28-3924-810f-c04153c831b5
2013-08-29 12:13:32 +00:00
regis@google.com 9eb12ad303 Implement updated method overriding rules in the vm (issue 11495).
Introduce --error-on-bad-override flag and use it when generating snapshots.
Fix signature checking when patching methods.
Fix errors in patch files.
Fix receiver type of constructors.
Fix finalization of mixin application typedefs.
Update tests and status files.

R=asiva@google.com

Review URL: https://codereview.chromium.org//22685007

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@26027 260f80e4-7a28-3924-810f-c04153c831b5
2013-08-12 20:28:52 +00:00
karlklose@google.com 57f68eeb94 Convert null-marker in HashMap.forEach.
R=johnniwinther@google.com

Review URL: https://codereview.chromium.org//22561003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@25925 260f80e4-7a28-3924-810f-c04153c831b5
2013-08-08 13:49:13 +00:00
floitsch@google.com 48b1656690 Allow Object when doing lookups.
According to our typing rules a Set<Apple> is a Set<Fruit>. However, before this change, we couldn't use it as a Set<Fruit>:

===
bool foo(Set<Fruit> fruits) {
  // Would yield a type-error since we actually got a Set<Apple>.
  return fruits.contains(new Banana());
}

foo(new Set<Apple>());
===

R=ajohnsen@google.com, blois@google.com, lrn@google.com

Review URL: https://codereview.chromium.org//14246008

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@24326 260f80e4-7a28-3924-810f-c04153c831b5
2013-06-24 12:45:10 +00:00
floitsch@google.com 5d058bb0eb Adding isNotEmpty property to collection and string.
BUG= http://dartbug.com/3074
R=floitsch@google.com

Review URL: https://codereview.chromium.org//15263004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@23294 260f80e4-7a28-3924-810f-c04153c831b5
2013-05-28 17:30:37 +00:00
lrn@google.com 485c8a5999 Move Iterable implementation to collection.
Add IterableMixin and IterableBase to dart:collection.
For now, the implementation is duplicated, because mixins and const
constructors don't mix. We hope that mixins will be improved in the
future to allow using the mixin to define the base class.

Review URL: https://codereview.chromium.org//14022007

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21457 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-15 14:32:16 +00:00
kasperl@google.com 57a82e9d05 Implement JS version of LinkedHashSet and move the various HashTable implementations to the VM collection library patch.
R=erikcorry@google.com,lrn@google.com
BUG=

Review URL: https://codereview.chromium.org//13913005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21180 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-10 07:12:50 +00:00
kasperl@google.com 06ce0c3ec3 Add JS implementation of LinkedHashMap.
R=erikcorry@google.com
BUG=

Review URL: https://codereview.chromium.org//13599005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@21072 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-08 13:51:07 +00:00
kasperl@google.com caa4456595 Add a dart2js specific HashSet implementation that follows the HashMap implementation fairly closely.
I'd like to wait a bit with refactoring this more aggressively until
the linked variants have landed.

R=erikcorry@google.com
BUG=

Review URL: https://codereview.chromium.org//13715002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@20958 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-05 10:23:37 +00:00
kasperl@google.com f15b6960c0 Add a new implementation of HashMap that uses JS objects for its (multiple) hash tables.
I'll start refactoring the implementation to make it a bit more
maintainable, but I wanted to get your first impressions.

R=erikcorry@google.com,lrn@google.com,srdjan@google.com
BUG=

Review URL: https://codereview.chromium.org//12827018

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@20770 260f80e4-7a28-3924-810f-c04153c831b5
2013-04-02 11:51:36 +00:00