https://github.com/leopard2a5/rust-stringreader
StringReader implementation for Rust
https://github.com/leopard2a5/rust-stringreader
Last synced: 3 months ago
JSON representation
StringReader implementation for Rust
- Host: GitHub
- URL: https://github.com/leopard2a5/rust-stringreader
- Owner: Leopard2A5
- License: mit
- Created: 2017-09-10T12:17:45.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2017-09-14T18:55:03.000Z (over 8 years ago)
- Last Synced: 2025-12-14T05:08:42.068Z (6 months ago)
- Language: Rust
- Size: 4.88 KB
- Stars: 3
- Watchers: 0
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Rust StringReader
[](https://travis-ci.org/Leopard2A5/rust-stringreader)
Provides a wrapper for strings so that they can be consumed via the std::io::Read trait. This is especially useful when writing tests.
## Deprecation
This create is deprecated. `std::io::Read` is implemented for `&'a [u8]`, which you can get from a String using the `as_bytes` [method](https://doc.rust-lang.org/std/string/struct.String.html#method.as_bytes).
## Example
```rust
use std::io::{Read, BufRead, BufReader};
use stringreader::StringReader;
let mut streader = StringReader::new("Line 1\nLine 2");
let mut bufreader = BufReader::new(streader);
let mut buffer = String::new();
bufreader.read_line(&mut buffer).unwrap();
println!("{}", buffer);
```
Prints "Line 1\n".
## Usage
Cargo.toml:
```
[dependencies]
stringreader = "*"
```
lib.rs/main.rs:
```rust
extern crate stringreader;
use stringreader::StringReader;
// ...
let mut reader = StringReader::new("this is a test");
// ...
```