pddl_ish_parser/parser/
error_context.rs1pub fn get_error_context(input: &str) -> String {
2 let lines: Vec<&str> = input.lines().collect();
3 let error_line_index = lines.iter().position(|&line| line.contains(")")).unwrap_or(0);
4
5 let previous_line = lines.get(error_line_index.saturating_sub(1)).unwrap_or(&"");
6 let error_line = lines.get(error_line_index).unwrap_or(&"");
7 let next_line = lines.get(error_line_index + 1).unwrap_or(&"");
8
9 format!("Lines (pre, error and next): {}\n{}\n{}", previous_line, error_line, next_line)
10}