syntax_data: {"ast_node_type":"other","tokens":[{"end":68,"kind":"keyword","start":0,"text":"//!"}]}
source_snippet: //! is only used for this argument inside the MIR for the coroutine.
context_before: //! passes by value. This argument is effectively a coroutine type which only contains upvars and
context_after: //! It is passed by value to enable upvars to be moved out of it. Drop elaboration runs on that