Skip to content

v0.2.0

Pre-release
Pre-release

Choose a tag to compare

@masked-rpgmaker masked-rpgmaker released this 11 Sep 00:57
· 32 commits to master since this release

Changelog:

  • Add Parser.of for memoization and apply it everywhere it makes sense;
  • Add type parameter E to Parser base class for error types;
  • Add type parameter C to Parser base class for context-passing types;
    • Make context handling transparent by introducing a new function runT that accepts a context and making run initialize it
      automatically;
    • Add context provider constructor parameter to Parser constructor for context initialization;
    • Implement TextContext with row and column for text parsers + index to avoid excessive substringing;
  • Make all existing combinators consistent with the new error and context-passing types;
  • Make ParserResult and context independent to make run's signature completely oblivious to the parsing context;
  • Add tests to cover the text parsers;
    • Add CI pipelines for tests and coverage (+ badges! /o/).
  • Minor refactoring on some arithmetic parsers to use zip instead of a nested map on a flatMap;
  • Add pipeline to automatically bundle the plugin on releases;