syntax_data: {"ast_node_type":"function","tokens":[{"end":83,"kind":"keyword","start":0,"text":"fn"}]}
source_snippet:     fn maybe_push(&'a self, op_fn: impl FnOnce() -> ProjectedUserTypesOp) -> Self {
context_before:     /// Push another projection op onto the chain, but only if it is already non-empty.
context_after:         match self {