After the recent discussion in
https://code.google.com/p/pircbotx/wiki/GPLRestrictedCode I've decided that
rewriting InputParser as a pluggable system is a good idea.
Reasons
- InputParser is currently 900 lines of walls of parsing code. Everything is tossed into one mega class that is really hard to sort through, debug, and organize.
- Parsing is limited to input. There is 0 output parsing, something I've wanted to do for a looong time (June 2013 in Revision c27a5dd9cc46)
- Merging output parsing with input parsing means commands and responses can be tracked. IE a WHOIS request has a WHOIS response or a nickserv command has a response. Currently this isn't possible leading to horrible hacks like the fix to Issue #191
- The benefits of a pluggable parsing system outweigh cost of keeping unnecessarily high benchmark speed (walls of if statements in 4 methods) that nobody is going to obtain in real world usage
- Implementing this will not change the existing public API
- This is the last part of GPL'd code from PircBot, mostly written for Java 1.1 .
- Multiple other code quality and design bugs could be fixed with this system
Obviously with the huge backlog of issues I'd want to get 2.1 out the door
first.
Ideas, designs, patches, and other things to improve are welcome
Original issue reported on code.google.com by Lord.Qua...@gmail.com on 8 Aug 2014 at 3:27
Original issue reported on code.google.com by
Lord.Qua...@gmail.com
on 8 Aug 2014 at 3:27