This PR is a complete refactoring of how we parse .ini files. The StringScanner class is no longer used. Instead we parse on a line by line basis. This enables us to read files one line at a time instead of loading the entire contents into a string and then parsing.
In order for this new parser to work, I've used negative lookbehind regular expressions. These are only available with Ruby 1.9 and above. This release of inifile will no longer work with Ruby 1.8.
I've also attempted to address a few of the open issues:
closes #15
closes #16
closes #18
closes #26
This PR is a complete refactoring of how we parse .ini files. The
StringScanner
class is no longer used. Instead we parse on a line by line basis. This enables us to read files one line at a time instead of loading the entire contents into a string and then parsing.In order for this new parser to work, I've used negative lookbehind regular expressions. These are only available with Ruby 1.9 and above. This release of inifile will no longer work with Ruby 1.8.
I've also attempted to address a few of the open issues: closes #15 closes #16 closes #18 closes #26
More changes to follow.