Ian Jackson
Ian Jackson
`Parse for WherePredicatesOrBool` and `meta_name_value_2_where_predicates_bool` each had a version of this code. I compared each match branch while unifying them, and the two behaviours were identical. This commit introduces an...
This is new syntax, but it's old behavour: it's the behaviour of eg `educe(Clone(bound))` in 0.4.x, as well as the behaviour of `std`. So this helps with migreation. I'm not...
Addresses the `RawString` part of #18. (The `MyDebug` part is in #19). I did a git-grep which I hoped would find other helper structs emitted in the output. I didn't...
Fix the bounds for all generated trait impls. Here, we change the default behaviour (without `...(bound(...))`) to say something like: `where FieldType: Clone`, for each field. For example, consider this:...
The documentation says: > Generic parameters will be automatically bound to the Clone trait if necessary. This suggests a precise bound. In fact the bound seems to be ad-hoc and...
While looking into #17, I discovered that educe's macro-generated output contains structs named things like `MyDebug` and `RawString`. proc macro output must be extremely careful with identifiers. Everything is completely...
Thanks for merging #15 and fixing up the rustfmt and the tests. (I'll see if I can manage to do the latter myself properly next time.) While working on that...
### To reproduce ```rust pub trait Trait {} pub fn test() { struct Local; impl Trait for Option {} } ``` https://play.rust-lang.org/?version=beta&mode=debug&edition=2021&gist=6c4a42e00403c3a76de54d5010d7df08 Compile with Beta ("Build using the Beta version:...
Found in passing, thought I'd send an MR with this.
This is basically the same as #20, but improved. I took the branch from #20, rebased it, corrected mistakes, and added docs. The code is a bit formulaic, sorry. I...