ast
ast copied to clipboard
I've written some codes for generating Concrete Syntax Tree from Pest grammar. Maybe [that repository](https://github.com/theverydarkness/pest-typed) can be merged into some repository under [pest-parser](https://github.com/pest-parser) in the future if appreciated. Examples can...
It's possible to combine precedence climbing with pest-ast derives, but it currently requires [doing so by implementing `FromPest` directly](https://github.com/CAD97/pest3-draft/blob/c433a3b272e15a1d5f32a83dc8bb2e638121c800/meta/src/ast/mod.rs#L243-L276). This is a fairly rote transformation; we could offer a way...
The error message currently includes which AST (struct|enum) is currently being parsed, but does not say which Pest token we are currently at. - "Extraneous tokens" should tell me which...
This crate uses `std::mem:uninitialized` which was limited and now panics more often. This seem to prevent usage of `pest-deconstruct`: ``` thread 'main' panicked at 'attempted to leave type `std::iter::Peekable` uninitialized,...
Hi, I'm trying pest-ast for my project. So far, it's been super-helpful. Now, I have a few cases for which I cannot find a type mapping. i have looked in...
Adding this implementation in https://github.com/pest-parser/ast/blob/master/src/lib.rs: ```rust impl for T { type Rule = /* Rule */; type FatalError = T::Err; fn from_pest(pest: &mut Pairs
This is a fun one. Even with `#[derive(FromPest)]`, the initial creation of the ast structures is fairly rote. It would be really cool if we could take a `.pest` file...
Currently: ```rust /// Potentially borrowing conversion from a pest parse tree. pub trait FromPest, ) -> Result; } ``` Potential changes we might want to make: - Make `Rule` a...
We should offer a feature (`trace`, probably, or maybe `log`) that adds a runtime dependency on [log](https://crates.io/crates/log) and adds `trace!` macros to the conversion process. This should help with debugging...
What should we call the derive? The implemented plumbing trait is `FromPest`. That's not what this discussion is about. This is about the derive naming, which is currently `#[derive(FromPest)]`. This...