]> git.lizzy.rs Git - rust.git/blob - src/tools/clippy/tests/ui/unused_io_amount.rs
Rollup merge of #84221 - ABouttefeux:generic-arg-elision, r=estebank
[rust.git] / src / tools / clippy / tests / ui / unused_io_amount.rs
1 #![allow(dead_code)]
2 #![warn(clippy::unused_io_amount)]
3
4 use std::io::{self, Read};
5
6 fn question_mark<T: io::Read + io::Write>(s: &mut T) -> io::Result<()> {
7     s.write(b"test")?;
8     let mut buf = [0u8; 4];
9     s.read(&mut buf)?;
10     Ok(())
11 }
12
13 fn unwrap<T: io::Read + io::Write>(s: &mut T) {
14     s.write(b"test").unwrap();
15     let mut buf = [0u8; 4];
16     s.read(&mut buf).unwrap();
17 }
18
19 fn vectored<T: io::Read + io::Write>(s: &mut T) -> io::Result<()> {
20     s.read_vectored(&mut [io::IoSliceMut::new(&mut [])])?;
21     s.write_vectored(&[io::IoSlice::new(&[])])?;
22     Ok(())
23 }
24
25 fn ok(file: &str) -> Option<()> {
26     let mut reader = std::fs::File::open(file).ok()?;
27     let mut result = [0u8; 0];
28     reader.read(&mut result).ok()?;
29     Some(())
30 }
31
32 #[allow(clippy::redundant_closure)]
33 #[allow(clippy::bind_instead_of_map)]
34 fn or_else(file: &str) -> io::Result<()> {
35     let mut reader = std::fs::File::open(file)?;
36     let mut result = [0u8; 0];
37     reader.read(&mut result).or_else(|err| Err(err))?;
38     Ok(())
39 }
40
41 #[derive(Debug)]
42 enum Error {
43     Kind,
44 }
45
46 fn or(file: &str) -> Result<(), Error> {
47     let mut reader = std::fs::File::open(file).unwrap();
48     let mut result = [0u8; 0];
49     reader.read(&mut result).or(Err(Error::Kind))?;
50     Ok(())
51 }
52
53 fn combine_or(file: &str) -> Result<(), Error> {
54     let mut reader = std::fs::File::open(file).unwrap();
55     let mut result = [0u8; 0];
56     reader
57         .read(&mut result)
58         .or(Err(Error::Kind))
59         .or(Err(Error::Kind))
60         .expect("error");
61     Ok(())
62 }
63
64 fn main() {}