fn item_variants<'a>(
    w: &mut Buffer,
    cx: &mut Context<'_>,
    it: &Item,
    variants: impl Iterator<Item = &'a Item>
)