{"ast_node_type":"other","tokens":[{"end":51,"kind":"keyword","start":0,"text":".and_then(ast::MacroCall::cast)"}]}
                    .and_then(ast::MacroCall::cast)
                    .and_then(|it| ast::TokenTree::cast(it.clone())?.syntax().parent())
                    .is_some_and(|macro_call| sema.is_unsafe_macro_call(&macro_call));