Crates.io | hydroperfox-sourcetext |
lib.rs | hydroperfox-sourcetext |
version | 1.0.0 |
source | src |
created_at | 2024-07-23 06:40:52.034199 |
updated_at | 2024-07-23 06:40:52.034199 |
description | Source text containing line locations. |
homepage | |
repository | https://github.com/hydroperfox/rustsourcetext |
max_upload_size | |
id | 1312467 |
size | 26,343 |
Library for storing efficient line offset and column from std::string::String
. It processes lines only once at the first invokation of any of the retrieval methods.
Here is a basic example:
// offset 5 = "bar"
let text = SourceText::new("foo\r\nbar\r\nqux".into());
assert_eq!(0, text.get_column(5));
assert_eq!(2, text.get_line_number(5));
assert_eq!(5, text.get_line_offset(2).unwrap());
assert_eq!(5, text.get_line_offset_from_offset(7));