Skip to content

Commit 8dc69e5

Browse files
committed
Don't implement all functions
1 parent 8fbe994 commit 8dc69e5

File tree

1 file changed

+0
-28
lines changed

1 file changed

+0
-28
lines changed

README.md

Lines changed: 0 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -285,18 +285,15 @@ This is what has been implemented so far, is planned or skipped:
285285
| ✅ [#83][] | `except` | `except` | | |
286286
| ✅ [#83][] | | `exceptOfSeq` | | |
287287
| ✅ [#70][] | `exists` | `exists` | `existsAsync` | |
288-
| | `exists2` | `exists2` | | |
289288
| ✅ [#23][] | `filter` | `filter` | `filterAsync` | |
290289
| ✅ [#23][] | `find` | `find` | `findAsync` | |
291290
| 🚫 | `findBack` | | | [note #2](#note2 "Because of the async nature of TaskSeq sequences, iterating from the back would be bad practice. Instead, materialize the sequence to a list or array and then apply the 'Back' iterators.") |
292291
| ✅ [#68][] | `findIndex` | `findIndex` | `findIndexAsync` | |
293292
| 🚫 | `findIndexBack` | n/a | n/a | [note #2](#note2 "Because of the async nature of TaskSeq sequences, iterating from the back would be bad practice. Instead, materialize the sequence to a list or array and then apply the 'Back' iterators.") |
294293
| ✅ [#2][] | `fold` | `fold` | `foldAsync` | |
295-
| | `fold2` | `fold2` | `fold2Async` | |
296294
| 🚫 | `foldBack` | | | [note #2](#note2 "Because of the async nature of TaskSeq sequences, iterating from the back would be bad practice. Instead, materialize the sequence to a list or array and then apply the 'Back' iterators.") |
297295
| 🚫 | `foldBack2` | | | [note #2](#note2 "Because of the async nature of TaskSeq sequences, iterating from the back would be bad practice. Instead, materialize the sequence to a list or array and then apply the 'Back' iterators.") |
298296
| ✅ [#240][]| `forall` | `forall` | `forallAsync` | |
299-
| | `forall2` | `forall2` | `forall2Async` | |
300297
| ✅ [#307][] | `groupBy` | `groupBy` | `groupByAsync` | |
301298
| ✅ [#23][] | `head` | `head` | | |
302299
| ✅ [#68][] | `indexed` | `indexed` | | |
@@ -307,19 +304,13 @@ This is what has been implemented so far, is planned or skipped:
307304
| ✅ [#23][] | `isEmpty` | `isEmpty` | | |
308305
| ✅ [#23][] | `item` | `item` | | |
309306
| ✅ [#2][] | `iter` | `iter` | `iterAsync` | |
310-
| | `iter2` | `iter2` | `iter2Async` | |
311307
| ✅ [#2][] | `iteri` | `iteri` | `iteriAsync` | |
312-
| | `iteri2` | `iteri2` | `iteri2Async` | |
313308
| ✅ [#23][] | `last` | `last` | | |
314309
| ✅ [#53][] | `length` | `length` | | |
315310
| ✅ [#53][] | | `lengthBy` | `lengthByAsync` | |
316311
| ✅ [#2][] | `map` | `map` | `mapAsync` | |
317-
| | `map2` | `map2` | `map2Async` | |
318-
| | `map3` | `map3` | `map3Async` | |
319312
| ✅ [#306][] | `mapFold` | `mapFold` | `mapFoldAsync` | |
320-
| 🚫 | `mapFoldBack` | | | [note #2](#note2 "Because of the async nature of TaskSeq sequences, iterating from the back would be bad practice. Instead, materialize the sequence to a list or array and then apply the 'Back' iterators.") |
321313
| ✅ [#2][] | `mapi` | `mapi` | `mapiAsync` | |
322-
| | `mapi2` | `mapi2` | `mapi2Async` | |
323314
| ✅ [#221][]| `max` | `max` | | |
324315
| ✅ [#221][]| `maxBy` | `maxBy` | `maxByAsync` | |
325316
| ✅ [#221][]| `min` | `min` | | |
@@ -337,27 +328,15 @@ This is what has been implemented so far, is planned or skipped:
337328
| ✅ [#2][] | | `ofTaskSeq` | | |
338329
| ✅ [#293][] | `pairwise` | `pairwise` | | |
339330
| ✅ [#307][] | `partition` | `partition` | `partitionAsync` | |
340-
| | `permute` | `permute` | `permuteAsync` | |
341331
| ✅ [#23][] | `pick` | `pick` | `pickAsync` | |
342-
| &#x1f6ab; | `readOnly` | | | [note #3](#note3 "The motivation for 'readOnly' in 'Seq' is that a cast from a mutable array or list to a 'seq<_>' is valid and can be cast back, leading to a mutable sequence. Since 'TaskSeq' doesn't implement 'IEnumerable<_>', such casts are not possible.") |
343332
| &#x2705; [#299][] | `reduce` | `reduce` | `reduceAsync` | |
344-
| &#x1f6ab; | `reduceBack` | | | [note #2](#note2 "Because of the async nature of TaskSeq sequences, iterating from the back would be bad practice. Instead, materialize the sequence to a list or array and then apply the 'Back' iterators.") |
345333
| &#x2705; [#236][]| `removeAt` | `removeAt` | | |
346334
| &#x2705; [#236][]| `removeManyAt` | `removeManyAt` | | |
347-
| &#x2705; | `replicate` | `replicate` | | |
348-
| &#x2753; | `rev` | | | [note #1](#note1 "These functions require a form of pre-materializing through 'TaskSeq.cache', similar to the approach taken in the corresponding 'Seq' functions. It doesn't make much sense to have a cached async sequence. However, 'AsyncSeq' does implement these, so we'll probably do so eventually as well.") |
349335
| &#x2705; [#296][] | `scan` | `scan` | `scanAsync` | |
350-
| &#x1f6ab; | `scanBack` | | | [note #2](#note2 "Because of the async nature of TaskSeq sequences, iterating from the back would be bad practice. Instead, materialize the sequence to a list or array and then apply the 'Back' iterators.") |
351336
| &#x2705; [#90][] | `singleton` | `singleton` | | |
352337
| &#x2705; [#209][]| `skip` | `skip` | | |
353338
| &#x2705; [#219][]| `skipWhile` | `skipWhile` | `skipWhileAsync` | |
354339
| &#x2705; [#219][]| | `skipWhileInclusive` | `skipWhileInclusiveAsync` | |
355-
| &#x2753; | `sort` | | | [note #1](#note1 "These functions require a form of pre-materializing through 'TaskSeq.cache', similar to the approach taken in the corresponding 'Seq' functions. It doesn't make much sense to have a cached async sequence. However, 'AsyncSeq' does implement these, so we'll probably do so eventually as well.") |
356-
| &#x2753; | `sortBy` | | | [note #1](#note1 "These functions require a form of pre-materializing through 'TaskSeq.cache', similar to the approach taken in the corresponding 'Seq' functions. It doesn't make much sense to have a cached async sequence. However, 'AsyncSeq' does implement these, so we'll probably do so eventually as well.") |
357-
| &#x2753; | `sortByAscending` | | | [note #1](#note1 "These functions require a form of pre-materializing through 'TaskSeq.cache', similar to the approach taken in the corresponding 'Seq' functions. It doesn't make much sense to have a cached async sequence. However, 'AsyncSeq' does implement these, so we'll probably do so eventually as well.") |
358-
| &#x2753; | `sortByDescending` | | | [note #1](#note1 "These functions require a form of pre-materializing through 'TaskSeq.cache', similar to the approach taken in the corresponding 'Seq' functions. It doesn't make much sense to have a cached async sequence. However, 'AsyncSeq' does implement these, so we'll probably do so eventually as well.") |
359-
| &#x2753; | `sortWith` | | | [note #1](#note1 "These functions require a form of pre-materializing through 'TaskSeq.cache', similar to the approach taken in the corresponding 'Seq' functions. It doesn't make much sense to have a cached async sequence. However, 'AsyncSeq' does implement these, so we'll probably do so eventually as well.") |
360-
| | `splitInto` | `splitInto` | | |
361340
| &#x2705; [#304][] | `sum` | `sum` | | |
362341
| &#x2705; [#304][] | `sumBy` | `sumBy` | `sumByAsync` | |
363342
| &#x2705; [#76][] | `tail` | `tail` | | |
@@ -369,14 +348,10 @@ This is what has been implemented so far, is planned or skipped:
369348
| &#x2705; [#2][] | `toList` | `toList` | `toListAsync` | |
370349
| &#x2705; [#2][] | | `toResizeArray` | `toResizeArrayAsync` | |
371350
| &#x2705; [#2][] | | `toSeq` | `toSeqAsync` | |
372-
| | | [] | | |
373-
| &#x2753; | `transpose` | | | [note #1](#note1 "These functions require a form of pre-materializing through 'TaskSeq.cache', similar to the approach taken in the corresponding 'Seq' functions. It doesn't make much sense to have a cached async sequence. However, 'AsyncSeq' does implement these, so we'll probably do so eventually as well.") |
374351
| &#x2705; [#209][]| `truncate` | `truncate` | | |
375352
| &#x2705; [#23][] | `tryExactlyOne` | `tryExactlyOne` | `tryExactlyOneAsync` | |
376353
| &#x2705; [#23][] | `tryFind` | `tryFind` | `tryFindAsync` | |
377-
| &#x1f6ab; | `tryFindBack` | | | [note #2](#note2 "Because of the async nature of TaskSeq sequences, iterating from the back would be bad practice. Instead, materialize the sequence to a list or array and then apply the 'Back' iterators.") |
378354
| &#x2705; [#68][] | `tryFindIndex` | `tryFindIndex` | `tryFindIndexAsync` | |
379-
| &#x1f6ab; | `tryFindIndexBack` | | | [note #2](#note2 "Because of the async nature of TaskSeq sequences, iterating from the back would be bad practice. Instead, materialize the sequence to a list or array and then apply the 'Back' iterators.") |
380355
| &#x2705; [#23][] | `tryHead` | `tryHead` | | |
381356
| &#x2705; [#23][] | `tryItem` | `tryItem` | | |
382357
| &#x2705; [#23][] | `tryLast` | `tryLast` | | |
@@ -387,9 +362,6 @@ This is what has been implemented so far, is planned or skipped:
387362
| &#x2705; [#217][]| `where` | `where` | `whereAsync` | |
388363
| &#x2705; [#258][] | `windowed` | `windowed` | | |
389364
| &#x2705; [#2][] | `zip` | `zip` | | |
390-
| &#x2705; | `zip3` | `zip3` | | |
391-
| | | `zip4` | | |
392-
393365

394366
<sup>¹⁾ <a id="note1"></a>_These functions require a form of pre-materializing through `TaskSeq.cache`, similar to the approach taken in the corresponding `Seq` functions. It doesn't make much sense to have a cached async sequence. However, `AsyncSeq` does implement these, so we'll probably do so eventually as well._</sup>
395367
<sup>²⁾ <a id="note2"></a>_Because of the async nature of `TaskSeq` sequences, iterating from the back would be bad practice. Instead, materialize the sequence to a list or array and then apply the `xxxBack` iterators._</sup>

0 commit comments

Comments
 (0)