Struct Arm

docs.rs

pub struct Arm {
    pub attrs: Vec<Attribute>,
    pub pat: Pat,
    pub guard: Option<(If, Box<Expr>)>,
    pub fat_arrow_token: FatArrow,
    pub body: Box<Expr>,
    pub comma: Option<Comma>,
}

Iterator<Item = &Expr>

node: &Arm

node.guard
    .as_slice()
    .iter()
    .map(|(_, expr)| expr.as_ref())
    .chain([node.body.as_ref()])

diagram

Iterator<Item = &mut Expr>

node: &mut Arm

node.guard
    .as_mut_slice()
    .iter_mut()
    .map(|(_, expr)| expr.as_mut())
    .chain([node.body.as_mut()])

diagram