Instead of storing everything in globals and mutating those super unsafely, we can condense everything down to a single global that is the async runtime. The whole debug menu then basically is just a bunch of asynchronous functions that make progress as you click through the menus.
Instead of storing everything in globals and mutating those super unsafely, we can condense everything down to a single global that is the async runtime. The whole debug menu then basically is just a bunch of asynchronous functions that make progress as you click through the menus.
This is currently blocked by the Rust compiler not being able to use async await on core, but this is soon possible: https://github.com/rust-lang/rust/pull/69033