Advice on reusing memory when parsing

Ok, thank you! Yes I was considering using an arena allocator. I also just googled and found all these threads talking about a similar issue. (I guess I didn't google the right terms before). Looks like there are crates written to solve exactly this issue, and other alternate approaches.

https://users.rust-lang.org/t/transmute-alternative-for-lifetimes/111437
https://users.rust-lang.org/t/reuse-a-vec-t-s-allocation-beyond-the-scope-of-its-content/66398
https://users.rust-lang.org/t/pattern-how-to-reuse-a-vec-str-across-loop-iterations/61657/10