-
Notifications
You must be signed in to change notification settings - Fork 4.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add PriorityQueue to System.Collections.Generic (#43957) #46009
Merged
Merged
Changes from 1 commit
Commits
Show all changes
50 commits
Select commit
Hold shift + click to select a range
8b5b059
Add PriorityQueue to System.Collections.Generic (#43957)
9658a1b
(draft step, to squash) Modify API reference
pgolebiowski dda9697
(draft step, to squash) Add tests for PriorityQueue
pgolebiowski bf8b2e7
(draft step, to squash) Add initial implementation
pgolebiowski 55f4e30
(draft step, to squash) Rename parameters
pgolebiowski ad531fe
(draft step, to squash) Replace `this.nodes` with `_nodes`
pgolebiowski 28ca1e3
(draft step, to squash) Use an array and handle sizing ourselves
pgolebiowski b043b5a
(draft step, to squash) Create UnorderedItemsCollection lazily
pgolebiowski f60e250
(draft step, to squash) Deduplicate constructors
pgolebiowski 6e01801
(draft step, to squash) Replace excessive `var` with explicit types
pgolebiowski e119ecc
(draft step, to squash) Remove `this.` in front of methods
pgolebiowski d76b0cf
(draft step, to squash) Improve out-of-range-argument exceptions
pgolebiowski 4e7e138
(draft step, to squash) Use error messages from .resx
pgolebiowski 4c2fd52
(draft step, to squash) Use positive case first in try methods
pgolebiowski 321b4b0
(draft step, to squash) Implement UnorderedItemsCollection.CopyTo
pgolebiowski 72c24da
(draft step, to squash) Optimize expressions involving Arity
pgolebiowski e647b2b
(draft step, to squash) Adjust implementation to be consistent with r…
pgolebiowski 4d87259
(draft step, to squash) Implement method `EnqueueDequeue`
pgolebiowski cd5c0b2
(draft step, to squash) Make EnsureCapacity return int
pgolebiowski ea2b155
(draft step, to squash) Simplify lazy initialization of _unorderedItems
pgolebiowski a4c0d4f
(draft step, to squash) Use `out _` discard for unused properties
pgolebiowski 2618b29
(draft step, to squash) Relax null checks on elements and priorities
pgolebiowski 25f0125
(draft step, to squash) Simplify method SetCapacity
pgolebiowski 7d187c9
(draft step, to squash) Remove MethodImplOptions.AggressiveInlining a…
pgolebiowski c8c2da4
(draft step, to squash) Use Array.Empty if the initial capacity is zero
pgolebiowski 0ba9699
(draft step, to squash) Simplify UnorderedItemsCollection.Enumerator …
pgolebiowski 4185937
(draft step, to squash) Simplify GetEnumerator methods
pgolebiowski af21790
(draft step, to squash) Optimize EnqueueRange methods
pgolebiowski 58a9032
(draft step, to squash) Capitalize members of (TElement, TPriority)[]
pgolebiowski f8b4564
(draft step, to squash) Improve resize constants
pgolebiowski 5851006
(draft step, to squash) Remove redundant `.this`
pgolebiowski ae630c2
(draft step, to squash) Optimize EnqueueDequeue
pgolebiowski fef7502
(draft step, to squash) Reduce indentation
pgolebiowski 18301b2
(draft step, to squash) Simplify math expressions
pgolebiowski 2bde65b
(draft step, to squash) Remove the PutAt helper method
pgolebiowski 230a0a5
(draft step, to squash) Make the UnorderedItemsCollection constructor…
pgolebiowski abfb09b
(draft step, to squash) Clear last node slot on removal
pgolebiowski f700cba
(draft step, to squash) Improve next growth capacity computation
pgolebiowski e790b42
(draft step, to squash) Optimize Enqueue method
pgolebiowski 07ec07c
(draft step, to squash) Make UnorderedItemsCollection.CopyTo implemen…
pgolebiowski ecf4c58
(draft step, to squash) Improve priority queue tests
pgolebiowski a877864
(draft step, to squash) Drop redundant casting
pgolebiowski 26d4ce7
(draft step, to squash) Cosmetic improvements
pgolebiowski a3c114a
(draft step, to squash) Change signature of UnorderedItemsCollection
pgolebiowski 3dbc4f5
(draft step, to squash) Add test PriorityQueue_Generic_EnqueueDequeue…
pgolebiowski 8672c41
(draft step, to squash) Add tests of enqueue null functionality
pgolebiowski 85aeed1
(draft step, to squash) Add test PriorityQueue_Generic_EnsureCapacity…
pgolebiowski 938ef63
(draft step, to squash) Check underlying buffer length in tests with …
pgolebiowski 475183a
(draft step, to squash) Check enumeration invalidation
pgolebiowski 4f79c96
(draft step, to squash) Simplify code and improve documentation
pgolebiowski File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nit: the correctness of the assertion really depends on the implementation of
SmallPriorityQueueFactory
.