-
Notifications
You must be signed in to change notification settings - Fork 5.3k
Apply optimizations and fixes to Enumerable.Take(Range) #48634
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
Apply optimizations and fixes to Enumerable.Take(Range) #48634
Conversation
|
Tagging subscribers to this area: @eiriktsarpalis Issue DetailsMakes the following changes to the new
|
|
cc @Dixin |
8a0a64f to
e7d5a43
Compare
|
I've been investigating the seemingly unrelated test failure affecting mono debug builds. The issue is caused by xunit's generic test parameter resolution logic: the removal of the private I have pushed a commit to demonstrate this and to further show that the failures are not due to a regression introduced by this PR, but rather a bug of xunit running over mono debug builds. |
work around an xunit issue binding inputs with nested generics to generic theories.
This reverts commit 6d160f618c54abb77c602840a5ecd359477468d4.
work around an xunit issue binding inputs with nested generics to generic theories.
This reverts commit d7b11dab001b82cc533449c7f23e2bb90ec2515d.
7c73ea3 to
0c06999
Compare
|
Hi @stephentoub @layomia, this is ready for review, would you be able to take a look? |
Co-authored-by: Stephen Toub <[email protected]>
Makes the following changes to the new
Enumerable.Take(Range)implementation:SizeOptandSpeedOptimplementations for non-fromEndranges.fromEndranges usingEnumerable.TryGetNonEnumeratedCountto obtain the source count.TakeLastandSkipLastimplementations.TakeLastandSkipLastin terms of theTake(Range)implementation.Fix #48631.