Crates.io | stream-locate-converter |
lib.rs | stream-locate-converter |
version | 0.1.2 |
source | src |
created_at | 2024-07-30 19:10:27.21179 |
updated_at | 2024-07-31 14:39:59.368637 |
description | A Stream reader which can convert between byte offset and line-column numbers. Support any type which implements io::Read. |
homepage | |
repository | https://github.com/ireina7/stream-locate-converter |
max_upload_size | |
id | 1320243 |
size | 11,727 |
Reader offset and line-column location converter.
A Stream reader which can convert between byte offset and line-column numbers.
Support any type which implements io::Read
.
use stream_locate_converter::Stream;
use stream_locate_converter::location;
use std::fs;
fn main() -> io::Result<()> {
let file = fs::File::open("foo.rs")?;
let mut stream = Stream::from(file);
let offset = location::Offset::new(20);
let line_index = stream.line_index(offset)?;
let (line, col) = line_index.one_based().raw();
println!("The offset is on line {line}, column {col}.");
}