Skip to content

0.8.0

Compare
Choose a tag to compare
@kevinmehall kevinmehall released this 04 Jan 00:58
· 48 commits to master since this release

New Features

  • #[cache_left_rec] annotation to allow left recursion (#266)
  • Return matched token/character from [ ] pattern expression (#234)

Fixes

  • Fix Rust grammar for arguments (#261) and type bounds (#279)
  • Fix trace feature when using infix!{} (#277)
  • Fix #[cache] with grammar lifetime parameters
  • Allow clippy::redundant_closure_call lint in generated grammar (#258)

Breaking changes

Most users will not require changes to upgrade from 0.7 to 0.8; these only affect advanced use cases.

  • Allow only lifetime, not type, parameters at the grammar level. (type parameters were never properly supported)
  • Add 'input lifetime parameter to ParseElem trait so implementations can return tokens by reference. (#268)
  • Require Copy on ParseElem::Element to better represent the expectation that they are cheap to copy/move.

Contributors: @kevinmehall @zsol @neunenak @fgasperij