expandable-impl-v0.1.1
·
1 commit
to main
since this release
Added
- add support for missing fragments (#57)
- allow grammar-gen functions to return atoms (#56)
- add missing [expandable::*] macros (#53)
- generate a possible invalid expansion when an error is found (#49)
- add path parsing (#47)
- add (almost) full pattern support (#44)
- rework ordering in the "expected XXX, YYY, ZZZ" error message (#45)
- add support for unqualified path expressions (#40)
- converge on transitions instead of converging on final state (#34)
- add support for logic and, or and range expressions (#33)
- parse let statements in block expression and function body (#28)
- parse statements (#27)
- parse break and return expressions (#26)
- parse block expressions and const generics (#24)
- parse generics in function and method calls (#23)
- parse . (#22)
- add support for array expressions (#20)
- parse all the tokens of the Rust language (#16)
- add arithmetic, bit and comparison expression parsing (#14)
Fixed
- symlink the doc directory in the expandable-impl crate root (#83)
- add link to docs, add missing readme link (#82)
- add the include field to all published crates (#80)
- set up workspace-level dependencies (#78)
- Add description and license field to the crates (#77)
- propagate "no repetitions" when checking 0-n repetitions (#59)
- honour newer rustc/clippy warnings (#31)
- add license file (#19)
- Add the missing AfterIf transitions (#17)
Other
- fix latest clippy lints (#74)
- update to the new rustfmt style (#64)
- add variable support in
rust-grammar-dpdfa/grammar-gen(#61) - bump MSRV to 1.70 (#51)
- make the expansion check fully deterministic (#50)
- replace the state machine with the generated parser machinery (#36)
- add a transition inheritance system (#21)
- add rustfmt.toml and cool formatting settings (#18)
- compute the token descriptions before checking the expansion (#15)
- add backend documentation (#11)
- Don't lower
=toEqualEqualin the frontend (#12) - Add subtraction, multiplication and equality, rework function arguments (#10)
- Add function call parsing (#8)
- Fix an embarassing bug in the "stack size reduction" optimization (#9)
- Bring back the repetition stack check (#7)
- Add debug-only span (#6)
- Add a MSRV policy (#3)
- Only check repetition nesting (#2)
- Add parsing for if/if-else expressions (#1)
- Make FragmentKind public, fix public API on stable
- Make sure we don't accidentally keep some stack symbols
- I forgot the macros :/
- Add all the keywords in the Rust language
- State the architecture invariants
- Rework the grammar and transition machinery
- Remove intermediate test
- Report errors when the repetition nesting does not match
- Keep the repetition stack when parsing the macro matcher
- Very bad stack machine -> full-blown stack machine
- Remove warnings
- Gitigrone
- Check that macro expansion is complete
- Better error message
- Move the impl into a separate impl crate