RustyLR

GLR, LR(1) LALR(1) parser generator for Rust with custom reduce action

APACHE-2.0 License

Downloads
112.1K
Stars
9
RustyLR - v0.7.0

Published by ehwan 3 months ago

Full Changelog: https://github.com/ehwan/RustyLR/compare/v0.6.1...v0.7.0

split modules to rusty_lr_core and rusty_lr_derive

  • rusty_lr crate is main entry pointing 'core' and 'derive'.

add more error checkings

  • same name exists for both Term and NonTerm symbol
  • multiple production rules exist with same name
  • tokentype definition check
RustyLR - v0.6.1

Published by ehwan 3 months ago

Full Changelog: https://github.com/ehwan/RustyLR/compare/v0.6.0...v0.6.1

  • fixed Display, Debug trait for ProductionRule, and its variants to be more readable.
  • add some comments about error message in README
RustyLR - v0.6.0

Published by ehwan 3 months ago

Full Changelog: https://github.com/ehwan/RustyLR/compare/v0.5.2...v0.6.0

  • add LALR parser generation logic
  • removed reduce type for each production rule.
  • reduce type now attached to term symbol
  • removed str variants parser
  • removed Tree parse result type
RustyLR - v0.3.4

Published by ehwan 3 months ago

Full Changelog: https://github.com/ehwan/RustyLR/compare/v0.3.0...v0.3.4

  • makes error messages more readable, and specified
  • resolve reduce/reduce conflict automatically, for some possible cases.
  • fix calculator example can take whitespace
RustyLR - v0.3.0

Published by ehwan 3 months ago

add rusty_lr_derive crate

  • lr1! code generation macro for slice &[Term] input
  • lr1_str! code generation macro for &str input
RustyLR - Initial Release

Published by ehwan 3 months ago

initial release of RustyLR