Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.
Sign upInput trait #45
Conversation
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
m4rw3r
Mar 18, 2016
Owner
This will probably need a rework of the buffer module to better fit the new Input traits.
|
This will probably need a rework of the |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
m4rw3r
Mar 19, 2016
Owner
Would be interesting to investigate if the State::Incomplete could be removed in favor of something like attoparsec's continuations (ie. ask the type implementing Input for more data, fail or succeed if no more data could be provided depending on the parser).
|
Would be interesting to investigate if the |
m4rw3r commentedMar 18, 2016
•
edited
Edited 1 time
-
m4rw3r
edited Aug 28, 2016 (most recent)
See #44
Investigate removal of
State::IncompleteSimplifies all combinators which otherwise had to special-case the incomplete states. Does not seem to actually improve performance in any way despite decreasing the number of possible branches, guess that goes to show how good branch-prediction is in a modern CPU.
Conclusion: removed
State::Incomplete.Implement
Inputfor&strImplementInputfor anIteratorwrapperMoved to separate PR #49
Implement
Inputfor TendrilReplace the inner
Statetype withResultsince it is just a success/fail state and makes for easier conversions and simpler code in general.Implement a numbering wrapper for any
Input.Move
input::InputBuftobuffermodule and replace the mode property with a boolean flag.Update tests to accommodate for
Incompleteremoval and restructuring of theInput.It is probably suitable to investigate if Quickcheck can be used here (#33)
Rework
buffermoduleMake sure lifetimes are removed (now part of
Inputimplementation), simplify.Update doctests
Support for optimized
skip_whileinInput