syntax_data: {"ast_node_type":"other","tokens":[{"end":78,"kind":"keyword","start":0,"text":"//!"}]}
source_snippet: //! into its upvars, the inner `async` coroutine simply captures a ref of `x`.
context_before: //! Important to note here is that while the outer closure *moves* `x: Vec<i32>`
context_after: //! This is the "magic" of async closures -- the futures that they return are