@BenchR267 BenchR267 released this Oct 24, 2017 · 19 commits to master since this release

Assets 3
  • finally <~ and ~>!
    • also fixed the associativity of <~ (all left now)
  • added playgrounds to the releases + generation in Makefile
  • Added and fixed implementations in Lexical
  • Added code of conduct

@BenchR267 BenchR267 released this Sep 21, 2017 · 55 commits to master since this release

Assets 3

This release adds support for using Parsers with Swifts internal pattern matching (switch - case). That means you can write something like

switch "a" {
    case L.char: print("it's a char :)")
    case L.digit: print("it's a digit!")
    default: print("it's something unexpected :/")
}

It will try to parse the value ("a" in the example) with each parser and checks as well if the rest is empty. So only if the complete input matches, the case matches.

@BenchR267 BenchR267 released this Aug 29, 2017 · 85 commits to master since this release

Assets 3

Beside that only some documentation was added/changed - no production code changes.

@BenchR267 BenchR267 released this Aug 27, 2017 · 88 commits to master since this release

Assets 3

2.1.0 fixes precedence groups, so operators are better usable. Check out the test cases here if you would like to see them in action.
The release also contains some changed regular expression parsers in RegexParser.swift and changes the shortcut for RegexParser to R. So now you can get a parser for mails with R.mail e.g.

@BenchR267 BenchR267 released this Aug 27, 2017 · 109 commits to master since this release

Assets 3

2.0.0 Adds support for pre-defined parsers for lexical parsing. Lexical parsing is destructuring of String based input.

@BenchR267 BenchR267 released this Aug 27, 2017 · 144 commits to master since this release

Assets 3

This release includes the core functionality for build parsers with Parsel. Also on board is the RegexParser, a parser that makes it an ease to create parsers with regular expressions.

Aug 17, 2017
* Introduce RegexParser to Linux as well (invalid regex crashes -> ht…
…tps://bugs.swift.org/browse/SR-5477)

* Added or method that takes a sequence
* Added generated file for SPM compatibility
* Added `make initial` step to podspec

Carthage is unfortunately not possible currently.
Aug 14, 2017
ParserCombinator is still in development.