syntax_data: {"ast_node_type":"variable","tokens":[{"end":48,"kind":"keyword","start":0,"text":"if"}]}
source_snippet:                 if let Some(cleanup) = cleanup {
context_before:                 // This must be done *first*, otherwise the unwind path will see the assignments.
context_after:                     propagate(cleanup, exit_state);