# QRead The "Q" is for "Quick". QRead is convenience library for common read operations. In Rust, the standard library `Read` and `BufRead` traits expose many methods that require you to pass in a mutable reference to a buffer (either a `Vec` or `String`) that it will store the data read into. Often, you will find yourself repeating the pattern of creating a `Vec` or `String` just to pass it into these methods. This can become inconvenient if you need to repeat this pattern many times. `QRead` addresses this by adding two new methods (`read_all_to_bytes` and `read_all_to_string`) to all objects implementing the `Read` trait and two other new methods (`read_until_to_bytes` and `read_line_to_string`) to all objects implementing the `BufRead` trait. These methods internally just call the most common methods on `Read` or `BufRead` after creating the `Vec` or `String` for you: ```rust use std::fs::File; use qread::QRead; // This assumes that we have a file `demo.txt` in the current directory let mut f2 = File::open("demo.txt").unwrap(); let text = f2.read_all_to_string().unwrap(); ``` See [the docs](https://docs.rs/qread/latest/) for more examples.