fn parse_bonds(i : &str) -> IResult<&str, (i32, i32, i32)> {
    let (i, atom1) = parse_i32(i)?;
    let (i, atom2) = parse_i32(i)?;
    let (i, bond_type) = parse_i32(i)?;

    let i = not_newline(i)?.0;

    // The two atoms must be different, (a bond can't be described between an atom and itself)
    assert_ne!(atom1, atom2);

    Ok((i, (atom1, atom2, bond_type)))
}
// parses a single line;  single, double, and triple bonds from the mol file format
// Does not parse the stereochemistry section
parses a single line;  single, double, and triple bonds from the mol file format
Does not parse the stereochemistry section
parses a single line ; single double and triple bonds from the mol file format Does not parse the stereochemistry section
fn parse_bonds(i : &str) -> IResult<&str, (i32, i32, i32)> {
    let (i, atom1) = parse_i32(i)?;
    let (i, atom2) = parse_i32(i)?;
    let (i, bond_type) = parse_i32(i)?;
    let i = not_newline(i)?.0;
    // The two atoms must be different, (a bond can't be described between an atom and itself)
    assert_ne!(atom1, atom2);
    Ok((i, (atom1, atom2, bond_type)))
}
fn parse_bonds ( i : & str ) -> IResult < & str , ( i32 , i32 , i32 ) > { let ( i , atom1 ) = parse_i32 ( i ) ? ; let ( i , atom2 ) = parse_i32 ( i ) ? ; let ( i , bond_type ) = parse_i32 ( i ) ? ; let i = not_newline ( i ) ? . 0 ; // The two atoms must be different, (a bond can't be described between an atom and itself) assert_ne ! ( atom1 atom2 ) ; Ok ( ( i , ( atom1 , atom2 , bond_type ) ) ) }
parses a single line;  single, double, and triple bonds from the mol file format
Does not parse the stereochemistry section
parses a single line ; single double and triple bonds from the mol file format Does not parse the stereochemistry section
i
&str
i
&str