Bart De Smet
|
0980e87430
Avoiding heap-allocated closures
|
6 years ago |
Bart De Smet
|
15fb36bba0
Simplify code using local functions
|
6 years ago |
Bart De Smet
|
369026d24e
Taming CancellationToken overload hell
|
6 years ago |
Oren Novotny
|
b9f9514d57
Revert "Use only var when type is obvious."
|
6 years ago |
Bart De Smet
|
876ee400a9
Use only var when type is obvious.
|
6 years ago |
Bart De Smet
|
ce1cc00303
Use ValueTask in a few more places.
|
6 years ago |
Bart De Smet
|
d596d9f6d8
Adding "deep cancellation" API surface predicated by a NO_DEEP_CANCELLATION symbol.
|
7 years ago |
Bart De Smet
|
8be4811163
Moving to Async naming convention.
|
7 years ago |
Bart De Smet
|
aacb761f40
Switch to ValueTask for predicates, selectors, etc. We await those ourselves and they are expected to be called in a high-frequency manner, so this seems to be the right choice. The only drawback is when these operators are used using method group conversion of a Task-returning async method, which is likely rare in query expressions where one typically uses (async) lambdas, and there's a workaround Task-to-ValueTask conversion. We can't overload on ValueTask and Task return types, so this seems the best way forward.
|
7 years ago |
Bart De Smet
|
cfd11d1c62
Adding BCL style exception factories.
|
7 years ago |
Bart De Smet
|
7a4bdf54bc
Support ICollection for short-circuiting Count.
|
7 years ago |
Bart De Smet
|
6e40561781
Inline Count logic.
|
7 years ago |
Bart De Smet
|
a6e71784ca
Cleaning up Count and LongCount.
|
7 years ago |
Bart De Smet
|
ada8a64036
Renaming IIListProvider to IAsyncIListProvider.
|
8 years ago |
Bart De Smet
|
206c7f2f1f
Splitting Count and LongCount.
|
8 years ago |
Bart De Smet
|
1a7192b640
Moving Standard Query Operators to System.Linq.Async.
|
8 years ago |