pub struct Location {
pub line: usize,
pub column: usize,
}
Expand description
A location in a string where an error may have occurred. In keeping with the typical practice from editors and other tools, line and columns are both 1-indexed.
§Example
use nom_supreme::final_parser::{RecreateContext, Location};
let original_input = "Hello,\nWorld!\n";
let tail = &original_input[9..];
assert_eq!(
Location::recreate_context(original_input, tail),
Location { line: 2, column: 3 },
);
Fields§
§line: usize
The line number in the original input where the error occurred
column: usize
The column of the line in the original input where the error occurred
Implementations§
Source§impl Location
impl Location
Sourcepub fn locate_tail<'a>(original_input: &'a str, tail: &'a str) -> Self
pub fn locate_tail<'a>(original_input: &'a str, tail: &'a str) -> Self
Given the original input string, as well as the context reported by nom, compute the location in the original string where the error occurred.
This function will report garbage (and may panic) if the context is not associated with the input
Trait Implementations§
Source§impl RecreateContext<&str> for Location
impl RecreateContext<&str> for Location
impl Copy for Location
impl Eq for Location
impl StructuralPartialEq for Location
Auto Trait Implementations§
impl Freeze for Location
impl RefUnwindSafe for Location
impl Send for Location
impl Sync for Location
impl Unpin for Location
impl UnwindSafe for Location
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<I, T> ExtractContext<I, ()> for T
impl<I, T> ExtractContext<I, ()> for T
Source§fn extract_context(self, _original_input: I)
fn extract_context(self, _original_input: I)
Given the context attached to a nom error, and given the original
input to the nom parser, extract more the useful context information. Read more
Source§impl<T> Indentable for Twhere
T: Display,
impl<T> Indentable for Twhere
T: Display,
Source§fn indented_skip_initial(self, indent: &str) -> IndentedSkipIntial<'_, Self>
fn indented_skip_initial(self, indent: &str) -> IndentedSkipIntial<'_, Self>
Source§impl<I> RecreateContext<I> for I
impl<I> RecreateContext<I> for I
Source§fn recreate_context(_original_input: I, tail: I) -> I
fn recreate_context(_original_input: I, tail: I) -> I
Given the original input, as well as the context reported by nom,
recreate a context in the original string where the error occurred. Read more