- Refactor performance tests to be more flexible
- Add Gold Parser Json test
- Add rudimentary eto.parse markdown parser & tests with MarkdownSharp and MarkdownDeep
- Parser.AddError can now be optimized in mono by using a simple bool property instead of nullable (no diff in ms.net)
- Start on the commenting process
Performance enhancements (when you think you can't do anymore..)
- Optimize reusable MatchCollection objects by keeping them in the match tree instead of using a separate stack
- Cache previously used node stacks for more crazy performance when parsing a ton of times
- Only push/pop to match tree when necessary (e.g. if no children that are named, no need to push)
- Use singular ParseMatch.None instance for no match instead of creating every time
- Sequence has separate code for when there is a separator defined vs. not to eliminate checks for each loop
Updates for markdown parser for performance and easier performance analysis
EolTerminal should match a single EOL, which can be \r\n, \r, or \n.
Group parser should match up to the eol, but not include it.
RepeatParser.Until now has SkipUntil & CaptureUntil.  Skip will skip the parser and keep the position at the end, but not include it in the repeat parser's match.  CaptureUntil will include the until's parser match in the repeat match.
Cache separator to use for repeat and sequence parsers for more (micro) performance improvements
StringScanner can now specify the index and length to scan the specified string, instead of having to make a substring of a very large string
Add StringScanner.Value
Markdown parser improvements & add more tests.
Add SingleCharTerminal (and associated writer) for single character matches
Add GrammarMatch.ChildErrorIndex to keep track of where the actual error occurred, when you error at a parser with AddError set to false
Minor optimizations for Alternative/Repeat/Sequence parsers
Add Parser.GetValue(string) variation to get a value of a parser more easily in different scenarios (e.g. when parsing)
Manually go through each child for Match.Find() to eliminate creation of arrays, etc by Concat and other linq methods
Update markdown sample - now passes 54 of 92 tests
Add some autocomplete tests
- Update nuget
- Generate pdb on release mode
- Minor updates to tests
- Add a Perf - Debug solution configuration to be able to trace total time for markdown sample
Update performance stats in README
Update version and nuspec