pub fn line_column(s: &str, index: usize) -> (u32, u32)Expand description
Get tuple of line and column, use byte index
Use LF (0x0A) to split newline, also compatible with CRLF (0x0D 0x0A)
§Panics
- index out of
0..s.len() - index not on char boundary
§Examples
assert_eq!(line_column("", 0), (1, 1));
assert_eq!(line_column("a", 0), (1, 1));
assert_eq!(line_column("a", 1), (1, 2));
assert_eq!(line_column("ab", 1), (1, 2));
assert_eq!(line_column("a\n", 1), (1, 2));
assert_eq!(line_column("a\n", 2), (2, 1));
assert_eq!(line_column("a\nb", 2), (2, 1));