fn each_loop2(input: Span) -> IResult<Span, Item> {
    let (input, names) = separated_list1(
        delimited(opt_spacelike, tag(","), opt_spacelike),
        map(preceded(tag("$"), name), Name::from),
    )(input)?;
    let (input, values) = delimited(
        delimited(spacelike, tag("in"), spacelike),
        value_expression,
        opt_spacelike,
    )(input)?;
    let (input, body) = body_block(input)?;
    Ok((input, Item::Each(names, values, body)))
}
/// The part of an each look that follows the `@each`.
The part of an each look that follows the `@each`.
The part of an each look that follows the ` @each ` .
fn each_loop2(input: Span) -> IResult<Span, Item> {
    let (input, names) = separated_list1(
        delimited(opt_spacelike, tag(","), opt_spacelike),
        map(preceded(tag("$"), name), Name::from),
    )(input)?;
    let (input, values) = delimited(
        delimited(spacelike, tag("in"), spacelike),
        value_expression,
        opt_spacelike,
    )(input)?;
    let (input, body) = body_block(input)?;
    Ok((input, Item::Each(names, values, body)))
}
fn each_loop2 ( input : Span ) -> IResult < Span , Item > { let ( input , names ) = separated_list1 ( delimited ( opt_spacelike , tag ( " " ) , opt_spacelike ) , map ( preceded ( tag ( " " ) , name ) , Name :: from ) , ) ( input ) ? ; let ( input , values ) = delimited ( delimited ( spacelike , tag ( " " ) , spacelike ) , value_expression , opt_spacelike , ) ( input ) ? ; let ( input , body ) = body_block ( input ) ? ; Ok ( ( input , Item :: Each ( names , values , body ) ) ) }
The part of an each look that follows the `@each`.
The part of an each look that follows the ` @each ` .
input
Span
input
Span