pub fn byte_to_line(byte_offset: usize, newline_positions: &[u32]) -> u32
Convert byte offset to line number using line table