I’ve published this as rcstruct = "0.1.0" to gather feedback. Any feedback is welcome, but specifically:

Is this worth doing, or is there an easier way to solve this without resorting to a macro? (Constraints: Wrapper needs to be Clone and have interior mutability. Both inner and outer structure are only ever going to be accessed by a single thread.)

Is there already another crate that does this or something similar to this that I could have a look at?

In any case, it’s been a fun trip into proc_macro land – now looking forward to your comments!