Skip to content

Move binarySearch to foundation. - #29860

Merged
jonahwilliams merged 5 commits into
flutter:masterfrom
jonahwilliams:remove_collection
Mar 28, 2019
Merged

jonahwilliams merged 5 commits into
flutter:masterfrom
jonahwilliams:remove_collection

Conversation

@jonahwilliams

@jonahwilliams jonahwilliams commented Mar 24, 2019 •

Copy link
Copy Markdown
Contributor

Description

This gets us closer to fewer dependencies, and removes an indirection used in package:collection.

Related Issues

Checklist

Before you create this PR confirm that it meets all requirements listed below by checking the relevant checkboxes ([x]). This will ensure a smooth and quick review process.

  • I read the Contributor Guide and followed the process outlined there for submitting PRs.
  • My PR includes tests for all changed/updated/fixed behaviors (See Test Coverage).
  • All existing and new tests are passing.
  • I updated/added relevant documentation (doc comments with ///).
  • The analyzer (flutter analyze --flutter-repo) does not report any problems on my PR.
  • I read and followed the Flutter Style Guide, including Features we expect every widget to implement.
  • I signed the CLA.
  • I am willing to follow-up on review comments in a timely manner.

Breaking Change

Does your PR require Flutter developers to manually update their apps to accommodate your change?

@jonahwilliams jonahwilliams changed the title Remove binarySearch from collection Remove binarySearch from animated_list Mar 24, 2019
Comment thread packages/flutter/lib/src/widgets/animated_list.dart Outdated
@goderbauer goderbauer added the framework flutter/packages/flutter repository. See also f: labels. label Mar 25, 2019
@jonahwilliams jonahwilliams changed the title Remove binarySearch from animated_list Move binarySearch to foundation. Mar 27, 2019
@jonahwilliams

Copy link
Copy Markdown
Contributor Author

I ran a micro-benchmark and found binary search to be faster than indexWhere. I also updated the type constraint to be more flexible. Because int implements Comparable<num>, the previous constrain disallows numbers

@jonahwilliams

Copy link
Copy Markdown
Contributor Author

cc @goderbauer

@goderbauer goderbauer left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@jonahwilliams
jonahwilliams merged commit 557c94f into flutter:master Mar 28, 2019
@jonahwilliams
jonahwilliams deleted the remove_collection branch March 28, 2019 08:00
@github-actions github-actions Bot locked as resolved and limited conversation to collaborators Aug 7, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

framework flutter/packages/flutter repository. See also f: labels.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants