[INFO] updating cached repository cszatma/rust-tetris [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/cszatma/rust-tetris [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/cszatma/rust-tetris" "work/ex/clippy-test-run/sources/stable/gh/cszatma/rust-tetris"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable/gh/cszatma/rust-tetris'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/cszatma/rust-tetris" "work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/cszatma/rust-tetris"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/cszatma/rust-tetris'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 0230613632e3388a3020ea59a950f294f8a67b32 [INFO] sha for GitHub repo cszatma/rust-tetris: 0230613632e3388a3020ea59a950f294f8a67b32 [INFO] validating manifest of cszatma/rust-tetris on toolchain stable [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of cszatma/rust-tetris on toolchain stable+rustflags=-Dclippy::into_iter_on_array [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing cszatma/rust-tetris [INFO] finished frobbing cszatma/rust-tetris [INFO] frobbed toml for cszatma/rust-tetris written to work/ex/clippy-test-run/sources/stable/gh/cszatma/rust-tetris/Cargo.toml [INFO] started frobbing cszatma/rust-tetris [INFO] finished frobbing cszatma/rust-tetris [INFO] frobbed toml for cszatma/rust-tetris written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/cszatma/rust-tetris/Cargo.toml [INFO] crate cszatma/rust-tetris has a lockfile. skipping [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] linting cszatma/rust-tetris against stable+rustflags=-Dclippy::into_iter_on_array for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-6/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/cszatma/rust-tetris:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dclippy::into_iter_on_array" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+stable" "clippy" "--frozen" "--all" "--all-targets"` [INFO] [stdout] b9fbb3ec2dc674ae65e8382976c69f4b7d7ca384230638b5b95c2180a268531b [INFO] running `"docker" "start" "-a" "b9fbb3ec2dc674ae65e8382976c69f4b7d7ca384230638b5b95c2180a268531b"` [INFO] [stderr] Checking rust-tetris v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/tetrimino.rs:26:92 [INFO] [stderr] | [INFO] [stderr] 26 | return Tetrimino { points: vec![vec![0, 0], vec![1, 0], vec![0, -1], vec![1, -1]], position: position, symbol: "y".to_string() }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `position` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_field_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/tetrimino.rs:31:93 [INFO] [stderr] | [INFO] [stderr] 31 | return Tetrimino { points: vec![vec![-1, -1], vec![0, -1], vec![0, 0], vec![1, 0]], position: position, symbol: "r".to_string() }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `position` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/tetrimino.rs:35:93 [INFO] [stderr] | [INFO] [stderr] 35 | return Tetrimino { points: vec![vec![-1, 0], vec![0, 0], vec![0, -1], vec![1, -1]], position: position, symbol: "g".to_string() }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `position` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/tetrimino.rs:39:93 [INFO] [stderr] | [INFO] [stderr] 39 | return Tetrimino { points: vec![vec![-1, -1], vec![-1, 0], vec![0, 0], vec![1, 0]], position: position, symbol: "b".to_string() }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `position` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/tetrimino.rs:43:92 [INFO] [stderr] | [INFO] [stderr] 43 | return Tetrimino { points: vec![vec![-1, 0], vec![0, 0], vec![1, 0], vec![1, -1]], position: position, symbol: "o".to_string() }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `position` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/tetrimino.rs:47:92 [INFO] [stderr] | [INFO] [stderr] 47 | return Tetrimino { points: vec![vec![-1, 0], vec![0, 0], vec![1, 0], vec![0, -1]], position: position, symbol: "p".to_string() }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `position` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/tetrimino.rs:51:91 [INFO] [stderr] | [INFO] [stderr] 51 | return Tetrimino { points: vec![vec![-1, 0], vec![0, 0], vec![1, 0], vec![2, 0]], position: position, symbol: "c".to_string() }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `position` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/tetrimino.rs:26:92 [INFO] [stderr] | [INFO] [stderr] 26 | return Tetrimino { points: vec![vec![0, 0], vec![1, 0], vec![0, -1], vec![1, -1]], position: position, symbol: "y".to_string() }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `position` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::redundant_field_names)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/tetrimino.rs:31:93 [INFO] [stderr] | [INFO] [stderr] 31 | return Tetrimino { points: vec![vec![-1, -1], vec![0, -1], vec![0, 0], vec![1, 0]], position: position, symbol: "r".to_string() }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `position` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/tetrimino.rs:35:93 [INFO] [stderr] | [INFO] [stderr] 35 | return Tetrimino { points: vec![vec![-1, 0], vec![0, 0], vec![0, -1], vec![1, -1]], position: position, symbol: "g".to_string() }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `position` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/tetrimino.rs:39:93 [INFO] [stderr] | [INFO] [stderr] 39 | return Tetrimino { points: vec![vec![-1, -1], vec![-1, 0], vec![0, 0], vec![1, 0]], position: position, symbol: "b".to_string() }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `position` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/tetrimino.rs:43:92 [INFO] [stderr] | [INFO] [stderr] 43 | return Tetrimino { points: vec![vec![-1, 0], vec![0, 0], vec![1, 0], vec![1, -1]], position: position, symbol: "o".to_string() }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `position` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/tetrimino.rs:47:92 [INFO] [stderr] | [INFO] [stderr] 47 | return Tetrimino { points: vec![vec![-1, 0], vec![0, 0], vec![1, 0], vec![0, -1]], position: position, symbol: "p".to_string() }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `position` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: redundant field names in struct initialization [INFO] [stderr] --> src/tetrimino.rs:51:91 [INFO] [stderr] | [INFO] [stderr] 51 | return Tetrimino { points: vec![vec![-1, 0], vec![0, 0], vec![1, 0], vec![2, 0]], position: position, symbol: "c".to_string() }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: replace it with: `position` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names [INFO] [stderr] [INFO] [stderr] warning: unused import: `tetrimino::Tetrimino` [INFO] [stderr] --> src/main.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use tetrimino::Tetrimino; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/game.rs:12:9 [INFO] [stderr] | [INFO] [stderr] 12 | return Game { board: Board::init(num_rows, num_cols), current_piece: None } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Game { board: Board::init(num_rows, num_cols), current_piece: None }` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_return)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/game.rs:16:9 [INFO] [stderr] | [INFO] [stderr] 16 | return &self.board; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `&self.board` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tetrimino.rs:26:9 [INFO] [stderr] | [INFO] [stderr] 26 | return Tetrimino { points: vec![vec![0, 0], vec![1, 0], vec![0, -1], vec![1, -1]], position: position, symbol: "y".to_string() }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Tetrimino { points: vec![vec![0, 0], vec![1, 0], vec![0, -1], vec![1, -1]], position: position, symbol: "y".to_string() }` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tetrimino.rs:31:9 [INFO] [stderr] | [INFO] [stderr] 31 | return Tetrimino { points: vec![vec![-1, -1], vec![0, -1], vec![0, 0], vec![1, 0]], position: position, symbol: "r".to_string() }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Tetrimino { points: vec![vec![-1, -1], vec![0, -1], vec![0, 0], vec![1, 0]], position: position, symbol: "r".to_string() }` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tetrimino.rs:35:9 [INFO] [stderr] | [INFO] [stderr] 35 | return Tetrimino { points: vec![vec![-1, 0], vec![0, 0], vec![0, -1], vec![1, -1]], position: position, symbol: "g".to_string() }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Tetrimino { points: vec![vec![-1, 0], vec![0, 0], vec![0, -1], vec![1, -1]], position: position, symbol: "g".to_string() }` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tetrimino.rs:39:9 [INFO] [stderr] | [INFO] [stderr] 39 | return Tetrimino { points: vec![vec![-1, -1], vec![-1, 0], vec![0, 0], vec![1, 0]], position: position, symbol: "b".to_string() }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Tetrimino { points: vec![vec![-1, -1], vec![-1, 0], vec![0, 0], vec![1, 0]], position: position, symbol: "b".to_string() }` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tetrimino.rs:43:9 [INFO] [stderr] | [INFO] [stderr] 43 | return Tetrimino { points: vec![vec![-1, 0], vec![0, 0], vec![1, 0], vec![1, -1]], position: position, symbol: "o".to_string() }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Tetrimino { points: vec![vec![-1, 0], vec![0, 0], vec![1, 0], vec![1, -1]], position: position, symbol: "o".to_string() }` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tetrimino.rs:47:9 [INFO] [stderr] | [INFO] [stderr] 47 | return Tetrimino { points: vec![vec![-1, 0], vec![0, 0], vec![1, 0], vec![0, -1]], position: position, symbol: "p".to_string() }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Tetrimino { points: vec![vec![-1, 0], vec![0, 0], vec![1, 0], vec![0, -1]], position: position, symbol: "p".to_string() }` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tetrimino.rs:51:9 [INFO] [stderr] | [INFO] [stderr] 51 | return Tetrimino { points: vec![vec![-1, 0], vec![0, 0], vec![1, 0], vec![2, 0]], position: position, symbol: "c".to_string() }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Tetrimino { points: vec![vec![-1, 0], vec![0, 0], vec![1, 0], vec![2, 0]], position: position, symbol: "c".to_string() }` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tetrimino.rs:56:9 [INFO] [stderr] | [INFO] [stderr] 56 | return self.points.iter().map(|point| vec![point[0] + self.position.0, point[1] + self.position.1]).collect(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.points.iter().map(|point| vec![point[0] + self.position.0, point[1] + self.position.1]).collect()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tetrimino.rs:60:9 [INFO] [stderr] | [INFO] [stderr] 60 | return self.get_pos_on_board().iter().map(|point| point[0]).collect(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.get_pos_on_board().iter().map(|point| point[0]).collect()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tetrimino.rs:64:9 [INFO] [stderr] | [INFO] [stderr] 64 | return self.get_pos_on_board().iter().map(|point| point[1]).collect(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.get_pos_on_board().iter().map(|point| point[1]).collect()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tetrimino.rs:86:9 [INFO] [stderr] | [INFO] [stderr] 86 | return Status::Ok; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Status::Ok` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tetrimino.rs:96:9 [INFO] [stderr] | [INFO] [stderr] 96 | return Status::Ok; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Status::Ok` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tetrimino.rs:102:9 [INFO] [stderr] | [INFO] [stderr] 102 | return self.perform_drop(board); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.perform_drop(board)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tetrimino.rs:106:9 [INFO] [stderr] | [INFO] [stderr] 106 | return self.get_y_values().contains(&(board.num_of_cols() - 1)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.get_y_values().contains(&(board.num_of_cols() - 1))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tetrimino.rs:110:9 [INFO] [stderr] | [INFO] [stderr] 110 | return board.has_piece_at_positions(self.get_pos_on_board()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `board.has_piece_at_positions(self.get_pos_on_board())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tetrimino.rs:116:9 [INFO] [stderr] | [INFO] [stderr] 116 | return x_values.iter().any(| x | x == &-1 || x == &num_of_rows); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `x_values.iter().any(| x | x == &-1 || x == &num_of_rows)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/board.rs:8:9 [INFO] [stderr] | [INFO] [stderr] 8 | return Board { values: vec![vec![" ".to_string(); num_cols as usize]; num_rows as usize] }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Board { values: vec![vec![" ".to_string(); num_cols as usize]; num_rows as usize] }` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/board.rs:13:9 [INFO] [stderr] | [INFO] [stderr] 13 | return positions.iter().map(|point| self.values[point[1 as usize] as usize][point[0 as usize] as usize].clone()).collect(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `positions.iter().map(|point| self.values[point[1 as usize] as usize][point[0 as usize] as usize].clone()).collect()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/board.rs:17:9 [INFO] [stderr] | [INFO] [stderr] 17 | return self.values_at_positions(positions).iter().any(|val| val != " ") [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.values_at_positions(positions).iter().any(|val| val != " ")` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/board.rs:21:9 [INFO] [stderr] | [INFO] [stderr] 21 | return self.values.len() as i32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.values.len() as i32` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/board.rs:29:9 [INFO] [stderr] | [INFO] [stderr] 29 | return 0; [INFO] [stderr] | ^^^^^^^^^ help: remove `return` as shown: `0` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/board.rs:33:9 [INFO] [stderr] | [INFO] [stderr] 33 | return &self.values; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `&self.values` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unused import: `tetrimino::Tetrimino` [INFO] [stderr] --> src/main.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use tetrimino::Tetrimino; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/game.rs:12:9 [INFO] [stderr] | [INFO] [stderr] 12 | return Game { board: Board::init(num_rows, num_cols), current_piece: None } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Game { board: Board::init(num_rows, num_cols), current_piece: None }` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_return)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/game.rs:16:9 [INFO] [stderr] | [INFO] [stderr] 16 | return &self.board; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `&self.board` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tetrimino.rs:26:9 [INFO] [stderr] | [INFO] [stderr] 26 | return Tetrimino { points: vec![vec![0, 0], vec![1, 0], vec![0, -1], vec![1, -1]], position: position, symbol: "y".to_string() }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Tetrimino { points: vec![vec![0, 0], vec![1, 0], vec![0, -1], vec![1, -1]], position: position, symbol: "y".to_string() }` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tetrimino.rs:31:9 [INFO] [stderr] | [INFO] [stderr] 31 | return Tetrimino { points: vec![vec![-1, -1], vec![0, -1], vec![0, 0], vec![1, 0]], position: position, symbol: "r".to_string() }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Tetrimino { points: vec![vec![-1, -1], vec![0, -1], vec![0, 0], vec![1, 0]], position: position, symbol: "r".to_string() }` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tetrimino.rs:35:9 [INFO] [stderr] | [INFO] [stderr] 35 | return Tetrimino { points: vec![vec![-1, 0], vec![0, 0], vec![0, -1], vec![1, -1]], position: position, symbol: "g".to_string() }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Tetrimino { points: vec![vec![-1, 0], vec![0, 0], vec![0, -1], vec![1, -1]], position: position, symbol: "g".to_string() }` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tetrimino.rs:39:9 [INFO] [stderr] | [INFO] [stderr] 39 | return Tetrimino { points: vec![vec![-1, -1], vec![-1, 0], vec![0, 0], vec![1, 0]], position: position, symbol: "b".to_string() }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Tetrimino { points: vec![vec![-1, -1], vec![-1, 0], vec![0, 0], vec![1, 0]], position: position, symbol: "b".to_string() }` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tetrimino.rs:43:9 [INFO] [stderr] | [INFO] [stderr] 43 | return Tetrimino { points: vec![vec![-1, 0], vec![0, 0], vec![1, 0], vec![1, -1]], position: position, symbol: "o".to_string() }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Tetrimino { points: vec![vec![-1, 0], vec![0, 0], vec![1, 0], vec![1, -1]], position: position, symbol: "o".to_string() }` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tetrimino.rs:47:9 [INFO] [stderr] | [INFO] [stderr] 47 | return Tetrimino { points: vec![vec![-1, 0], vec![0, 0], vec![1, 0], vec![0, -1]], position: position, symbol: "p".to_string() }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Tetrimino { points: vec![vec![-1, 0], vec![0, 0], vec![1, 0], vec![0, -1]], position: position, symbol: "p".to_string() }` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tetrimino.rs:51:9 [INFO] [stderr] | [INFO] [stderr] 51 | return Tetrimino { points: vec![vec![-1, 0], vec![0, 0], vec![1, 0], vec![2, 0]], position: position, symbol: "c".to_string() }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Tetrimino { points: vec![vec![-1, 0], vec![0, 0], vec![1, 0], vec![2, 0]], position: position, symbol: "c".to_string() }` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tetrimino.rs:56:9 [INFO] [stderr] | [INFO] [stderr] 56 | return self.points.iter().map(|point| vec![point[0] + self.position.0, point[1] + self.position.1]).collect(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.points.iter().map(|point| vec![point[0] + self.position.0, point[1] + self.position.1]).collect()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tetrimino.rs:60:9 [INFO] [stderr] | [INFO] [stderr] 60 | return self.get_pos_on_board().iter().map(|point| point[0]).collect(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.get_pos_on_board().iter().map(|point| point[0]).collect()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tetrimino.rs:64:9 [INFO] [stderr] | [INFO] [stderr] 64 | return self.get_pos_on_board().iter().map(|point| point[1]).collect(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.get_pos_on_board().iter().map(|point| point[1]).collect()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tetrimino.rs:86:9 [INFO] [stderr] | [INFO] [stderr] 86 | return Status::Ok; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Status::Ok` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tetrimino.rs:96:9 [INFO] [stderr] | [INFO] [stderr] 96 | return Status::Ok; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Status::Ok` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tetrimino.rs:102:9 [INFO] [stderr] | [INFO] [stderr] 102 | return self.perform_drop(board); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.perform_drop(board)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tetrimino.rs:106:9 [INFO] [stderr] | [INFO] [stderr] 106 | return self.get_y_values().contains(&(board.num_of_cols() - 1)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.get_y_values().contains(&(board.num_of_cols() - 1))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tetrimino.rs:110:9 [INFO] [stderr] | [INFO] [stderr] 110 | return board.has_piece_at_positions(self.get_pos_on_board()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `board.has_piece_at_positions(self.get_pos_on_board())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/tetrimino.rs:116:9 [INFO] [stderr] | [INFO] [stderr] 116 | return x_values.iter().any(| x | x == &-1 || x == &num_of_rows); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `x_values.iter().any(| x | x == &-1 || x == &num_of_rows)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/board.rs:8:9 [INFO] [stderr] | [INFO] [stderr] 8 | return Board { values: vec![vec![" ".to_string(); num_cols as usize]; num_rows as usize] }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Board { values: vec![vec![" ".to_string(); num_cols as usize]; num_rows as usize] }` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/board.rs:13:9 [INFO] [stderr] | [INFO] [stderr] 13 | return positions.iter().map(|point| self.values[point[1 as usize] as usize][point[0 as usize] as usize].clone()).collect(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `positions.iter().map(|point| self.values[point[1 as usize] as usize][point[0 as usize] as usize].clone()).collect()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/board.rs:17:9 [INFO] [stderr] | [INFO] [stderr] 17 | return self.values_at_positions(positions).iter().any(|val| val != " ") [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.values_at_positions(positions).iter().any(|val| val != " ")` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/board.rs:21:9 [INFO] [stderr] | [INFO] [stderr] 21 | return self.values.len() as i32; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `self.values.len() as i32` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/board.rs:29:9 [INFO] [stderr] | [INFO] [stderr] 29 | return 0; [INFO] [stderr] | ^^^^^^^^^ help: remove `return` as shown: `0` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/board.rs:33:9 [INFO] [stderr] | [INFO] [stderr] 33 | return &self.values; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `&self.values` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unused variable: `x` [INFO] [stderr] --> src/tetrimino.rs:80:14 [INFO] [stderr] | [INFO] [stderr] 80 | let (x, y) = self.position; [INFO] [stderr] | ^ help: consider using `_x` instead [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `y` [INFO] [stderr] --> src/tetrimino.rs:80:17 [INFO] [stderr] | [INFO] [stderr] 80 | let (x, y) = self.position; [INFO] [stderr] | ^ help: consider using `_y` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `x` [INFO] [stderr] --> src/tetrimino.rs:80:14 [INFO] [stderr] | [INFO] [stderr] 80 | let (x, y) = self.position; [INFO] [stderr] | ^ help: consider using `_x` instead [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `y` [INFO] [stderr] --> src/tetrimino.rs:80:17 [INFO] [stderr] | [INFO] [stderr] 80 | let (x, y) = self.position; [INFO] [stderr] | ^ help: consider using `_y` instead [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:21:9 [INFO] [stderr] | [INFO] [stderr] 21 | let mut game = Game::init(input[0][1].parse().unwrap(), input[0][2].parse().unwrap()); [INFO] [stderr] | ----^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_mut)] on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:21:9 [INFO] [stderr] | [INFO] [stderr] 21 | let mut game = Game::init(input[0][1].parse().unwrap(), input[0][2].parse().unwrap()); [INFO] [stderr] | ----^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_mut)] on by default [INFO] [stderr] [INFO] [stderr] warning: field is never used: `current_piece` [INFO] [stderr] --> src/game.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | current_piece: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: field is never used: `points` [INFO] [stderr] --> src/tetrimino.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | points: Vec>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never used: `position` [INFO] [stderr] --> src/tetrimino.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | position: (i32, i32), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never used: `symbol` [INFO] [stderr] --> src/tetrimino.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | symbol: String, [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `init` [INFO] [stderr] --> src/tetrimino.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | pub fn init(type_num: i32, position: (i32, i32)) -> Tetrimino { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `type_one` [INFO] [stderr] --> src/tetrimino.rs:25:5 [INFO] [stderr] | [INFO] [stderr] 25 | fn type_one(position: (i32, i32)) -> Tetrimino { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `type_two` [INFO] [stderr] --> src/tetrimino.rs:30:5 [INFO] [stderr] | [INFO] [stderr] 30 | fn type_two(position: (i32, i32)) -> Tetrimino { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `type_three` [INFO] [stderr] --> src/tetrimino.rs:34:5 [INFO] [stderr] | [INFO] [stderr] 34 | fn type_three(position: (i32, i32)) -> Tetrimino { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `type_four` [INFO] [stderr] --> src/tetrimino.rs:38:5 [INFO] [stderr] | [INFO] [stderr] 38 | fn type_four(position: (i32, i32)) -> Tetrimino { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `type_five` [INFO] [stderr] --> src/tetrimino.rs:42:5 [INFO] [stderr] | [INFO] [stderr] 42 | fn type_five(position: (i32, i32)) -> Tetrimino { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `type_six` [INFO] [stderr] --> src/tetrimino.rs:46:5 [INFO] [stderr] | [INFO] [stderr] 46 | fn type_six(position: (i32, i32)) -> Tetrimino { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `type_seven` [INFO] [stderr] --> src/tetrimino.rs:50:5 [INFO] [stderr] | [INFO] [stderr] 50 | fn type_seven(position: (i32, i32)) -> Tetrimino { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `get_pos_on_board` [INFO] [stderr] --> src/tetrimino.rs:55:5 [INFO] [stderr] | [INFO] [stderr] 55 | pub fn get_pos_on_board(&self) -> Vec> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `get_x_values` [INFO] [stderr] --> src/tetrimino.rs:59:5 [INFO] [stderr] | [INFO] [stderr] 59 | pub fn get_x_values(&self) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `get_y_values` [INFO] [stderr] --> src/tetrimino.rs:63:5 [INFO] [stderr] | [INFO] [stderr] 63 | pub fn get_y_values(&self) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `perform_move` [INFO] [stderr] --> src/tetrimino.rs:68:5 [INFO] [stderr] | [INFO] [stderr] 68 | pub fn perform_move(&mut self, board: &Board, move_str: String) -> Status { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `shift_horizontally` [INFO] [stderr] --> src/tetrimino.rs:77:5 [INFO] [stderr] | [INFO] [stderr] 77 | fn shift_horizontally(&mut self, board: &Board, direction: String) -> Status { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `shift_down` [INFO] [stderr] --> src/tetrimino.rs:89:5 [INFO] [stderr] | [INFO] [stderr] 89 | fn shift_down(&mut self, board: &Board) -> Status { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `perform_drop` [INFO] [stderr] --> src/tetrimino.rs:99:5 [INFO] [stderr] | [INFO] [stderr] 99 | fn perform_drop(&mut self, board: &Board) -> Status { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `is_on_bottom` [INFO] [stderr] --> src/tetrimino.rs:105:5 [INFO] [stderr] | [INFO] [stderr] 105 | fn is_on_bottom(&self, board: &Board) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `piece_does_overlap` [INFO] [stderr] --> src/tetrimino.rs:109:5 [INFO] [stderr] | [INFO] [stderr] 109 | fn piece_does_overlap(&self, board: &Board) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `is_out_of_bounds` [INFO] [stderr] --> src/tetrimino.rs:113:5 [INFO] [stderr] | [INFO] [stderr] 113 | fn is_out_of_bounds(&self, board: &Board) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `values_at_positions` [INFO] [stderr] --> src/board.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | pub fn values_at_positions(&self, positions: Vec>) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `has_piece_at_positions` [INFO] [stderr] --> src/board.rs:16:5 [INFO] [stderr] | [INFO] [stderr] 16 | pub fn has_piece_at_positions(&self, positions: Vec>) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `num_of_rows` [INFO] [stderr] --> src/board.rs:20:5 [INFO] [stderr] | [INFO] [stderr] 20 | pub fn num_of_rows(&self) -> i32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Ok` [INFO] [stderr] --> src/status.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | Ok, [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Failed` [INFO] [stderr] --> src/status.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | Failed, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Placed` [INFO] [stderr] --> src/status.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | Placed, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never used: `current_piece` [INFO] [stderr] --> src/game.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | current_piece: Option, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(dead_code)] on by default [INFO] [stderr] [INFO] [stderr] warning: field is never used: `points` [INFO] [stderr] --> src/tetrimino.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | points: Vec>, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never used: `position` [INFO] [stderr] --> src/tetrimino.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | position: (i32, i32), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field is never used: `symbol` [INFO] [stderr] --> src/tetrimino.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | symbol: String, [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `init` [INFO] [stderr] --> src/tetrimino.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | pub fn init(type_num: i32, position: (i32, i32)) -> Tetrimino { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `type_one` [INFO] [stderr] --> src/tetrimino.rs:25:5 [INFO] [stderr] | [INFO] [stderr] 25 | fn type_one(position: (i32, i32)) -> Tetrimino { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `type_two` [INFO] [stderr] --> src/tetrimino.rs:30:5 [INFO] [stderr] | [INFO] [stderr] 30 | fn type_two(position: (i32, i32)) -> Tetrimino { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `type_three` [INFO] [stderr] --> src/tetrimino.rs:34:5 [INFO] [stderr] | [INFO] [stderr] 34 | fn type_three(position: (i32, i32)) -> Tetrimino { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `type_four` [INFO] [stderr] --> src/tetrimino.rs:38:5 [INFO] [stderr] | [INFO] [stderr] 38 | fn type_four(position: (i32, i32)) -> Tetrimino { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `type_five` [INFO] [stderr] --> src/tetrimino.rs:42:5 [INFO] [stderr] | [INFO] [stderr] 42 | fn type_five(position: (i32, i32)) -> Tetrimino { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `type_six` [INFO] [stderr] --> src/tetrimino.rs:46:5 [INFO] [stderr] | [INFO] [stderr] 46 | fn type_six(position: (i32, i32)) -> Tetrimino { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `type_seven` [INFO] [stderr] --> src/tetrimino.rs:50:5 [INFO] [stderr] | [INFO] [stderr] 50 | fn type_seven(position: (i32, i32)) -> Tetrimino { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `get_pos_on_board` [INFO] [stderr] --> src/tetrimino.rs:55:5 [INFO] [stderr] | [INFO] [stderr] 55 | pub fn get_pos_on_board(&self) -> Vec> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `get_x_values` [INFO] [stderr] --> src/tetrimino.rs:59:5 [INFO] [stderr] | [INFO] [stderr] 59 | pub fn get_x_values(&self) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `get_y_values` [INFO] [stderr] --> src/tetrimino.rs:63:5 [INFO] [stderr] | [INFO] [stderr] 63 | pub fn get_y_values(&self) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `perform_move` [INFO] [stderr] --> src/tetrimino.rs:68:5 [INFO] [stderr] | [INFO] [stderr] 68 | pub fn perform_move(&mut self, board: &Board, move_str: String) -> Status { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `shift_horizontally` [INFO] [stderr] --> src/tetrimino.rs:77:5 [INFO] [stderr] | [INFO] [stderr] 77 | fn shift_horizontally(&mut self, board: &Board, direction: String) -> Status { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `shift_down` [INFO] [stderr] --> src/tetrimino.rs:89:5 [INFO] [stderr] | [INFO] [stderr] 89 | fn shift_down(&mut self, board: &Board) -> Status { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `perform_drop` [INFO] [stderr] --> src/tetrimino.rs:99:5 [INFO] [stderr] | [INFO] [stderr] 99 | fn perform_drop(&mut self, board: &Board) -> Status { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `is_on_bottom` [INFO] [stderr] --> src/tetrimino.rs:105:5 [INFO] [stderr] | [INFO] [stderr] 105 | fn is_on_bottom(&self, board: &Board) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `piece_does_overlap` [INFO] [stderr] --> src/tetrimino.rs:109:5 [INFO] [stderr] | [INFO] [stderr] 109 | fn piece_does_overlap(&self, board: &Board) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `is_out_of_bounds` [INFO] [stderr] --> src/tetrimino.rs:113:5 [INFO] [stderr] | [INFO] [stderr] 113 | fn is_out_of_bounds(&self, board: &Board) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `values_at_positions` [INFO] [stderr] --> src/board.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | pub fn values_at_positions(&self, positions: Vec>) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `has_piece_at_positions` [INFO] [stderr] --> src/board.rs:16:5 [INFO] [stderr] | [INFO] [stderr] 16 | pub fn has_piece_at_positions(&self, positions: Vec>) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method is never used: `num_of_rows` [INFO] [stderr] --> src/board.rs:20:5 [INFO] [stderr] | [INFO] [stderr] 20 | pub fn num_of_rows(&self) -> i32 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Ok` [INFO] [stderr] --> src/status.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | Ok, [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Failed` [INFO] [stderr] --> src/status.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | Failed, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Placed` [INFO] [stderr] --> src/status.rs:5:5 [INFO] [stderr] | [INFO] [stderr] 5 | Placed, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/tetrimino.rs:78:9 [INFO] [stderr] | [INFO] [stderr] 78 | / let shift_value: i32; [INFO] [stderr] 79 | | if direction == "l" { shift_value = -1; } else { shift_value = 1; } [INFO] [stderr] | |___________________________________________________________________________^ help: it is more idiomatic to write: `let shift_value = if direction == "l" { -1 } else { 1 };` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::useless_let_if_seq)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] warning: `if _ { .. } else { .. }` is an expression [INFO] [stderr] --> src/tetrimino.rs:78:9 [INFO] [stderr] | [INFO] [stderr] 78 | / let shift_value: i32; [INFO] [stderr] 79 | | if direction == "l" { shift_value = -1; } else { shift_value = 1; } [INFO] [stderr] | |___________________________________________________________________________^ help: it is more idiomatic to write: `let shift_value = if direction == "l" { -1 } else { 1 };` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::useless_let_if_seq)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_let_if_seq [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 0.79s [INFO] running `"docker" "inspect" "b9fbb3ec2dc674ae65e8382976c69f4b7d7ca384230638b5b95c2180a268531b"` [INFO] running `"docker" "rm" "-f" "b9fbb3ec2dc674ae65e8382976c69f4b7d7ca384230638b5b95c2180a268531b"` [INFO] [stdout] b9fbb3ec2dc674ae65e8382976c69f4b7d7ca384230638b5b95c2180a268531b