JasonWei512 / tokio-rev-lines

This library provides an async stream for reading files or any `BufReader` line by line with buffering in reverse.

Home Page:https://crates.io/crates/tokio-rev-lines

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

tokio-rev-lines

Crate MIT licensed

This library provides an async stream for reading files or any BufReader line by line with buffering in reverse.

It's an async tokio version of rev_lines.

Documentation

Documentation is available on Docs.rs.

Example

use futures_util::{pin_mut, StreamExt};
use tokio::{fs::File, io::BufReader};
use tokio_rev_lines::RevLines;

#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
    let file = File::open("tests/multi_line_file").await?;
    let rev_lines = RevLines::new(BufReader::new(file)).await?;
    pin_mut!(rev_lines);

    while let Some(line) = rev_lines.next().await {
        println!("{}", line?);
    }
    
    Ok(())
}

About

This library provides an async stream for reading files or any `BufReader` line by line with buffering in reverse.

https://crates.io/crates/tokio-rev-lines

License:MIT License


Languages

Language:Rust 100.0%