Skip to content
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

Except and intersect variations #257

Open
wants to merge 9 commits into
base: master
Choose a base branch
from

Conversation

eliekstein
Copy link

This is a clone of #169 but with corrected changes to pass build.

JamesFaix and others added 9 commits April 28, 2016 21:59
Revised implementation and docs for ExceptBy method group.  Added
ExceptKeys method group, which shares implementation with ExceptBy.
Added unit tests for ExceptKeys.
Added IntersectBy and IntersectKeys method groups, which share the same
implementation.  Added unit test for both method groups.
Added ExceptAll, ExceptAllBy, and ExceptAllKeys method groups, which
share the same implementation.  Added unit tests for each ExceptAllBy
and ExceptAllKeys.
Added IntersectAll, IntersectAllBy, and IntersectAllKeys method groups,
which share the same implementation.  Added unit tests for
IntersectAllBy and IntersectAllKeys.
Switched from `foreach` block to `Where` expressions for cleaner
implementation code.
…ations

All variations of `Except` and `Intersect` are ultimately a special case
of the private method in SetFilter.cs.  I ran some speed tests between
`SetFilterImpl` the existing implementations of these methods, and it
appears to be slightly faster, possibly due to some optimization in
`Enumerable.Where`.
Split each method group into its own file, and nested them under
SetFilter.cs which contains the common implementation and is nested
under MoreEnumerable.cs.
Since NUnit v3 ExpectedException is not supported anymore so i replaced
all tests with the ThrowsArgumentNullException method.
@shravan2x
Copy link

Is there any progress on having this merged?

@MisinformedDNA
Copy link

@atifaziz Can this be merged?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants