Hello! Thanks for making such a great crate! This is a great idea and something I actually want to use for a project I'm working on right now. I am the person who left a comment on your Reddit thread.
I was very curious to see if this could work, so I went ahead and tried it out. It turns out that not only is it possible to model this with a trait, it also removes the need for the custom types and the use of the
Reviewing this PR
To review this PR, I suggest you look at what I did commit by commit. The full diff is probably a bit big and hard to read. The commits show what I did step-by-step and so it will probably be a bit easier to understand if you read them in order.
You can click on the "Commits" tab and then click on each commit to see each step as described.
All the tests still pass. I updated them to use the new syntax. You should probably add Travis CI so your tests will run automatically for PRs. :)
I added documentation.
…s -- no more nightly feature!
… to new syntax. No more nightly feature :)