-
Notifications
You must be signed in to change notification settings - Fork 3
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
I started working on a lending iterator crate, should I yank it and help you here instead? #1
Comments
@Crazytieguy It's three different implementations really. I already knew you were working on the GAT implementation from your comments on lending-iterator and still think it's a welcome implementation. I made this mostly to challenge myself and to provide a more 1-to-1 Mostly for my own sake, I'll review my understanding of the complexity involved in lending iterator implementations, and then discuss why a GAT implementation is still wanted/welcome. Generally, from most complex/unsound to most simple, the implementations are:
The GAT implementation is still very welcome:
I chose the name |
Oh I somehow managed to miss that you're not using GATs 😅... Your review is very helpful! My conclusion is that it's worthwhile for me to continue working on my crate. You're definitely welcome to help if you want 🙂. I'm aiming for "as close as possible to something that may end up in the standard library eventually" |
Hi,
about 7 months ago I started working on https://github.com/Crazytieguy/gat-lending-iterator, before this crate existed on crates.io. I just now got around to publishing it, but then I noticed that this crate exists and is much more complete and has almost exactly the same design choices. The only major difference I'm noticing is the design around turning a lending iterator into an iterator, see https://github.com/Crazytieguy/gat-lending-iterator/blob/master/src/adapters/map.rs
If you think you'll be maintaining this one or are open to help I'll gladly yank mine 😄
The text was updated successfully, but these errors were encountered: