[INFO] cloning repository https://github.com/daffyd-jones/rust_dungeon [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/daffyd-jones/rust_dungeon" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdaffyd-jones%2Frust_dungeon", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdaffyd-jones%2Frust_dungeon'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] a3c88562828df3c02b28f2279a7c4c6ea713f77b [INFO] checking daffyd-jones/rust_dungeon against try#2b43d8e161cfe46fae25518efb124c3c1d0fa392 for pr-145604 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdaffyd-jones%2Frust_dungeon" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/daffyd-jones/rust_dungeon [INFO] finished tweaking git repo https://github.com/daffyd-jones/rust_dungeon [INFO] tweaked toml for git repo https://github.com/daffyd-jones/rust_dungeon written to /workspace/builds/worker-0-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/daffyd-jones/rust_dungeon on toolchain 2b43d8e161cfe46fae25518efb124c3c1d0fa392 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+2b43d8e161cfe46fae25518efb124c3c1d0fa392" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/daffyd-jones/rust_dungeon already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+2b43d8e161cfe46fae25518efb124c3c1d0fa392" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+2b43d8e161cfe46fae25518efb124c3c1d0fa392" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 920ea43a759d296d613564c4bbd2ac755c60eea4979893f78a57ba4d7ff5746c [INFO] running `Command { std: "docker" "start" "-a" "920ea43a759d296d613564c4bbd2ac755c60eea4979893f78a57ba4d7ff5746c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "920ea43a759d296d613564c4bbd2ac755c60eea4979893f78a57ba4d7ff5746c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "920ea43a759d296d613564c4bbd2ac755c60eea4979893f78a57ba4d7ff5746c", kill_on_drop: false }` [INFO] [stdout] 920ea43a759d296d613564c4bbd2ac755c60eea4979893f78a57ba4d7ff5746c [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+2b43d8e161cfe46fae25518efb124c3c1d0fa392" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 36855795ef09b27a3f10ee696963f10c141ed37bcb37624bd72016ecbe36a0a4 [INFO] running `Command { std: "docker" "start" "-a" "36855795ef09b27a3f10ee696963f10c141ed37bcb37624bd72016ecbe36a0a4", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.155 [INFO] [stderr] Checking cfg-if v1.0.0 [INFO] [stderr] Compiling proc-macro2 v1.0.85 [INFO] [stderr] Compiling unicode-ident v1.0.12 [INFO] [stderr] Compiling rustversion v1.0.17 [INFO] [stderr] Compiling autocfg v1.3.0 [INFO] [stderr] Compiling version_check v0.9.4 [INFO] [stderr] Compiling parking_lot_core v0.9.10 [INFO] [stderr] Compiling signal-hook v0.3.17 [INFO] [stderr] Checking smallvec v1.13.2 [INFO] [stderr] Checking log v0.4.21 [INFO] [stderr] Checking scopeguard v1.2.0 [INFO] [stderr] Checking zerocopy v0.7.34 [INFO] [stderr] Checking once_cell v1.19.0 [INFO] [stderr] Compiling rustix v0.38.34 [INFO] [stderr] Checking either v1.12.0 [INFO] [stderr] Checking ryu v1.0.18 [INFO] [stderr] Checking bitflags v2.5.0 [INFO] [stderr] Compiling serde v1.0.208 [INFO] [stderr] Checking linux-raw-sys v0.4.14 [INFO] [stderr] Checking allocator-api2 v0.2.18 [INFO] [stderr] Compiling paste v1.0.15 [INFO] [stderr] Checking powerfmt v0.2.0 [INFO] [stderr] Compiling heck v0.5.0 [INFO] [stderr] Checking itoa v1.0.11 [INFO] [stderr] Checking itertools v0.12.1 [INFO] [stderr] Compiling serde_json v1.0.127 [INFO] [stderr] Checking deranged v0.3.11 [INFO] [stderr] Checking num_threads v0.1.7 [INFO] [stderr] Checking static_assertions v1.1.0 [INFO] [stderr] Checking unicode-width v0.1.13 [INFO] [stderr] Checking time-core v0.1.2 [INFO] [stderr] Checking ppv-lite86 v0.2.17 [INFO] [stderr] Checking num-conv v0.1.0 [INFO] [stderr] Checking itertools v0.13.0 [INFO] [stderr] Compiling ahash v0.8.11 [INFO] [stderr] Checking memchr v2.7.4 [INFO] [stderr] Checking cassowary v0.3.0 [INFO] [stderr] Checking unicode-segmentation v1.11.0 [INFO] [stderr] Compiling lock_api v0.4.12 [INFO] [stderr] Checking lazy_static v1.4.0 [INFO] [stderr] Checking castaway v0.2.3 [INFO] [stderr] Checking compact_str v0.8.0 [INFO] [stderr] Checking hashbrown v0.14.5 [INFO] [stderr] Compiling quote v1.0.36 [INFO] [stderr] Compiling syn v2.0.66 [INFO] [stderr] Checking signal-hook-registry v1.4.2 [INFO] [stderr] Checking mio v1.0.2 [INFO] [stderr] Checking getrandom v0.2.15 [INFO] [stderr] Checking time v0.3.36 [INFO] [stderr] Checking lru v0.12.3 [INFO] [stderr] Checking unicode-truncate v1.0.0 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Checking parking_lot v0.12.3 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking signal-hook-mio v0.2.4 [INFO] [stderr] Checking crossterm v0.28.1 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Compiling strum_macros v0.26.3 [INFO] [stderr] Compiling serde_derive v1.0.208 [INFO] [stderr] Compiling instability v0.3.2 [INFO] [stderr] Checking strum v0.26.2 [INFO] [stderr] Checking ratatui v0.28.0 [INFO] [stderr] Checking dungeon v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `crate::enums::Cells` [INFO] [stdout] --> src/enemy.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::enums::Cells; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Door` [INFO] [stdout] --> src/features.rs:1:27 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::enums::{Cells, Door, EnvInter, FeatureType, NPCWrap}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `parse_map` [INFO] [stdout] --> src/features.rs:9:34 [INFO] [stdout] | [INFO] [stdout] 9 | use crate::parsing::{ch_to_enum, parse_map}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::Rng` [INFO] [stdout] --> src/features.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use rand::Rng; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Door` and `FeatureType` [INFO] [stdout] --> src/features/abandoned_shacks.rs:1:27 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::enums::{Cells, Door, EnvInter, FeatureType, NPCWrap}; [INFO] [stdout] | ^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand_hermit_item` [INFO] [stdout] --> src/features/abandoned_shacks.rs:2:19 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::item::{rand_hermit_item, Item}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Convo`, `ShopConvos`, `ShopData`, `new_comm_npc`, `new_conv_npc`, and `new_shop_npc` [INFO] [stdout] --> src/features/abandoned_shacks.rs:3:18 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::npc::{new_comm_npc, new_conv_npc, new_shop_npc, Convo, ShopConvos, ShopData}; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^ ^^^^^^^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tile_to_chars` [INFO] [stdout] --> src/features/abandoned_shacks.rs:4:33 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::parsing::{parse_map, tile_to_chars}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::Rng` [INFO] [stdout] --> src/features/abandoned_shacks.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use rand::Rng; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Door` and `FeatureType` [INFO] [stdout] --> src/features/construction.rs:1:27 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::enums::{Cells, Door, EnvInter, FeatureType, NPCWrap}; [INFO] [stdout] | ^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand_hermit_item` [INFO] [stdout] --> src/features/construction.rs:2:19 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::item::{rand_hermit_item, Item}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Convo`, `ShopConvos`, `ShopData`, `new_comm_npc`, `new_conv_npc`, and `new_shop_npc` [INFO] [stdout] --> src/features/construction.rs:3:18 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::npc::{new_comm_npc, new_conv_npc, new_shop_npc, Convo, ShopConvos, ShopData}; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^ ^^^^^^^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tile_to_chars` [INFO] [stdout] --> src/features/construction.rs:4:33 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::parsing::{parse_map, tile_to_chars}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::Rng` [INFO] [stdout] --> src/features/construction.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use rand::Rng; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Door` and `FeatureType` [INFO] [stdout] --> src/features/field.rs:1:27 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::enums::{Cells, Door, EnvInter, FeatureType, NPCWrap}; [INFO] [stdout] | ^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand_hermit_item` [INFO] [stdout] --> src/features/field.rs:2:19 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::item::{rand_hermit_item, Item}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Convo`, `ShopConvos`, `ShopData`, `new_comm_npc`, `new_conv_npc`, and `new_shop_npc` [INFO] [stdout] --> src/features/field.rs:3:18 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::npc::{new_comm_npc, new_conv_npc, new_shop_npc, Convo, ShopConvos, ShopData}; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^ ^^^^^^^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::Rng` [INFO] [stdout] --> src/features/field.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use rand::Rng; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::f64::consts` [INFO] [stdout] --> src/features/field.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use std::f64::consts; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs` [INFO] [stdout] --> src/features/field.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use std::fs; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression [INFO] [stdout] --> src/features/field.rs:268:14 [INFO] [stdout] | [INFO] [stdout] 268 | for j in (0..temp.len()) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 268 - for j in (0..temp.len()) { [INFO] [stdout] 268 + for j in 0..temp.len() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression [INFO] [stdout] --> src/features/field.rs:269:18 [INFO] [stdout] | [INFO] [stdout] 269 | for i in (0..temp[0].len()) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 269 - for i in (0..temp[0].len()) { [INFO] [stdout] 269 + for i in 0..temp[0].len() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Door` and `FeatureType` [INFO] [stdout] --> src/features/pond.rs:1:27 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::enums::{Cells, Door, EnvInter, FeatureType, NPCWrap}; [INFO] [stdout] | ^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand_hermit_item` [INFO] [stdout] --> src/features/pond.rs:2:19 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::item::{rand_hermit_item, Item}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tile_to_chars` [INFO] [stdout] --> src/features/pond.rs:3:33 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::parsing::{parse_map, tile_to_chars}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::Rng` [INFO] [stdout] --> src/features/pond.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use rand::Rng; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Door` and `FeatureType` [INFO] [stdout] --> src/features/ruin.rs:1:27 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::enums::{Cells, Door, EnvInter, FeatureType, NPCWrap}; [INFO] [stdout] | ^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand_hermit_item` [INFO] [stdout] --> src/features/ruin.rs:2:19 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::item::{rand_hermit_item, Item}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Convo`, `ShopConvos`, `ShopData`, `new_comm_npc`, `new_conv_npc`, and `new_shop_npc` [INFO] [stdout] --> src/features/ruin.rs:3:18 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::npc::{new_comm_npc, new_conv_npc, new_shop_npc, Convo, ShopConvos, ShopData}; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^ ^^^^^^^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tile_to_chars` [INFO] [stdout] --> src/features/ruin.rs:4:33 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::parsing::{parse_map, tile_to_chars}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::Rng` [INFO] [stdout] --> src/features/ruin.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use rand::Rng; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Door` and `FeatureType` [INFO] [stdout] --> src/features/streams.rs:1:27 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::enums::{Cells, Door, EnvInter, FeatureType, NPCWrap}; [INFO] [stdout] | ^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand_hermit_item` [INFO] [stdout] --> src/features/streams.rs:2:19 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::item::{rand_hermit_item, Item}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::Rng` [INFO] [stdout] --> src/features/streams.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use rand::Rng; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression [INFO] [stdout] --> src/features/streams.rs:186:14 [INFO] [stdout] | [INFO] [stdout] 186 | for j in (0..temp.len()) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 186 - for j in (0..temp.len()) { [INFO] [stdout] 186 + for j in 0..temp.len() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression [INFO] [stdout] --> src/features/streams.rs:187:18 [INFO] [stdout] | [INFO] [stdout] 187 | for i in (0..temp[0].len()) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 187 - for i in (0..temp[0].len()) { [INFO] [stdout] 187 + for i in 0..temp[0].len() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression [INFO] [stdout] --> src/features.rs:68:18 [INFO] [stdout] | [INFO] [stdout] 68 | for j in (0..self.map.len() - 6) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 68 - for j in (0..self.map.len() - 6) { [INFO] [stdout] 68 + for j in 0..self.map.len() - 6 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression [INFO] [stdout] --> src/features.rs:69:22 [INFO] [stdout] | [INFO] [stdout] 69 | for i in (0..self.map[0].len() - 10) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 69 - for i in (0..self.map[0].len() - 10) { [INFO] [stdout] 69 + for i in 0..self.map[0].len() - 10 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::stats::WorldStats` [INFO] [stdout] --> src/gui.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::stats::WorldStats; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::enemy::Enemy` [INFO] [stdout] --> src/gui/npc_interactions.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::enemy::Enemy; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `EncOpt`, `EnvInter`, `Equip`, `InterOpt`, `Interactable`, `ItemEffect`, `NPCWrap`, and `Plants` [INFO] [stdout] --> src/gui/npc_interactions.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | EncOpt, EnvInter, Equip, InterOpt, Interactable, ItemEffect, Items, NPCWrap, Plants, [INFO] [stdout] | ^^^^^^ ^^^^^^^^ ^^^^^ ^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^ ^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `EnvInter`, `Equip`, `InterOpt`, `Interactable`, `ItemEffect`, `NPCWrap`, and `Plants` [INFO] [stdout] --> src/gui/enemy_encounters.rs:4:13 [INFO] [stdout] | [INFO] [stdout] 4 | EncOpt, EnvInter, Equip, InterOpt, Interactable, ItemEffect, Items, NPCWrap, Plants, [INFO] [stdout] | ^^^^^^^^ ^^^^^ ^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^ ^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::npc::NPC` [INFO] [stdout] --> src/gui/enemy_encounters.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use crate::npc::NPC; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ratatui::text::Line` [INFO] [stdout] --> src/gui/enemy_encounters.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use ratatui::text::Line; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::env::current_dir` [INFO] [stdout] --> src/gui/environment_interactions.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::env::current_dir; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ratatui::crossterm::style::PrintStyledContent` [INFO] [stdout] --> src/gui.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use ratatui::crossterm::style::PrintStyledContent; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Modifier` [INFO] [stdout] --> src/gui.rs:22:29 [INFO] [stdout] | [INFO] [stdout] 22 | use ratatui::style::{Color, Modifier, Style, Stylize}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::Rng` [INFO] [stdout] --> src/gui_utils.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use rand::Rng; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Constraint`, `Direction`, `Layout`, and `Margin` [INFO] [stdout] --> src/gui_utils.rs:9:23 [INFO] [stdout] | [INFO] [stdout] 9 | use ratatui::layout::{Constraint, Direction, Layout, Margin}; [INFO] [stdout] | ^^^^^^^^^^ ^^^^^^^^^ ^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ratatui::prelude::Alignment` [INFO] [stdout] --> src/gui_utils.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use ratatui::prelude::Alignment; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ratatui::widgets::Cell` [INFO] [stdout] --> src/gui_utils.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use ratatui::widgets::Cell; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ratatui::widgets::Row` [INFO] [stdout] --> src/gui_utils.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use ratatui::widgets::Row; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ratatui::widgets::Table` [INFO] [stdout] --> src/gui_utils.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use ratatui::widgets::Table; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::time::Duration` [INFO] [stdout] --> src/gui_utils.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 19 | use std::time::Duration; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize` [INFO] [stdout] --> src/item.rs:5:13 [INFO] [stdout] | [INFO] [stdout] 5 | use serde::{Deserialize, Serialize}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `thread_rng` [INFO] [stdout] --> src/map.rs:10:34 [INFO] [stdout] | [INFO] [stdout] 10 | use rand::{prelude::SliceRandom, thread_rng}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize` [INFO] [stdout] --> src/map.rs:13:13 [INFO] [stdout] | [INFO] [stdout] 13 | use serde::{Deserialize, Serialize}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `FeatureType` [INFO] [stdout] --> src/nodemap.rs:1:20 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::enums::{FeatureType, NodeType}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::features::Feature` [INFO] [stdout] --> src/nodemap.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::features::Feature; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs` [INFO] [stdout] --> src/notebook.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::fs; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::default` [INFO] [stdout] --> src/npc.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::default; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize` [INFO] [stdout] --> src/player.rs:6:13 [INFO] [stdout] | [INFO] [stdout] 6 | use serde::{Deserialize, Serialize}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize` [INFO] [stdout] --> src/puzzle.rs:9:13 [INFO] [stdout] | [INFO] [stdout] 9 | use serde::{Deserialize, Serialize}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::enums::Cells` [INFO] [stdout] --> src/enemy.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::enums::Cells; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression [INFO] [stdout] --> src/puzzle.rs:712:14 [INFO] [stdout] | [INFO] [stdout] 712 | for j in (0..temp.len()) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 712 - for j in (0..temp.len()) { [INFO] [stdout] 712 + for j in 0..temp.len() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression [INFO] [stdout] --> src/puzzle.rs:713:18 [INFO] [stdout] | [INFO] [stdout] 713 | for i in (0..temp[0].len()) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 713 - for i in (0..temp[0].len()) { [INFO] [stdout] 713 + for i in 0..temp[0].len() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Rng` and `seq::SliceRandom` [INFO] [stdout] --> src/puzzles.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | use rand::{seq::SliceRandom, Rng}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize` [INFO] [stdout] --> src/puzzles.rs:7:13 [INFO] [stdout] | [INFO] [stdout] 7 | use serde::{Deserialize, Serialize}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `CommDialogue` and `ConvoDialogue` [INFO] [stdout] --> src/settlement.rs:2:48 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::dialogue::{load_comms, load_convos, CommDialogue, ConvoDialogue}; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `CommDialogue`, `ConvoDialogue`, `load_comms`, and `load_convos` [INFO] [stdout] --> src/settlement/guild_settle.rs:1:23 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::dialogue::{load_comms, load_convos, CommDialogue, ConvoDialogue}; [INFO] [stdout] | ^^^^^^^^^^ ^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Door` and `Settle` [INFO] [stdout] --> src/settlement/guild_settle.rs:2:27 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::enums::{Cells, Door, EnvInter, NPCWrap, Settle}; [INFO] [stdout] | ^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Convo`, `ShopConvos`, `ShopData`, `new_comm_npc`, `new_conv_npc`, and `new_shop_npc` [INFO] [stdout] --> src/settlement/guild_settle.rs:5:18 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::npc::{new_comm_npc, new_conv_npc, new_shop_npc, Convo, ShopConvos, ShopData, ShopNPC}; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^ ^^^^^^^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::npc_utils::box_npc` [INFO] [stdout] --> src/settlement/guild_settle.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::npc_utils::box_npc; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::shop::Shop` [INFO] [stdout] --> src/settlement/guild_settle.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use crate::shop::Shop; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs` [INFO] [stdout] --> src/settlement/guild_settle.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use std::fs; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Door` and `Settle` [INFO] [stdout] --> src/settlement/med_settle.rs:1:27 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::enums::{Cells, Door, EnvInter, NPCWrap, Settle}; [INFO] [stdout] | ^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::Rng` [INFO] [stdout] --> src/settlement/med_settle.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use rand::Rng; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs` [INFO] [stdout] --> src/settlement/med_settle.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use std::fs; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Door` and `Settle` [INFO] [stdout] --> src/settlement/obsidian_settle.rs:1:27 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::enums::{Cells, Door, EnvInter, NPCWrap, Settle}; [INFO] [stdout] | ^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Door` and `Settle` [INFO] [stdout] --> src/settlement/sm_settle.rs:1:27 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::enums::{Cells, Door, EnvInter, NPCWrap, Settle}; [INFO] [stdout] | ^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Door` [INFO] [stdout] --> src/features.rs:1:27 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::enums::{Cells, Door, EnvInter, FeatureType, NPCWrap}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::Rng` [INFO] [stdout] --> src/settlement/sm_settle.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use rand::Rng; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `parse_map` [INFO] [stdout] --> src/features.rs:9:34 [INFO] [stdout] | [INFO] [stdout] 9 | use crate::parsing::{ch_to_enum, parse_map}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::Rng` [INFO] [stdout] --> src/features.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use rand::Rng; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Door` and `FeatureType` [INFO] [stdout] --> src/features/abandoned_shacks.rs:1:27 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::enums::{Cells, Door, EnvInter, FeatureType, NPCWrap}; [INFO] [stdout] | ^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand_hermit_item` [INFO] [stdout] --> src/features/abandoned_shacks.rs:2:19 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::item::{rand_hermit_item, Item}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Convo`, `ShopConvos`, `ShopData`, `new_comm_npc`, `new_conv_npc`, and `new_shop_npc` [INFO] [stdout] --> src/features/abandoned_shacks.rs:3:18 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::npc::{new_comm_npc, new_conv_npc, new_shop_npc, Convo, ShopConvos, ShopData}; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^ ^^^^^^^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tile_to_chars` [INFO] [stdout] --> src/features/abandoned_shacks.rs:4:33 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::parsing::{parse_map, tile_to_chars}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::Rng` [INFO] [stdout] --> src/features/abandoned_shacks.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use rand::Rng; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Door` and `FeatureType` [INFO] [stdout] --> src/features/construction.rs:1:27 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::enums::{Cells, Door, EnvInter, FeatureType, NPCWrap}; [INFO] [stdout] | ^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand_hermit_item` [INFO] [stdout] --> src/features/construction.rs:2:19 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::item::{rand_hermit_item, Item}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Convo`, `ShopConvos`, `ShopData`, `new_comm_npc`, `new_conv_npc`, and `new_shop_npc` [INFO] [stdout] --> src/features/construction.rs:3:18 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::npc::{new_comm_npc, new_conv_npc, new_shop_npc, Convo, ShopConvos, ShopData}; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^ ^^^^^^^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tile_to_chars` [INFO] [stdout] --> src/features/construction.rs:4:33 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::parsing::{parse_map, tile_to_chars}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `TaskType` [INFO] [stdout] --> src/settlements.rs:5:26 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::tasks::{Task, TaskType}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::Rng` [INFO] [stdout] --> src/features/construction.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use rand::Rng; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize` [INFO] [stdout] --> src/settlements.rs:8:13 [INFO] [stdout] | [INFO] [stdout] 8 | use serde::{Deserialize, Serialize}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Door` and `FeatureType` [INFO] [stdout] --> src/features/field.rs:1:27 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::enums::{Cells, Door, EnvInter, FeatureType, NPCWrap}; [INFO] [stdout] | ^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `NPCWrap` [INFO] [stdout] --> src/shop.rs:2:20 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::enums::{NPCWrap, ShopItem, Shops}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand_hermit_item` [INFO] [stdout] --> src/features/field.rs:2:19 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::item::{rand_hermit_item, Item}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::item::Item` [INFO] [stdout] --> src/shop.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::item::Item; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize` [INFO] [stdout] --> src/shop.rs:5:13 [INFO] [stdout] | [INFO] [stdout] 5 | use serde::{Deserialize, Serialize}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs` [INFO] [stdout] --> src/tasks.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::fs; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Location` and `ToggleState` [INFO] [stdout] --> src/tasks.rs:8:20 [INFO] [stdout] | [INFO] [stdout] 8 | use crate::enums::{Location, ToggleState}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Convo`, `ShopConvos`, `ShopData`, `new_comm_npc`, `new_conv_npc`, and `new_shop_npc` [INFO] [stdout] --> src/features/field.rs:3:18 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::npc::{new_comm_npc, new_conv_npc, new_shop_npc, Convo, ShopConvos, ShopData}; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^ ^^^^^^^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::Rng` [INFO] [stdout] --> src/features/field.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use rand::Rng; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::f64::consts` [INFO] [stdout] --> src/features/field.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use std::f64::consts; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs` [INFO] [stdout] --> src/features/field.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use std::fs; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression [INFO] [stdout] --> src/features/field.rs:268:14 [INFO] [stdout] | [INFO] [stdout] 268 | for j in (0..temp.len()) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 268 - for j in (0..temp.len()) { [INFO] [stdout] 268 + for j in 0..temp.len() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression [INFO] [stdout] --> src/features/field.rs:269:18 [INFO] [stdout] | [INFO] [stdout] 269 | for i in (0..temp[0].len()) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 269 - for i in (0..temp[0].len()) { [INFO] [stdout] 269 + for i in 0..temp[0].len() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Door` and `FeatureType` [INFO] [stdout] --> src/features/pond.rs:1:27 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::enums::{Cells, Door, EnvInter, FeatureType, NPCWrap}; [INFO] [stdout] | ^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand_hermit_item` [INFO] [stdout] --> src/features/pond.rs:2:19 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::item::{rand_hermit_item, Item}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tile_to_chars` [INFO] [stdout] --> src/features/pond.rs:3:33 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::parsing::{parse_map, tile_to_chars}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::Rng` [INFO] [stdout] --> src/features/pond.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use rand::Rng; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Door` and `FeatureType` [INFO] [stdout] --> src/features/ruin.rs:1:27 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::enums::{Cells, Door, EnvInter, FeatureType, NPCWrap}; [INFO] [stdout] | ^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand_hermit_item` [INFO] [stdout] --> src/features/ruin.rs:2:19 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::item::{rand_hermit_item, Item}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Convo`, `ShopConvos`, `ShopData`, `new_comm_npc`, `new_conv_npc`, and `new_shop_npc` [INFO] [stdout] --> src/features/ruin.rs:3:18 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::npc::{new_comm_npc, new_conv_npc, new_shop_npc, Convo, ShopConvos, ShopData}; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^ ^^^^^^^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tile_to_chars` [INFO] [stdout] --> src/features/ruin.rs:4:33 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::parsing::{parse_map, tile_to_chars}; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::Rng` [INFO] [stdout] --> src/features/ruin.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use rand::Rng; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Door` and `FeatureType` [INFO] [stdout] --> src/features/streams.rs:1:27 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::enums::{Cells, Door, EnvInter, FeatureType, NPCWrap}; [INFO] [stdout] | ^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand_hermit_item` [INFO] [stdout] --> src/features/streams.rs:2:19 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::item::{rand_hermit_item, Item}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::Rng` [INFO] [stdout] --> src/features/streams.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use rand::Rng; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression [INFO] [stdout] --> src/features/streams.rs:186:14 [INFO] [stdout] | [INFO] [stdout] 186 | for j in (0..temp.len()) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 186 - for j in (0..temp.len()) { [INFO] [stdout] 186 + for j in 0..temp.len() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression [INFO] [stdout] --> src/features/streams.rs:187:18 [INFO] [stdout] | [INFO] [stdout] 187 | for i in (0..temp[0].len()) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 187 - for i in (0..temp[0].len()) { [INFO] [stdout] 187 + for i in 0..temp[0].len() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression [INFO] [stdout] --> src/features.rs:68:18 [INFO] [stdout] | [INFO] [stdout] 68 | for j in (0..self.map.len() - 6) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 68 - for j in (0..self.map.len() - 6) { [INFO] [stdout] 68 + for j in 0..self.map.len() - 6 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression [INFO] [stdout] --> src/features.rs:69:22 [INFO] [stdout] | [INFO] [stdout] 69 | for i in (0..self.map[0].len() - 10) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 69 - for i in (0..self.map[0].len() - 10) { [INFO] [stdout] 69 + for i in 0..self.map[0].len() - 10 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::stats::WorldStats` [INFO] [stdout] --> src/gui.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::stats::WorldStats; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::enemy::Enemy` [INFO] [stdout] --> src/gui/npc_interactions.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::enemy::Enemy; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `EncOpt`, `EnvInter`, `Equip`, `InterOpt`, `Interactable`, `ItemEffect`, `NPCWrap`, and `Plants` [INFO] [stdout] --> src/gui/npc_interactions.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | EncOpt, EnvInter, Equip, InterOpt, Interactable, ItemEffect, Items, NPCWrap, Plants, [INFO] [stdout] | ^^^^^^ ^^^^^^^^ ^^^^^ ^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^ ^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Enemies` and `Items` [INFO] [stdout] --> src/gamestate.rs:5:39 [INFO] [stdout] | [INFO] [stdout] 5 | Cells, CompMode, EncMode, EncOpt, Enemies, EnvInter, FightSteps, GameMode, Interactable, Items, [INFO] [stdout] | ^^^^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `EnvInter`, `Equip`, `InterOpt`, `Interactable`, `ItemEffect`, `NPCWrap`, and `Plants` [INFO] [stdout] --> src/gui/enemy_encounters.rs:4:13 [INFO] [stdout] | [INFO] [stdout] 4 | EncOpt, EnvInter, Equip, InterOpt, Interactable, ItemEffect, Items, NPCWrap, Plants, [INFO] [stdout] | ^^^^^^^^ ^^^^^ ^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^ ^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::npc::NPC` [INFO] [stdout] --> src/gui/enemy_encounters.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use crate::npc::NPC; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ratatui::text::Line` [INFO] [stdout] --> src/gui/enemy_encounters.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use ratatui::text::Line; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Task` [INFO] [stdout] --> src/gamestate.rs:20:20 [INFO] [stdout] | [INFO] [stdout] 20 | use crate::tasks::{Task, Tasks}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `gen_broken_range` [INFO] [stdout] --> src/gamestate.rs:21:20 [INFO] [stdout] | [INFO] [stdout] 21 | use crate::utils::{gen_broken_range, in_range, loc_shop_items}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `DisplayStats` [INFO] [stdout] --> src/gamestate/enemy_encounter.rs:9:35 [INFO] [stdout] | [INFO] [stdout] 9 | use crate::gui_utils::{Animation, DisplayStats, GuiArgs}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `DisplayStats` [INFO] [stdout] --> src/gamestate/environment_interactions.rs:8:24 [INFO] [stdout] | [INFO] [stdout] 8 | use crate::gui_utils::{DisplayStats, GuiArgs}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::shop::Shop` [INFO] [stdout] --> src/gamestate/environment_interactions.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use crate::shop::Shop; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `TaskType` and `self` [INFO] [stdout] --> src/gamestate/environment_interactions.rs:11:20 [INFO] [stdout] | [INFO] [stdout] 11 | use crate::tasks::{self, Task, TaskType}; [INFO] [stdout] | ^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `GUIMode` [INFO] [stdout] --> src/gamestate/inventory_state.rs:3:20 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::enums::{GUIMode, GameMode, InterOpt, ItemOpt}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `DisplayStats` [INFO] [stdout] --> src/gamestate/npc_interactions.rs:6:24 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::gui_utils::{DisplayStats, GuiArgs}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Cells`, `CompMode`, `GUIMode`, `GameMode`, `Interactable`, and `NPCWrap` [INFO] [stdout] --> src/gamestate/puzzle_state.rs:2:20 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::enums::{Cells, CompMode, GUIMode, GameMode, Interactable, Location, NPCWrap}; [INFO] [stdout] | ^^^^^ ^^^^^^^^ ^^^^^^^ ^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::gui_utils::GuiArgs` [INFO] [stdout] --> src/gamestate/puzzle_state.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::gui_utils::GuiArgs; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::settlement::Settlement` [INFO] [stdout] --> src/gamestate/puzzle_state.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use crate::settlement::Settlement; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::item::Item` [INFO] [stdout] --> src/gamestate/puzzle_state.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use crate::item::Item; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::time::Instant` [INFO] [stdout] --> src/gamestate/puzzle_state.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use std::time::Instant; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::gamestate::in_range` [INFO] [stdout] --> src/gamestate/puzzle_state.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use crate::gamestate::in_range; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::gamestate::loc_shop_items` [INFO] [stdout] --> src/gamestate/puzzle_state.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use crate::gamestate::loc_shop_items; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::npc_utils::box_npc` [INFO] [stdout] --> src/gamestate/puzzle_state.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use crate::npc_utils::box_npc; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::npc_utils::wrap_nbox` [INFO] [stdout] --> src/gamestate/puzzle_state.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use crate::npc_utils::wrap_nbox; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Event`, `KeyCode`, `poll`, and `read` [INFO] [stdout] --> src/gamestate/puzzle_state.rs:17:33 [INFO] [stdout] | [INFO] [stdout] 17 | use ratatui::crossterm::event::{poll, read, Event, KeyCode}; [INFO] [stdout] | ^^^^ ^^^^ ^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/gamestate/puzzle_state.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `NPCWrap` [INFO] [stdout] --> src/gamestate/settle_state.rs:3:63 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::enums::{GUIMode, GameMode, Interactable, Location, NPCWrap, ShopItem}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ShopNPC` [INFO] [stdout] --> src/gamestate/settle_state.rs:7:18 [INFO] [stdout] | [INFO] [stdout] 7 | use crate::npc::{ShopNPC, NPC}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::item::Item` [INFO] [stdout] --> src/gamestate/settle_state.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use crate::item::Item; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::Rng` [INFO] [stdout] --> src/gamestate.rs:40:5 [INFO] [stdout] | [INFO] [stdout] 40 | use rand::Rng; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::env::current_dir` [INFO] [stdout] --> src/gui/environment_interactions.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::env::current_dir; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ratatui::crossterm::style::PrintStyledContent` [INFO] [stdout] --> src/gui.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use ratatui::crossterm::style::PrintStyledContent; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Modifier` [INFO] [stdout] --> src/gui.rs:22:29 [INFO] [stdout] | [INFO] [stdout] 22 | use ratatui::style::{Color, Modifier, Style, Stylize}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::Rng` [INFO] [stdout] --> src/gui_utils.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use rand::Rng; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Constraint`, `Direction`, `Layout`, and `Margin` [INFO] [stdout] --> src/gui_utils.rs:9:23 [INFO] [stdout] | [INFO] [stdout] 9 | use ratatui::layout::{Constraint, Direction, Layout, Margin}; [INFO] [stdout] | ^^^^^^^^^^ ^^^^^^^^^ ^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ratatui::prelude::Alignment` [INFO] [stdout] --> src/gui_utils.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use ratatui::prelude::Alignment; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ratatui::widgets::Cell` [INFO] [stdout] --> src/gui_utils.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use ratatui::widgets::Cell; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ratatui::widgets::Row` [INFO] [stdout] --> src/gui_utils.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use ratatui::widgets::Row; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ratatui::widgets::Table` [INFO] [stdout] --> src/gui_utils.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use ratatui::widgets::Table; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::time::Duration` [INFO] [stdout] --> src/gui_utils.rs:19:5 [INFO] [stdout] | [INFO] [stdout] 19 | use std::time::Duration; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize` [INFO] [stdout] --> src/item.rs:5:13 [INFO] [stdout] | [INFO] [stdout] 5 | use serde::{Deserialize, Serialize}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `thread_rng` [INFO] [stdout] --> src/map.rs:10:34 [INFO] [stdout] | [INFO] [stdout] 10 | use rand::{prelude::SliceRandom, thread_rng}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize` [INFO] [stdout] --> src/map.rs:13:13 [INFO] [stdout] | [INFO] [stdout] 13 | use serde::{Deserialize, Serialize}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `FeatureType` [INFO] [stdout] --> src/nodemap.rs:1:20 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::enums::{FeatureType, NodeType}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::features::Feature` [INFO] [stdout] --> src/nodemap.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::features::Feature; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs` [INFO] [stdout] --> src/notebook.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::fs; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::default` [INFO] [stdout] --> src/npc.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::default; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize` [INFO] [stdout] --> src/player.rs:6:13 [INFO] [stdout] | [INFO] [stdout] 6 | use serde::{Deserialize, Serialize}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize` [INFO] [stdout] --> src/puzzle.rs:9:13 [INFO] [stdout] | [INFO] [stdout] 9 | use serde::{Deserialize, Serialize}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression [INFO] [stdout] --> src/puzzle.rs:712:14 [INFO] [stdout] | [INFO] [stdout] 712 | for j in (0..temp.len()) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 712 - for j in (0..temp.len()) { [INFO] [stdout] 712 + for j in 0..temp.len() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression [INFO] [stdout] --> src/puzzle.rs:713:18 [INFO] [stdout] | [INFO] [stdout] 713 | for i in (0..temp[0].len()) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 713 - for i in (0..temp[0].len()) { [INFO] [stdout] 713 + for i in 0..temp[0].len() { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Rng` and `seq::SliceRandom` [INFO] [stdout] --> src/puzzles.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | use rand::{seq::SliceRandom, Rng}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize` [INFO] [stdout] --> src/puzzles.rs:7:13 [INFO] [stdout] | [INFO] [stdout] 7 | use serde::{Deserialize, Serialize}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `CommDialogue` and `ConvoDialogue` [INFO] [stdout] --> src/settlement.rs:2:48 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::dialogue::{load_comms, load_convos, CommDialogue, ConvoDialogue}; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `CommDialogue`, `ConvoDialogue`, `load_comms`, and `load_convos` [INFO] [stdout] --> src/settlement/guild_settle.rs:1:23 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::dialogue::{load_comms, load_convos, CommDialogue, ConvoDialogue}; [INFO] [stdout] | ^^^^^^^^^^ ^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Door` and `Settle` [INFO] [stdout] --> src/settlement/guild_settle.rs:2:27 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::enums::{Cells, Door, EnvInter, NPCWrap, Settle}; [INFO] [stdout] | ^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Convo`, `ShopConvos`, `ShopData`, `new_comm_npc`, `new_conv_npc`, and `new_shop_npc` [INFO] [stdout] --> src/settlement/guild_settle.rs:5:18 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::npc::{new_comm_npc, new_conv_npc, new_shop_npc, Convo, ShopConvos, ShopData, ShopNPC}; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^ ^^^^^^^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::npc_utils::box_npc` [INFO] [stdout] --> src/settlement/guild_settle.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::npc_utils::box_npc; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::shop::Shop` [INFO] [stdout] --> src/settlement/guild_settle.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use crate::shop::Shop; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs` [INFO] [stdout] --> src/settlement/guild_settle.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use std::fs; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Door` and `Settle` [INFO] [stdout] --> src/settlement/med_settle.rs:1:27 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::enums::{Cells, Door, EnvInter, NPCWrap, Settle}; [INFO] [stdout] | ^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::Rng` [INFO] [stdout] --> src/settlement/med_settle.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use rand::Rng; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs` [INFO] [stdout] --> src/settlement/med_settle.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use std::fs; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Door` and `Settle` [INFO] [stdout] --> src/settlement/obsidian_settle.rs:1:27 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::enums::{Cells, Door, EnvInter, NPCWrap, Settle}; [INFO] [stdout] | ^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Door` and `Settle` [INFO] [stdout] --> src/settlement/sm_settle.rs:1:27 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::enums::{Cells, Door, EnvInter, NPCWrap, Settle}; [INFO] [stdout] | ^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::Rng` [INFO] [stdout] --> src/settlement/sm_settle.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use rand::Rng; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `TaskType` [INFO] [stdout] --> src/settlements.rs:5:26 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::tasks::{Task, TaskType}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize` [INFO] [stdout] --> src/settlements.rs:8:13 [INFO] [stdout] | [INFO] [stdout] 8 | use serde::{Deserialize, Serialize}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `NPCWrap` [INFO] [stdout] --> src/shop.rs:2:20 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::enums::{NPCWrap, ShopItem, Shops}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::item::Item` [INFO] [stdout] --> src/shop.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::item::Item; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Deserialize` and `Serialize` [INFO] [stdout] --> src/shop.rs:5:13 [INFO] [stdout] | [INFO] [stdout] 5 | use serde::{Deserialize, Serialize}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs` [INFO] [stdout] --> src/tasks.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::fs; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Location` and `ToggleState` [INFO] [stdout] --> src/tasks.rs:8:20 [INFO] [stdout] | [INFO] [stdout] 8 | use crate::enums::{Location, ToggleState}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Enemies` and `Items` [INFO] [stdout] --> src/gamestate.rs:5:39 [INFO] [stdout] | [INFO] [stdout] 5 | Cells, CompMode, EncMode, EncOpt, Enemies, EnvInter, FightSteps, GameMode, Interactable, Items, [INFO] [stdout] | ^^^^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Task` [INFO] [stdout] --> src/gamestate.rs:20:20 [INFO] [stdout] | [INFO] [stdout] 20 | use crate::tasks::{Task, Tasks}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `gen_broken_range` [INFO] [stdout] --> src/gamestate.rs:21:20 [INFO] [stdout] | [INFO] [stdout] 21 | use crate::utils::{gen_broken_range, in_range, loc_shop_items}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `DisplayStats` [INFO] [stdout] --> src/gamestate/enemy_encounter.rs:9:35 [INFO] [stdout] | [INFO] [stdout] 9 | use crate::gui_utils::{Animation, DisplayStats, GuiArgs}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `DisplayStats` [INFO] [stdout] --> src/gamestate/environment_interactions.rs:8:24 [INFO] [stdout] | [INFO] [stdout] 8 | use crate::gui_utils::{DisplayStats, GuiArgs}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::shop::Shop` [INFO] [stdout] --> src/gamestate/environment_interactions.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use crate::shop::Shop; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `TaskType` and `self` [INFO] [stdout] --> src/gamestate/environment_interactions.rs:11:20 [INFO] [stdout] | [INFO] [stdout] 11 | use crate::tasks::{self, Task, TaskType}; [INFO] [stdout] | ^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `GUIMode` [INFO] [stdout] --> src/gamestate/inventory_state.rs:3:20 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::enums::{GUIMode, GameMode, InterOpt, ItemOpt}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `DisplayStats` [INFO] [stdout] --> src/gamestate/npc_interactions.rs:6:24 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::gui_utils::{DisplayStats, GuiArgs}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Cells`, `CompMode`, `GUIMode`, `GameMode`, `Interactable`, and `NPCWrap` [INFO] [stdout] --> src/gamestate/puzzle_state.rs:2:20 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::enums::{Cells, CompMode, GUIMode, GameMode, Interactable, Location, NPCWrap}; [INFO] [stdout] | ^^^^^ ^^^^^^^^ ^^^^^^^ ^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::gui_utils::GuiArgs` [INFO] [stdout] --> src/gamestate/puzzle_state.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::gui_utils::GuiArgs; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::settlement::Settlement` [INFO] [stdout] --> src/gamestate/puzzle_state.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use crate::settlement::Settlement; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::item::Item` [INFO] [stdout] --> src/gamestate/puzzle_state.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use crate::item::Item; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::time::Instant` [INFO] [stdout] --> src/gamestate/puzzle_state.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use std::time::Instant; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::gamestate::in_range` [INFO] [stdout] --> src/gamestate/puzzle_state.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use crate::gamestate::in_range; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::gamestate::loc_shop_items` [INFO] [stdout] --> src/gamestate/puzzle_state.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use crate::gamestate::loc_shop_items; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::npc_utils::box_npc` [INFO] [stdout] --> src/gamestate/puzzle_state.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use crate::npc_utils::box_npc; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::npc_utils::wrap_nbox` [INFO] [stdout] --> src/gamestate/puzzle_state.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | use crate::npc_utils::wrap_nbox; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Event`, `KeyCode`, `poll`, and `read` [INFO] [stdout] --> src/gamestate/puzzle_state.rs:17:33 [INFO] [stdout] | [INFO] [stdout] 17 | use ratatui::crossterm::event::{poll, read, Event, KeyCode}; [INFO] [stdout] | ^^^^ ^^^^ ^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/gamestate/puzzle_state.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `NPCWrap` [INFO] [stdout] --> src/gamestate/settle_state.rs:3:63 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::enums::{GUIMode, GameMode, Interactable, Location, NPCWrap, ShopItem}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ShopNPC` [INFO] [stdout] --> src/gamestate/settle_state.rs:7:18 [INFO] [stdout] | [INFO] [stdout] 7 | use crate::npc::{ShopNPC, NPC}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::item::Item` [INFO] [stdout] --> src/gamestate/settle_state.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use crate::item::Item; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `rand::Rng` [INFO] [stdout] --> src/gamestate.rs:40:5 [INFO] [stdout] | [INFO] [stdout] 40 | use rand::Rng; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Stylize` [INFO] [stdout] --> src/gui_utils.rs:12:36 [INFO] [stdout] | [INFO] [stdout] 12 | use ratatui::style::{Color, Style, Stylize}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::npc::NPC` [INFO] [stdout] --> src/gamestate/puzzle_state.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::npc::NPC; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `NPC` [INFO] [stdout] --> src/gamestate/settle_state.rs:7:27 [INFO] [stdout] | [INFO] [stdout] 7 | use crate::npc::{ShopNPC, NPC}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `left` [INFO] [stdout] --> src/features/field.rs:275:26 [INFO] [stdout] | [INFO] [stdout] 275 | (up, left) if j == temp.len() - 1 && i == temp[0].len() - 1 => { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_left` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Stylize` [INFO] [stdout] --> src/gui_utils.rs:12:36 [INFO] [stdout] | [INFO] [stdout] 12 | use ratatui::style::{Color, Style, Stylize}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::npc::NPC` [INFO] [stdout] --> src/gamestate/puzzle_state.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::npc::NPC; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `NPC` [INFO] [stdout] --> src/gamestate/settle_state.rs:7:27 [INFO] [stdout] | [INFO] [stdout] 7 | use crate::npc::{ShopNPC, NPC}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `chunks` [INFO] [stdout] --> src/gui/gui_man_draw.rs:22:21 [INFO] [stdout] | [INFO] [stdout] 22 | let chunks = Layout::default() [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_chunks` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `area` [INFO] [stdout] --> src/gui/gui_man_draw.rs:45:26 [INFO] [stdout] | [INFO] [stdout] 45 | let [area] = vertical.areas(a); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_area` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `area` [INFO] [stdout] --> src/gui/gui_man_draw.rs:184:26 [INFO] [stdout] | [INFO] [stdout] 184 | let [area] = vertical.areas(a); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_area` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `area` [INFO] [stdout] --> src/gui/npc_interactions.rs:165:26 [INFO] [stdout] | [INFO] [stdout] 165 | let [area] = vertical.areas(a); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_area` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `area` [INFO] [stdout] --> src/gui/npc_interactions.rs:596:26 [INFO] [stdout] | [INFO] [stdout] 596 | let [area] = vertical.areas(a); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_area` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `left` [INFO] [stdout] --> src/features/field.rs:275:26 [INFO] [stdout] | [INFO] [stdout] 275 | (up, left) if j == temp.len() - 1 && i == temp[0].len() - 1 => { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_left` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `chunks` [INFO] [stdout] --> src/gui/gui_man_draw.rs:22:21 [INFO] [stdout] | [INFO] [stdout] 22 | let chunks = Layout::default() [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_chunks` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `area` [INFO] [stdout] --> src/gui/gui_man_draw.rs:45:26 [INFO] [stdout] | [INFO] [stdout] 45 | let [area] = vertical.areas(a); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_area` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `area` [INFO] [stdout] --> src/gui/environment_interactions.rs:194:22 [INFO] [stdout] | [INFO] [stdout] 194 | let [area] = vertical.areas(a); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_area` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `area` [INFO] [stdout] --> src/gui/gui_man_draw.rs:184:26 [INFO] [stdout] | [INFO] [stdout] 184 | let [area] = vertical.areas(a); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_area` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `area` [INFO] [stdout] --> src/gui/environment_interactions.rs:354:22 [INFO] [stdout] | [INFO] [stdout] 354 | let [area] = vertical.areas(a); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_area` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `area` [INFO] [stdout] --> src/gui/environment_interactions.rs:780:22 [INFO] [stdout] | [INFO] [stdout] 780 | let [area] = vertical.areas(a); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_area` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `area` [INFO] [stdout] --> src/gui/environment_interactions.rs:935:22 [INFO] [stdout] | [INFO] [stdout] 935 | let [area] = vertical.areas(a); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_area` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `in_h` [INFO] [stdout] --> src/gui.rs:93:9 [INFO] [stdout] | [INFO] [stdout] 93 | let in_h = inner_area.height as usize; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_in_h` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `in_w` [INFO] [stdout] --> src/gui.rs:94:9 [INFO] [stdout] | [INFO] [stdout] 94 | let in_w = inner_area.width as usize; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_in_w` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `area` [INFO] [stdout] --> src/gui/npc_interactions.rs:165:26 [INFO] [stdout] | [INFO] [stdout] 165 | let [area] = vertical.areas(a); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_area` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b` [INFO] [stdout] --> src/gui.rs:1301:21 [INFO] [stdout] | [INFO] [stdout] 1301 | let b = Block::bordered(); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `area` [INFO] [stdout] --> src/gui.rs:1306:26 [INFO] [stdout] | [INFO] [stdout] 1306 | let [area] = vertical.areas(a); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_area` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `area` [INFO] [stdout] --> src/gui/npc_interactions.rs:596:26 [INFO] [stdout] | [INFO] [stdout] 596 | let [area] = vertical.areas(a); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_area` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `env_col` [INFO] [stdout] --> src/gui_utils.rs:264:25 [INFO] [stdout] | [INFO] [stdout] 264 | let env_col = { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_env_col` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `area` [INFO] [stdout] --> src/gui/environment_interactions.rs:194:22 [INFO] [stdout] | [INFO] [stdout] 194 | let [area] = vertical.areas(a); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_area` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `area` [INFO] [stdout] --> src/gui/environment_interactions.rs:354:22 [INFO] [stdout] | [INFO] [stdout] 354 | let [area] = vertical.areas(a); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_area` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `px` is never read [INFO] [stdout] --> src/map.rs:246:17 [INFO] [stdout] | [INFO] [stdout] 246 | let mut px = 0; [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `py` is never read [INFO] [stdout] --> src/map.rs:247:17 [INFO] [stdout] | [INFO] [stdout] 247 | let mut py = 0; [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `area` [INFO] [stdout] --> src/gui/environment_interactions.rs:780:22 [INFO] [stdout] | [INFO] [stdout] 780 | let [area] = vertical.areas(a); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_area` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `area` [INFO] [stdout] --> src/gui/environment_interactions.rs:935:22 [INFO] [stdout] | [INFO] [stdout] 935 | let [area] = vertical.areas(a); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_area` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `in_h` [INFO] [stdout] --> src/gui.rs:93:9 [INFO] [stdout] | [INFO] [stdout] 93 | let in_h = inner_area.height as usize; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_in_h` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `in_w` [INFO] [stdout] --> src/gui.rs:94:9 [INFO] [stdout] | [INFO] [stdout] 94 | let in_w = inner_area.width as usize; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_in_w` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b` [INFO] [stdout] --> src/gui.rs:1301:21 [INFO] [stdout] | [INFO] [stdout] 1301 | let b = Block::bordered(); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `area` [INFO] [stdout] --> src/gui.rs:1306:26 [INFO] [stdout] | [INFO] [stdout] 1306 | let [area] = vertical.areas(a); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_area` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `env_col` [INFO] [stdout] --> src/gui_utils.rs:264:25 [INFO] [stdout] | [INFO] [stdout] 264 | let env_col = { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_env_col` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `px` is never read [INFO] [stdout] --> src/map.rs:246:17 [INFO] [stdout] | [INFO] [stdout] 246 | let mut px = 0; [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `py` is never read [INFO] [stdout] --> src/map.rs:247:17 [INFO] [stdout] | [INFO] [stdout] 247 | let mut py = 0; [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `env_inters` [INFO] [stdout] --> src/puzzle.rs:1036:32 [INFO] [stdout] | [INFO] [stdout] 1036 | let (map, npcs, items, env_inters) = make_ruin(); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_env_inters` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cells` [INFO] [stdout] --> src/settlement/guild_settle.rs:269:9 [INFO] [stdout] | [INFO] [stdout] 269 | let cells = vec![vec![Cells::Empty; 128]; 52]; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_cells` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `essential` [INFO] [stdout] --> src/settlement/med_settle.rs:103:9 [INFO] [stdout] | [INFO] [stdout] 103 | let essential = vec![ [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_essential` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/settlement/obsidian_settle.rs:248:9 [INFO] [stdout] | [INFO] [stdout] 248 | _ => todo!(), [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/settlement/obsidian_settle.rs:248:9 [INFO] [stdout] | [INFO] [stdout] 245 | true => OBSIDIAN_WALLS_BOTTOM, [INFO] [stdout] | ---- matches some of the same values [INFO] [stdout] 246 | false => OBSIDIAN_WALLS_BOTTOM, [INFO] [stdout] | ----- matches some of the same values [INFO] [stdout] 247 | // false => GUILD_WALLS_RIGHT, [INFO] [stdout] 248 | _ => todo!(), [INFO] [stdout] | ^ collectively making this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `npcs` [INFO] [stdout] --> src/settlement.rs:712:41 [INFO] [stdout] | [INFO] [stdout] 712 | pub fn demo_settle(pos: (i16, i16), npcs: HashMap<(usize, usize), NPCWrap>) -> Self { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_npcs` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `task` [INFO] [stdout] --> src/settlements.rs:137:37 [INFO] [stdout] | [INFO] [stdout] 137 | fn set_pass_item_content(&self, task: Task) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_task` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `task` [INFO] [stdout] --> src/settlements.rs:141:36 [INFO] [stdout] | [INFO] [stdout] 141 | fn set_pass_msg_content(&self, task: Task) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_task` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `res` [INFO] [stdout] --> src/gamestate/enemy_encounter.rs:114:29 [INFO] [stdout] | [INFO] [stdout] 114 | let res = self.enc_key(event.code); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `res` [INFO] [stdout] --> src/gamestate/enemy_encounter.rs:168:29 [INFO] [stdout] | [INFO] [stdout] 168 | let res = self.enc_key(event.code); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `turn` [INFO] [stdout] --> src/gamestate/enemy_encounter.rs:190:13 [INFO] [stdout] | [INFO] [stdout] 190 | let turn = self.enemy_turn(enemy.clone()); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_turn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `lturn` [INFO] [stdout] --> src/gamestate/enemy_encounter.rs:197:13 [INFO] [stdout] | [INFO] [stdout] 197 | let lturn = self.player.get_last_turn(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_lturn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `env_inters` [INFO] [stdout] --> src/puzzle.rs:1036:32 [INFO] [stdout] | [INFO] [stdout] 1036 | let (map, npcs, items, env_inters) = make_ruin(); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_env_inters` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cells` [INFO] [stdout] --> src/settlement/guild_settle.rs:269:9 [INFO] [stdout] | [INFO] [stdout] 269 | let cells = vec![vec![Cells::Empty; 128]; 52]; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_cells` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/gamestate/interactions.rs:84:13 [INFO] [stdout] | [INFO] [stdout] 84 | _ => todo!(), [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/gamestate/interactions.rs:84:13 [INFO] [stdout] | [INFO] [stdout] 75 | Interactable::Item(item) => { [INFO] [stdout] | ------------------------ matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 79 | Interactable::ShopItem(sitem) => {} [INFO] [stdout] | ----------------------------- matches some of the same values [INFO] [stdout] 80 | Interactable::Enemy(enemy) => {} [INFO] [stdout] | -------------------------- matches some of the same values [INFO] [stdout] 81 | Interactable::NPC(npc) => {} [INFO] [stdout] | ---------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 84 | _ => todo!(), [INFO] [stdout] | ^ ...and 2 other patterns collectively make this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `st` [INFO] [stdout] --> src/gamestate/interactions.rs:68:19 [INFO] [stdout] | [INFO] [stdout] 68 | let (pos, st) = self.gui.get_interactee(); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_st` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `sitem` [INFO] [stdout] --> src/gamestate/interactions.rs:79:36 [INFO] [stdout] | [INFO] [stdout] 79 | Interactable::ShopItem(sitem) => {} [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_sitem` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `enemy` [INFO] [stdout] --> src/gamestate/interactions.rs:80:33 [INFO] [stdout] | [INFO] [stdout] 80 | Interactable::Enemy(enemy) => {} [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_enemy` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `npc` [INFO] [stdout] --> src/gamestate/interactions.rs:81:31 [INFO] [stdout] | [INFO] [stdout] 81 | Interactable::NPC(npc) => {} [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_npc` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `env_inter` [INFO] [stdout] --> src/gamestate/interactions.rs:82:36 [INFO] [stdout] | [INFO] [stdout] 82 | Interactable::EnvInter(env_inter) => {} [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_env_inter` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `itm` [INFO] [stdout] --> src/gamestate/interactions.rs:90:21 [INFO] [stdout] | [INFO] [stdout] 90 | if let Some(itm) = self.items.remove(&(item.x, item.y)) {} [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_itm` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/gamestate/interactions.rs:189:13 [INFO] [stdout] | [INFO] [stdout] 189 | _ => todo!(), [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/gamestate/interactions.rs:189:13 [INFO] [stdout] | [INFO] [stdout] 180 | Interactable::Item(_) => self.item_interaction(), [INFO] [stdout] | --------------------- matches some of the same values [INFO] [stdout] 181 | Interactable::ShopItem(si) => self.shop_item_interaction(si), [INFO] [stdout] | -------------------------- matches some of the same values [INFO] [stdout] 182 | Interactable::NPC(_) => self.npc_interaction(), [INFO] [stdout] | -------------------- matches some of the same values [INFO] [stdout] 183 | Interactable::Enemy(e) => { [INFO] [stdout] | ---------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 189 | _ => todo!(), [INFO] [stdout] | ^ ...and 2 other patterns collectively make this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `essential` [INFO] [stdout] --> src/settlement/med_settle.rs:103:9 [INFO] [stdout] | [INFO] [stdout] 103 | let essential = vec![ [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_essential` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/settlement/obsidian_settle.rs:248:9 [INFO] [stdout] | [INFO] [stdout] 248 | _ => todo!(), [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/settlement/obsidian_settle.rs:248:9 [INFO] [stdout] | [INFO] [stdout] 245 | true => OBSIDIAN_WALLS_BOTTOM, [INFO] [stdout] | ---- matches some of the same values [INFO] [stdout] 246 | false => OBSIDIAN_WALLS_BOTTOM, [INFO] [stdout] | ----- matches some of the same values [INFO] [stdout] 247 | // false => GUILD_WALLS_RIGHT, [INFO] [stdout] 248 | _ => todo!(), [INFO] [stdout] | ^ collectively making this unreachable [INFO] [stdout] = note: `#[warn(unreachable_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/gamestate/locations.rs:181:13 [INFO] [stdout] | [INFO] [stdout] 181 | _ => false, [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/gamestate/locations.rs:181:13 [INFO] [stdout] | [INFO] [stdout] 165 | Location::Null => false, [INFO] [stdout] | -------------- matches some of the same values [INFO] [stdout] 166 | Location::Settlement(mut settle) => { [INFO] [stdout] | -------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 171 | Location::Puzzle(mut puzzle) => { [INFO] [stdout] | ---------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 176 | Location::Feature(puzzle) => { [INFO] [stdout] | ------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 181 | _ => false, [INFO] [stdout] | ^ collectively making this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `npcs` [INFO] [stdout] --> src/settlement.rs:712:41 [INFO] [stdout] | [INFO] [stdout] 712 | pub fn demo_settle(pos: (i16, i16), npcs: HashMap<(usize, usize), NPCWrap>) -> Self { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_npcs` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/gamestate/npc_interactions.rs:377:48 [INFO] [stdout] | [INFO] [stdout] 377 | Interactable::NPC(NPCWrap::ShopNPC(mut shop_npc)) => { [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `task` [INFO] [stdout] --> src/settlements.rs:137:37 [INFO] [stdout] | [INFO] [stdout] 137 | fn set_pass_item_content(&self, task: Task) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_task` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `task` [INFO] [stdout] --> src/settlements.rs:141:36 [INFO] [stdout] | [INFO] [stdout] 141 | fn set_pass_msg_content(&self, task: Task) { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_task` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/gamestate/settle_state.rs:28:42 [INFO] [stdout] | [INFO] [stdout] 28 | pub fn get_shop_from_item(&mut self, mut item: ShopItem) -> Shop { [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/gamestate/settle_state.rs:32:34 [INFO] [stdout] | [INFO] [stdout] 32 | Location::Settlement(mut settle) => match item { [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `lpos` [INFO] [stdout] --> src/gamestate/settle_state.rs:156:17 [INFO] [stdout] | [INFO] [stdout] 156 | let lpos = loc.get_pos(); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_lpos` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `rem` [INFO] [stdout] --> src/gamestate/settle_state.rs:158:17 [INFO] [stdout] | [INFO] [stdout] 158 | let rem = shop.stock.remove(&((ipos.0) as usize, (ipos.1) as usize)); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_rem` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/gamestate/settle_state.rs:129:13 [INFO] [stdout] | [INFO] [stdout] 129 | let mut sitem = { [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `buy_item` is never read [INFO] [stdout] --> src/gamestate/settle_state.rs:228:17 [INFO] [stdout] | [INFO] [stdout] 228 | let mut buy_item = false; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/gamestate/settle_state.rs:210:45 [INFO] [stdout] | [INFO] [stdout] 210 | pub fn shop_item_interaction(&mut self, mut sitem: ShopItem) -> bool { [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `l_rate` [INFO] [stdout] --> src/gamestate.rs:272:13 [INFO] [stdout] | [INFO] [stdout] 272 | let l_rate = 100 as u64; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_l_rate` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/gamestate.rs:329:13 [INFO] [stdout] | [INFO] [stdout] 329 | let mut tasks = Tasks::new(); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `res` [INFO] [stdout] --> src/gamestate/enemy_encounter.rs:114:29 [INFO] [stdout] | [INFO] [stdout] 114 | let res = self.enc_key(event.code); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `res` [INFO] [stdout] --> src/gamestate/enemy_encounter.rs:168:29 [INFO] [stdout] | [INFO] [stdout] 168 | let res = self.enc_key(event.code); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `day` [INFO] [stdout] --> src/gamestate.rs:526:13 [INFO] [stdout] | [INFO] [stdout] 526 | let day = self.stats.world_stats.date.day; [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_day` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `month` [INFO] [stdout] --> src/gamestate.rs:527:13 [INFO] [stdout] | [INFO] [stdout] 527 | let month = self.stats.world_stats.date.month; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_month` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `year` [INFO] [stdout] --> src/gamestate.rs:528:13 [INFO] [stdout] | [INFO] [stdout] 528 | let year = self.stats.world_stats.date.year; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_year` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `turn` [INFO] [stdout] --> src/gamestate/enemy_encounter.rs:190:13 [INFO] [stdout] | [INFO] [stdout] 190 | let turn = self.enemy_turn(enemy.clone()); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_turn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `lturn` [INFO] [stdout] --> src/gamestate/enemy_encounter.rs:197:13 [INFO] [stdout] | [INFO] [stdout] 197 | let lturn = self.player.get_last_turn(); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_lturn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `enums::TaskType` is more private than the item `EnvInter::Task::0` [INFO] [stdout] --> src/enums.rs:471:10 [INFO] [stdout] | [INFO] [stdout] 471 | Task(TaskType), [INFO] [stdout] | ^^^^^^^^ field `EnvInter::Task::0` is reachable at visibility `pub(crate)` [INFO] [stdout] | [INFO] [stdout] note: but type `enums::TaskType` is only usable at visibility `pub(self)` [INFO] [stdout] --> src/enums.rs:498:1 [INFO] [stdout] | [INFO] [stdout] 498 | enum TaskType { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(private_interfaces)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `guild_comms`, `guild_convos`, `cult_comms`, `cult_convos`, and `file_paths` are never read [INFO] [stdout] --> src/dialogue.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 26 | pub struct Dialogue { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 29 | pub guild_comms: CommDialogue, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 30 | pub guild_convos: ConvoDialogue, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 31 | pub cult_comms: CommDialogue, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 32 | pub cult_convos: ConvoDialogue, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 33 | pub file_paths: HashMap, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_guild_comm`, `get_cult_comm`, `get_guild_convo`, `get_cult_convo`, and `retrieve_new_dialogue` are never used [INFO] [stdout] --> src/dialogue.rs:191:12 [INFO] [stdout] | [INFO] [stdout] 140 | impl Dialogue { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 191 | pub fn get_guild_comm(&mut self) -> &String { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 218 | pub fn get_cult_comm(&mut self) -> &String { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 272 | pub fn get_guild_convo(&mut self) -> &Convo { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 299 | pub fn get_cult_convo(&mut self) -> &Convo { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 326 | pub fn retrieve_new_dialogue(&mut self) {} [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PALLETE` is never used [INFO] [stdout] --> src/enemy.rs:4:7 [INFO] [stdout] | [INFO] [stdout] 4 | const PALLETE: &str = "empty: ' . , ' * | wall: ▒ | other ▓ ░ ~ | pipes: ═ ║ ╣ ╠ ╩ ╦ ╗ ╝ ╚ ╔ ╬ ┐ └ ┴ ┬ ├ ─ ┼ ┘ ┌ ┤ │ ≡ ° × ¤ ¸ ¨ · ■ ¦ ... [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `set_pos`, and `inc_steps` are never used [INFO] [stdout] --> src/enemy.rs:25:12 [INFO] [stdout] | [INFO] [stdout] 24 | impl Enemy { [INFO] [stdout] | ---------- associated items in this implementation [INFO] [stdout] 25 | pub fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 329 | pub fn set_pos(&mut self, pos: (usize, usize)) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 349 | pub fn inc_steps(&mut self) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple variants are never constructed [INFO] [stdout] --> src/enums.rs:25:5 [INFO] [stdout] | [INFO] [stdout] 10 | pub enum Cells { [INFO] [stdout] | ----- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 25 | Moss, [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 63 | Tunnel, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 103 | Inter, [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 107 | Exup, [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 173 | NPCM, [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 179 | Enemy, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 180 | NPC, [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 186 | Herbalist, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Cells` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple variants are never constructed [INFO] [stdout] --> src/enums.rs:202:5 [INFO] [stdout] | [INFO] [stdout] 194 | pub enum Items { [INFO] [stdout] | ----- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 202 | WoodenBoard, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 203 | IronSword, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 211 | IronClaymore, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | SteelLongsword, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 217 | [INFO] [stdout] 218 | BronzeGreatsword, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 219 | IronGreatsword, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 220 | SteelGreatsword, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 223 | IronShortsword, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 224 | SteelShortsword, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 225 | [INFO] [stdout] 226 | BasicStaff, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 227 | PineStaff, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 228 | WoodStaff, [INFO] [stdout] 229 | MapleStaff, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 230 | OakStaff, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 235 | IronHeavyAxe, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 236 | SteelHeavyAxe, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 239 | IronLightAxe, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 240 | SteelLightAxe, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 243 | IronPickAxe, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 244 | SteelPickAxe, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 247 | IronPickHammer, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 248 | SteelPickHammer, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 249 | [INFO] [stdout] 250 | ShadowAxe, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 253 | IronWarAxe, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 257 | MediumArmour, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 258 | HeavyArmour, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 261 | LargeWoodShield, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 262 | IronShield, // +10 defence [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 263 | SteelShield, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Items` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Null` is never constructed [INFO] [stdout] --> src/enums.rs:298:5 [INFO] [stdout] | [INFO] [stdout] 293 | pub enum PlayerTraits { [INFO] [stdout] | ------------ variant in this enum [INFO] [stdout] ... [INFO] [stdout] 298 | Null, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PlayerTraits` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Luck`, `Trading`, `Navigation`, and `Herbalism` are never constructed [INFO] [stdout] --> src/enums.rs:311:5 [INFO] [stdout] | [INFO] [stdout] 307 | pub enum ExpType { [INFO] [stdout] | ------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 311 | Luck, [INFO] [stdout] | ^^^^ [INFO] [stdout] 312 | Trading, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 313 | Lockpicking, [INFO] [stdout] 314 | Navigation, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 315 | Herbalism, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ExpType` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Null` is never constructed [INFO] [stdout] --> src/enums.rs:328:5 [INFO] [stdout] | [INFO] [stdout] 319 | pub enum Plants { [INFO] [stdout] | ------ variant in this enum [INFO] [stdout] ... [INFO] [stdout] 328 | Null, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Plants` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Hands`, `Head`, `Torso`, and `Feet` are never constructed [INFO] [stdout] --> src/enums.rs:337:5 [INFO] [stdout] | [INFO] [stdout] 332 | pub enum Equip { [INFO] [stdout] | ----- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 337 | Hands, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 338 | Head, [INFO] [stdout] | ^^^^ [INFO] [stdout] 339 | Torso, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 340 | Feet, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Equip` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Null` is never constructed [INFO] [stdout] --> src/enums.rs:366:5 [INFO] [stdout] | [INFO] [stdout] 356 | pub enum Enemies { [INFO] [stdout] | ------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 366 | Null, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Enemies` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `QuestNPC` and `ShopNPC` are never constructed [INFO] [stdout] --> src/enums.rs:373:5 [INFO] [stdout] | [INFO] [stdout] 370 | pub enum NPCs { [INFO] [stdout] | ---- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 373 | QuestNPC, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 374 | ShopNPC, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `NPCs` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Null` is never constructed [INFO] [stdout] --> src/enums.rs:388:5 [INFO] [stdout] | [INFO] [stdout] 381 | pub enum NPCWrap { [INFO] [stdout] | ------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 388 | Null, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `NPCWrap` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Interact`, `NPC`, and `Fight` are never constructed [INFO] [stdout] --> src/enums.rs:403:5 [INFO] [stdout] | [INFO] [stdout] 400 | pub enum GUIMode { [INFO] [stdout] | ------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 403 | Interact, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 407 | NPC, [INFO] [stdout] | ^^^ [INFO] [stdout] 408 | Fight, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `GUIMode` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Menu` and `Null` are never constructed [INFO] [stdout] --> src/enums.rs:413:5 [INFO] [stdout] | [INFO] [stdout] 412 | pub enum GameMode { [INFO] [stdout] | -------- variants in this enum [INFO] [stdout] 413 | Menu, [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 418 | Null, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `GameMode` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Null` is never constructed [INFO] [stdout] --> src/enums.rs:434:5 [INFO] [stdout] | [INFO] [stdout] 430 | pub enum EncResult { [INFO] [stdout] | --------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 434 | Null, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `EncResult` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Feedback` is never constructed [INFO] [stdout] --> src/enums.rs:441:5 [INFO] [stdout] | [INFO] [stdout] 438 | pub enum InterSteps { [INFO] [stdout] | ---------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 441 | Feedback, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `InterSteps` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Message` is never constructed [INFO] [stdout] --> src/enums.rs:449:5 [INFO] [stdout] | [INFO] [stdout] 445 | pub enum FightSteps { [INFO] [stdout] | ---------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 449 | Message, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FightSteps` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Task` and `WoodenHatch` are never constructed [INFO] [stdout] --> src/enums.rs:471:5 [INFO] [stdout] | [INFO] [stdout] 464 | pub enum EnvInter { [INFO] [stdout] | -------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 471 | Task(TaskType), [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 477 | WoodenHatch, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `EnvInter` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `BoardStartEntity` is never constructed [INFO] [stdout] --> src/enums.rs:483:5 [INFO] [stdout] | [INFO] [stdout] 482 | pub enum TaskEnv { [INFO] [stdout] | ------- variant in this enum [INFO] [stdout] 483 | BoardStartEntity, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TaskEnv` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `HUnlocked` and `VUnlocked` are never constructed [INFO] [stdout] --> src/enums.rs:490:5 [INFO] [stdout] | [INFO] [stdout] 488 | pub enum Door { [INFO] [stdout] | ---- variants in this enum [INFO] [stdout] 489 | HOpen, [INFO] [stdout] 490 | HUnlocked, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 493 | VUnlocked, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Door` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Plot`, `RetrieveItem`, `PassMessage`, and `PassItem` are never constructed [INFO] [stdout] --> src/enums.rs:499:5 [INFO] [stdout] | [INFO] [stdout] 498 | enum TaskType { [INFO] [stdout] | -------- variants in this enum [INFO] [stdout] 499 | Plot, [INFO] [stdout] | ^^^^ [INFO] [stdout] 500 | RetrieveItem, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 501 | PassMessage, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 502 | PassItem, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TaskType` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Large` and `Null` are never constructed [INFO] [stdout] --> src/enums.rs:534:5 [INFO] [stdout] | [INFO] [stdout] 531 | pub enum Settle { [INFO] [stdout] | ------ variants in this enum [INFO] [stdout] ... [INFO] [stdout] 534 | Large, [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 537 | Null, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Settle` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Null` is never constructed [INFO] [stdout] --> src/enums.rs:545:5 [INFO] [stdout] | [INFO] [stdout] 541 | pub enum NodeType { [INFO] [stdout] | -------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 545 | Null, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `NodeType` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Guild`, `Church`, and `Clinic` are never constructed [INFO] [stdout] --> src/enums.rs:564:5 [INFO] [stdout] | [INFO] [stdout] 562 | pub enum ShopItem { [INFO] [stdout] | -------- variants in this enum [INFO] [stdout] 563 | Item(Item), [INFO] [stdout] 564 | Guild, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 565 | Church, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 566 | Clinic, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ShopItem` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `AbandonedSettlement` and `Null` are never constructed [INFO] [stdout] --> src/enums.rs:590:5 [INFO] [stdout] | [INFO] [stdout] 583 | pub enum FeatureType { [INFO] [stdout] | ----------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 590 | AbandonedSettlement, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 591 | Null, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FeatureType` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Teleport` and `Inverted` are never constructed [INFO] [stdout] --> src/enums.rs:604:5 [INFO] [stdout] | [INFO] [stdout] 601 | pub enum PuzzleType { [INFO] [stdout] | ---------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 604 | Teleport, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 605 | Inverted, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PuzzleType` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `DialogueTypes` is never used [INFO] [stdout] --> src/enums.rs:609:10 [INFO] [stdout] | [INFO] [stdout] 609 | pub enum DialogueTypes { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PALETTE` is never used [INFO] [stdout] --> src/features.rs:21:7 [INFO] [stdout] | [INFO] [stdout] 21 | const PALETTE: &str = r#" [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HERMIT_2` is never used [INFO] [stdout] --> src/features.rs:43:7 [INFO] [stdout] | [INFO] [stdout] 43 | const HERMIT_2: &str = r#" [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `feature_check` is never used [INFO] [stdout] --> src/features.rs:305:12 [INFO] [stdout] | [INFO] [stdout] 136 | impl Features { [INFO] [stdout] | ------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 305 | pub fn feature_check(&mut self, pos: (i16, i16)) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ABANDONED_SHACK_BLANK` is never used [INFO] [stdout] --> src/features/abandoned_shacks.rs:10:7 [INFO] [stdout] | [INFO] [stdout] 10 | const ABANDONED_SHACK_BLANK: &str = r#"Null|Null|BronzeWarAxe [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CONSTRUCTION_BLANK` is never used [INFO] [stdout] --> src/features/construction.rs:10:7 [INFO] [stdout] | [INFO] [stdout] 10 | const CONSTRUCTION_BLANK: &str = r#"Null|Null|Null [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `GRASS_PATCH_TRANS` is never used [INFO] [stdout] --> src/features/field.rs:23:7 [INFO] [stdout] | [INFO] [stdout] 23 | const GRASS_PATCH_TRANS: &str = r#" [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SMALL_RUIN_0` is never used [INFO] [stdout] --> src/features/ruin.rs:79:7 [INFO] [stdout] | [INFO] [stdout] 79 | const SMALL_RUIN_0: &str = r#" [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `STREAM` is never used [INFO] [stdout] --> src/features/streams.rs:9:7 [INFO] [stdout] | [INFO] [stdout] 9 | const STREAM: &str = r#" [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `inter_res_draw` is never used [INFO] [stdout] --> src/gui/gui_man_draw.rs:558:12 [INFO] [stdout] | [INFO] [stdout] 14 | impl GUI { [INFO] [stdout] | -------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 558 | pub fn inter_res_draw(&mut self, gui_args: &mut GuiArgs) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `npc_commdraw` is never used [INFO] [stdout] --> src/gui/npc_interactions.rs:22:12 [INFO] [stdout] | [INFO] [stdout] 21 | impl GUI { [INFO] [stdout] | -------- method in this implementation [INFO] [stdout] 22 | pub fn npc_commdraw(&mut self, comms: String, gui_args: &mut GuiArgs) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `CustomColors` is never used [INFO] [stdout] --> src/gui_utils.rs:21:10 [INFO] [stdout] | [INFO] [stdout] 21 | pub enum CustomColors { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `to_custom_color` is never used [INFO] [stdout] --> src/gui_utils.rs:41:12 [INFO] [stdout] | [INFO] [stdout] 40 | impl CustomColors { [INFO] [stdout] | ----------------- method in this implementation [INFO] [stdout] 41 | pub fn to_custom_color(&self) -> Color { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/item.rs:66:12 [INFO] [stdout] | [INFO] [stdout] 65 | impl Item { [INFO] [stdout] | --------- associated items in this implementation [INFO] [stdout] 66 | pub fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 351 | pub fn new_agility_potion(x: usize, y: usize) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 461 | pub fn new_iron_claymore(x: usize, y: usize) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 573 | pub fn new_bronze_greatsword(x: usize, y: usize) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 629 | pub fn new_basic_staff(x: usize, y: usize) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 853 | pub fn new_bronze_shadow_axe(x: usize, y: usize) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 938 | pub fn new_large_wood_shield(x: usize, y: usize) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 965 | pub fn new_iron_shield(x: usize, y: usize) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 992 | pub fn new_steel_shield(x: usize, y: usize) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1046 | pub fn new_medium_armour(x: usize, y: usize) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1073 | pub fn new_heavy_armour(x: usize, y: usize) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1412 | pub fn get_itype(&mut self) -> Items { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LSystem` is never constructed [INFO] [stdout] --> src/lsystems.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | struct LSystem { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `main_rules` is never used [INFO] [stdout] --> src/lsystems.rs:8:4 [INFO] [stdout] | [INFO] [stdout] 8 | fn main_rules (axiom: String) -> String { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `side_quests` is never used [INFO] [stdout] --> src/lsystems.rs:19:4 [INFO] [stdout] | [INFO] [stdout] 19 | fn side_quests (axiom: String) -> String { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `enemy_rules` is never used [INFO] [stdout] --> src/lsystems.rs:30:4 [INFO] [stdout] | [INFO] [stdout] 30 | fn enemy_rules (axiom: String) -> String { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `item_rules` is never used [INFO] [stdout] --> src/lsystems.rs:41:4 [INFO] [stdout] | [INFO] [stdout] 41 | fn item_rules (axiom: String) -> String { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LSystems` is never constructed [INFO] [stdout] --> src/lsystems.rs:52:12 [INFO] [stdout] | [INFO] [stdout] 52 | pub struct LSystems { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `process_enemies` are never used [INFO] [stdout] --> src/lsystems.rs:60:12 [INFO] [stdout] | [INFO] [stdout] 59 | impl LSystems { [INFO] [stdout] | ------------- associated items in this implementation [INFO] [stdout] 60 | pub fn new () -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 88 | fn process_enemies (&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `px`, `py`, and `dead_tunnels` are never read [INFO] [stdout] --> src/map.rs:20:9 [INFO] [stdout] | [INFO] [stdout] 17 | pub struct Map { [INFO] [stdout] | --- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 20 | pub px: usize, [INFO] [stdout] | ^^ [INFO] [stdout] 21 | pub py: usize, [INFO] [stdout] | ^^ [INFO] [stdout] 22 | pub tunnels: HashMap<(usize, usize), (usize, usize)>, [INFO] [stdout] 23 | pub dead_tunnels: HashMap<(usize, usize), (usize, usize)>, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Map` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `format_hashmap` is never used [INFO] [stdout] --> src/map.rs:35:4 [INFO] [stdout] | [INFO] [stdout] 35 | fn format_hashmap(hashmap: HashMap<(usize, usize), (usize, usize)>) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `map_to_string`, `replace_dead_tunnels`, and `center_player` are never used [INFO] [stdout] --> src/map.rs:352:8 [INFO] [stdout] | [INFO] [stdout] 43 | impl Map { [INFO] [stdout] | -------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 352 | fn map_to_string(&self, cells: &Vec>) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 705 | fn replace_dead_tunnels( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 784 | pub fn center_player(&mut self, x: usize, y: usize) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Quest` is never constructed [INFO] [stdout] --> src/notebook.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct Quest { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Stage` is never constructed [INFO] [stdout] --> src/notebook.rs:26:12 [INFO] [stdout] | [INFO] [stdout] 26 | pub struct Stage { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Place` is never constructed [INFO] [stdout] --> src/notebook.rs:41:12 [INFO] [stdout] | [INFO] [stdout] 41 | pub struct Place { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Person` is never constructed [INFO] [stdout] --> src/notebook.rs:58:12 [INFO] [stdout] | [INFO] [stdout] 58 | pub struct Person { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Lore` is never constructed [INFO] [stdout] --> src/notebook.rs:75:12 [INFO] [stdout] | [INFO] [stdout] 75 | pub struct Lore { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `enter_knowledge` is never used [INFO] [stdout] --> src/notebook.rs:117:12 [INFO] [stdout] | [INFO] [stdout] 107 | impl Notebook { [INFO] [stdout] | ------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 117 | pub fn enter_knowledge(&mut self, sname: String, snote: String) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_ptype` is never used [INFO] [stdout] --> src/npc.rs:504:12 [INFO] [stdout] | [INFO] [stdout] 482 | impl SpawnNPC { [INFO] [stdout] | ------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 504 | pub fn get_ptype(&mut self) -> PuzzleType { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TaskNPC` is never constructed [INFO] [stdout] --> src/npc.rs:580:12 [INFO] [stdout] | [INFO] [stdout] 580 | pub struct TaskNPC { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_reward`, `get_convo`, and `get_comms` are never used [INFO] [stdout] --> src/npc.rs:637:12 [INFO] [stdout] | [INFO] [stdout] 636 | impl TaskNPC { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] 637 | pub fn get_reward(&mut self) -> Item { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 641 | pub fn get_convo(&mut self) -> Convo { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 645 | pub fn get_comms(&mut self) -> Vec { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `shift_npc` is never used [INFO] [stdout] --> src/npc_utils.rs:128:8 [INFO] [stdout] | [INFO] [stdout] 128 | pub fn shift_npc(npc: NPCWrap, pos: (usize, usize)) -> NPCWrap { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `INVENTORY_MAX` is never used [INFO] [stdout] --> src/player.rs:9:7 [INFO] [stdout] | [INFO] [stdout] 9 | const INVENTORY_MAX: usize = 75; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `set_pos`, `inv_full`, `move_up`, `move_down`, `move_left`, and `move_right` are never used [INFO] [stdout] --> src/player.rs:57:12 [INFO] [stdout] | [INFO] [stdout] 29 | impl Player { [INFO] [stdout] | ----------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 57 | pub fn set_pos(&mut self, pos: (usize, usize)) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 156 | pub fn inv_full(&mut self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 188 | pub fn move_up(&mut self) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 192 | pub fn move_down(&mut self) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 196 | pub fn move_left(&mut self) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 200 | pub fn move_right(&mut self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `make_teleport_map` is never used [INFO] [stdout] --> src/puzzle.rs:82:4 [INFO] [stdout] | [INFO] [stdout] 82 | fn make_teleport_map() -> Vec> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `place_portals` is never used [INFO] [stdout] --> src/puzzle.rs:235:4 [INFO] [stdout] | [INFO] [stdout] 235 | fn place_portals(cells: Vec>) -> HashMap<(usize, usize), (usize, usize)> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUIN_ROOM_BLANK` is never used [INFO] [stdout] --> src/puzzle.rs:312:7 [INFO] [stdout] | [INFO] [stdout] 312 | const RUIN_ROOM_BLANK: &str = r#" [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PALETTE` is never used [INFO] [stdout] --> src/puzzle.rs:327:7 [INFO] [stdout] | [INFO] [stdout] 327 | const PALETTE: &str = r#" [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `new_teleport`, `set_pos`, and `get_map` are never used [INFO] [stdout] --> src/puzzle.rs:991:12 [INFO] [stdout] | [INFO] [stdout] 990 | impl Puzzle { [INFO] [stdout] | ----------- associated items in this implementation [INFO] [stdout] 991 | pub fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 1055 | pub fn new_teleport(pos: (i16, i16)) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1079 | pub fn set_pos(&mut self, tpos: (i16, i16)) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1083 | pub fn get_map(&mut self) -> Vec> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `spawn_new_puzzle`, and `puzzle_check` are never used [INFO] [stdout] --> src/puzzles.rs:16:12 [INFO] [stdout] | [INFO] [stdout] 15 | impl Puzzles { [INFO] [stdout] | ------------ associated items in this implementation [INFO] [stdout] 16 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 32 | pub fn spawn_new_puzzle(&mut self, pos: (i16, i16), ptype: PuzzleType) -> PuzzleType { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 100 | pub fn puzzle_check(&mut self, pos: (i16, i16)) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/settlement.rs:686:12 [INFO] [stdout] | [INFO] [stdout] 685 | impl Settlement { [INFO] [stdout] | --------------- associated items in this implementation [INFO] [stdout] 686 | pub fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 733 | pub fn new_small_settle(pos: (i16, i16)) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 856 | pub fn get_shop_from_item_pos(&mut self, pos: (i16, i16)) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 925 | pub fn set_pos(&mut self, tpos: (i16, i16)) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 945 | pub fn get_items_sent(&mut self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 949 | pub fn tog_items_sent(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 953 | pub fn get_shops(&mut self) -> HashMap { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 957 | pub fn get_map(&mut self) -> Vec> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Weapons`, `Armour`, and `Consignment` are never constructed [INFO] [stdout] --> src/settlement/med_settle.rs:87:5 [INFO] [stdout] | [INFO] [stdout] 78 | enum BlockType { [INFO] [stdout] | --------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 87 | Weapons, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 88 | Armour, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 89 | Consignment, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `OOBSIDIAN_WALLS_BOTTOM` is never used [INFO] [stdout] --> src/settlement/obsidian_settle.rs:188:7 [INFO] [stdout] | [INFO] [stdout] 188 | const OOBSIDIAN_WALLS_BOTTOM: &str = r#" [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `GRASS_PATCH` is never used [INFO] [stdout] --> src/settlement/settle_parts.rs:173:7 [INFO] [stdout] | [INFO] [stdout] 173 | const GRASS_PATCH: &str = r#" [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `OPEN_2` is never used [INFO] [stdout] --> src/settlement/settle_parts.rs:212:7 [INFO] [stdout] | [INFO] [stdout] 212 | const OPEN_2: &str = r#"CommNPC|Null|Null [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `WEAPONS_1` is never used [INFO] [stdout] --> src/settlement/settle_parts.rs:324:7 [INFO] [stdout] | [INFO] [stdout] 324 | const WEAPONS_1: &str = r#"CommNPC CommNPC CommNPC ShopNPC|HealthPotion HealthPotion HealthPotion Salve Salve Dowel WoodenBoard Apple App... [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ARMOUR_1` is never used [INFO] [stdout] --> src/settlement/settle_parts.rs:352:7 [INFO] [stdout] | [INFO] [stdout] 352 | const ARMOUR_1: &str = r#"CommNPC CommNPC CommNPC ShopNPC|HealthPotion HealthPotion HealthPotion Salve Salve Dowel WoodenBoard Apple Appl... [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PALETTE` is never used [INFO] [stdout] --> src/settlement/settle_parts.rs:396:7 [INFO] [stdout] | [INFO] [stdout] 396 | const PALETTE: &str = "empty: ' . , ' * | wall: ▒ | other ▓ ░ ~ | pipes: ═ ║ ╣ ╠ ╩ ╦ ╗ ╝ ╚ ╔ ╬ ┐ └ ┴ ┬ ├ ─ ┼ ┘ ┌ ┤ │ ≡ ° × ¤ ¸ ¨ · ■ ¦ ... [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `spawn_new_settlement`, `get_settle_pos`, `set_pass_item_content`, and `set_pass_msg_content` are never used [INFO] [stdout] --> src/settlements.rs:17:12 [INFO] [stdout] | [INFO] [stdout] 16 | impl Settlements { [INFO] [stdout] | ---------------- associated items in this implementation [INFO] [stdout] 17 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 51 | pub fn spawn_new_settlement(&mut self, cpos: (i16, i16)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 91 | pub fn get_settle_pos(&mut self) -> Vec<(i16, i16)> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 137 | fn set_pass_item_content(&self, task: Task) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 141 | fn set_pass_msg_content(&self, task: Task) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new_clinic`, `new_herbalist`, `get_npc`, and `get_paid` are never used [INFO] [stdout] --> src/shop.rs:73:12 [INFO] [stdout] | [INFO] [stdout] 30 | impl Shop { [INFO] [stdout] | --------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 73 | pub fn new_clinic( [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 87 | pub fn new_herbalist( [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 105 | pub fn get_npc(&self) -> ShopNPC { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 113 | pub fn get_paid(&mut self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `alignment` and `renown` are never read [INFO] [stdout] --> src/stats.rs:68:5 [INFO] [stdout] | [INFO] [stdout] 67 | pub struct PlayerStats { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] 68 | alignment: i8, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 69 | renown: u8, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `state_toggle` and `player_stats` are never read [INFO] [stdout] --> src/stats.rs:164:9 [INFO] [stdout] | [INFO] [stdout] 162 | pub struct Stats { [INFO] [stdout] | ----- fields in this struct [INFO] [stdout] 163 | pub world_stats: WorldStats, [INFO] [stdout] 164 | pub state_toggle: HashMap, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 165 | pub player_stats: PlayerStats, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Plot`, `PassMessage`, and `PassItem` are never constructed [INFO] [stdout] --> src/tasks.rs:80:5 [INFO] [stdout] | [INFO] [stdout] 79 | pub enum TaskType { [INFO] [stdout] | -------- variants in this enum [INFO] [stdout] 80 | Plot, [INFO] [stdout] | ^^^^ [INFO] [stdout] 81 | RetrieveItem, [INFO] [stdout] 82 | PassMessage, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 83 | PassItem, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TaskType` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `RetrieveItem` is never constructed [INFO] [stdout] --> src/tasks.rs:97:5 [INFO] [stdout] | [INFO] [stdout] 87 | pub enum Task { [INFO] [stdout] | ---- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 97 | RetrieveItem { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Task` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `place_enemies` is never used [INFO] [stdout] --> src/utils.rs:8:4 [INFO] [stdout] | [INFO] [stdout] 8 | fn place_enemies(map: Vec>) -> HashMap<(usize, usize), Enemy> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `gen_broken_range` is never used [INFO] [stdout] --> src/utils.rs:51:8 [INFO] [stdout] | [INFO] [stdout] 51 | pub fn gen_broken_range( [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `init_items` is never used [INFO] [stdout] --> src/utils.rs:71:8 [INFO] [stdout] | [INFO] [stdout] 71 | pub fn init_items( [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_dir` is never used [INFO] [stdout] --> src/utils.rs:193:8 [INFO] [stdout] | [INFO] [stdout] 193 | pub fn get_dir(vec: (i16, i16)) -> (i8, i8) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `nodemap`, `level`, `npc_comms`, `npc_convos`, `portal_cool`, and `loc_map` are never read [INFO] [stdout] --> src/gamestate.rs:59:5 [INFO] [stdout] | [INFO] [stdout] 54 | pub struct GameState { [INFO] [stdout] | --------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 59 | nodemap: NodeMap, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | level: u32, [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 84 | npc_comms: Vec, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 85 | npc_convos: Vec, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 94 | portal_cool: Instant, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 95 | loc_map: Option>>, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `new_loc_check` is never used [INFO] [stdout] --> src/gamestate/locations.rs:75:12 [INFO] [stdout] | [INFO] [stdout] 8 | impl GameState { [INFO] [stdout] | -------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 75 | pub fn new_loc_check(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `portal_shift` and `portal_check` are never used [INFO] [stdout] --> src/gamestate/puzzle_state.rs:47:8 [INFO] [stdout] | [INFO] [stdout] 20 | impl GameState { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 47 | fn portal_shift(&mut self, npos: (usize, usize), ppos: (usize, usize)) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 83 | pub fn portal_check(&mut self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&str` instead of cloning the inner type [INFO] [stdout] --> src/gui/npc_interactions.rs:292:45 [INFO] [stdout] | [INFO] [stdout] 292 | ... cell.clone(), [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(suspicious_double_ref_op)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&str` instead of cloning the inner type [INFO] [stdout] --> src/gui/npc_interactions.rs:297:52 [INFO] [stdout] | [INFO] [stdout] 297 | ... Cell::from(cell.clone()) [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/gui_utils.rs:63:24 [INFO] [stdout] | [INFO] [stdout] 63 | pub fn wrap_text(text: &str, max_width: usize) -> Text { [INFO] [stdout] | ^^^^ ---- the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 63 | pub fn wrap_text(text: &str, max_width: usize) -> Text<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/gamestate/interactions.rs:84:13 [INFO] [stdout] | [INFO] [stdout] 84 | _ => todo!(), [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/gamestate/interactions.rs:84:13 [INFO] [stdout] | [INFO] [stdout] 75 | Interactable::Item(item) => { [INFO] [stdout] | ------------------------ matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 79 | Interactable::ShopItem(sitem) => {} [INFO] [stdout] | ----------------------------- matches some of the same values [INFO] [stdout] 80 | Interactable::Enemy(enemy) => {} [INFO] [stdout] | -------------------------- matches some of the same values [INFO] [stdout] 81 | Interactable::NPC(npc) => {} [INFO] [stdout] | ---------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 84 | _ => todo!(), [INFO] [stdout] | ^ ...and 2 other patterns collectively make this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `st` [INFO] [stdout] --> src/gamestate/interactions.rs:68:19 [INFO] [stdout] | [INFO] [stdout] 68 | let (pos, st) = self.gui.get_interactee(); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_st` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `sitem` [INFO] [stdout] --> src/gamestate/interactions.rs:79:36 [INFO] [stdout] | [INFO] [stdout] 79 | Interactable::ShopItem(sitem) => {} [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_sitem` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `enemy` [INFO] [stdout] --> src/gamestate/interactions.rs:80:33 [INFO] [stdout] | [INFO] [stdout] 80 | Interactable::Enemy(enemy) => {} [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_enemy` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `npc` [INFO] [stdout] --> src/gamestate/interactions.rs:81:31 [INFO] [stdout] | [INFO] [stdout] 81 | Interactable::NPC(npc) => {} [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_npc` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `env_inter` [INFO] [stdout] --> src/gamestate/interactions.rs:82:36 [INFO] [stdout] | [INFO] [stdout] 82 | Interactable::EnvInter(env_inter) => {} [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_env_inter` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `itm` [INFO] [stdout] --> src/gamestate/interactions.rs:90:21 [INFO] [stdout] | [INFO] [stdout] 90 | if let Some(itm) = self.items.remove(&(item.x, item.y)) {} [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_itm` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/gamestate/interactions.rs:189:13 [INFO] [stdout] | [INFO] [stdout] 189 | _ => todo!(), [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/gamestate/interactions.rs:189:13 [INFO] [stdout] | [INFO] [stdout] 180 | Interactable::Item(_) => self.item_interaction(), [INFO] [stdout] | --------------------- matches some of the same values [INFO] [stdout] 181 | Interactable::ShopItem(si) => self.shop_item_interaction(si), [INFO] [stdout] | -------------------------- matches some of the same values [INFO] [stdout] 182 | Interactable::NPC(_) => self.npc_interaction(), [INFO] [stdout] | -------------------- matches some of the same values [INFO] [stdout] 183 | Interactable::Enemy(e) => { [INFO] [stdout] | ---------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 189 | _ => todo!(), [INFO] [stdout] | ^ ...and 2 other patterns collectively make this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/gamestate.rs:499:9 [INFO] [stdout] | [INFO] [stdout] 499 | sfile.write_all(json.as_bytes()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 499 | let _ = sfile.write_all(json.as_bytes()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/gamestate.rs:505:9 [INFO] [stdout] | [INFO] [stdout] 505 | writeln!(nfile, "{}", filename.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 505 | let _ = writeln!(nfile, "{}", filename.clone()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable pattern [INFO] [stdout] --> src/gamestate/locations.rs:181:13 [INFO] [stdout] | [INFO] [stdout] 181 | _ => false, [INFO] [stdout] | ^ no value can reach this [INFO] [stdout] | [INFO] [stdout] note: multiple earlier patterns match some of the same values [INFO] [stdout] --> src/gamestate/locations.rs:181:13 [INFO] [stdout] | [INFO] [stdout] 165 | Location::Null => false, [INFO] [stdout] | -------------- matches some of the same values [INFO] [stdout] 166 | Location::Settlement(mut settle) => { [INFO] [stdout] | -------------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 171 | Location::Puzzle(mut puzzle) => { [INFO] [stdout] | ---------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 176 | Location::Feature(puzzle) => { [INFO] [stdout] | ------------------------- matches some of the same values [INFO] [stdout] ... [INFO] [stdout] 181 | _ => false, [INFO] [stdout] | ^ collectively making this unreachable [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/gamestate/npc_interactions.rs:377:48 [INFO] [stdout] | [INFO] [stdout] 377 | Interactable::NPC(NPCWrap::ShopNPC(mut shop_npc)) => { [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/gamestate/settle_state.rs:28:42 [INFO] [stdout] | [INFO] [stdout] 28 | pub fn get_shop_from_item(&mut self, mut item: ShopItem) -> Shop { [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/gamestate/settle_state.rs:32:34 [INFO] [stdout] | [INFO] [stdout] 32 | Location::Settlement(mut settle) => match item { [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `lpos` [INFO] [stdout] --> src/gamestate/settle_state.rs:156:17 [INFO] [stdout] | [INFO] [stdout] 156 | let lpos = loc.get_pos(); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_lpos` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `rem` [INFO] [stdout] --> src/gamestate/settle_state.rs:158:17 [INFO] [stdout] | [INFO] [stdout] 158 | let rem = shop.stock.remove(&((ipos.0) as usize, (ipos.1) as usize)); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_rem` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/gamestate/settle_state.rs:129:13 [INFO] [stdout] | [INFO] [stdout] 129 | let mut sitem = { [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `buy_item` is never read [INFO] [stdout] --> src/gamestate/settle_state.rs:228:17 [INFO] [stdout] | [INFO] [stdout] 228 | let mut buy_item = false; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/gamestate/settle_state.rs:210:45 [INFO] [stdout] | [INFO] [stdout] 210 | pub fn shop_item_interaction(&mut self, mut sitem: ShopItem) -> bool { [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `l_rate` [INFO] [stdout] --> src/gamestate.rs:272:13 [INFO] [stdout] | [INFO] [stdout] 272 | let l_rate = 100 as u64; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_l_rate` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/gamestate.rs:329:13 [INFO] [stdout] | [INFO] [stdout] 329 | let mut tasks = Tasks::new(); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `day` [INFO] [stdout] --> src/gamestate.rs:526:13 [INFO] [stdout] | [INFO] [stdout] 526 | let day = self.stats.world_stats.date.day; [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_day` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `month` [INFO] [stdout] --> src/gamestate.rs:527:13 [INFO] [stdout] | [INFO] [stdout] 527 | let month = self.stats.world_stats.date.month; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_month` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `year` [INFO] [stdout] --> src/gamestate.rs:528:13 [INFO] [stdout] | [INFO] [stdout] 528 | let year = self.stats.world_stats.date.year; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_year` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `enums::TaskType` is more private than the item `EnvInter::Task::0` [INFO] [stdout] --> src/enums.rs:471:10 [INFO] [stdout] | [INFO] [stdout] 471 | Task(TaskType), [INFO] [stdout] | ^^^^^^^^ field `EnvInter::Task::0` is reachable at visibility `pub(crate)` [INFO] [stdout] | [INFO] [stdout] note: but type `enums::TaskType` is only usable at visibility `pub(self)` [INFO] [stdout] --> src/enums.rs:498:1 [INFO] [stdout] | [INFO] [stdout] 498 | enum TaskType { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(private_interfaces)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `guild_comms`, `guild_convos`, `cult_comms`, `cult_convos`, and `file_paths` are never read [INFO] [stdout] --> src/dialogue.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 26 | pub struct Dialogue { [INFO] [stdout] | -------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 29 | pub guild_comms: CommDialogue, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 30 | pub guild_convos: ConvoDialogue, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 31 | pub cult_comms: CommDialogue, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 32 | pub cult_convos: ConvoDialogue, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 33 | pub file_paths: HashMap, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_guild_comm`, `get_cult_comm`, `get_guild_convo`, `get_cult_convo`, and `retrieve_new_dialogue` are never used [INFO] [stdout] --> src/dialogue.rs:191:12 [INFO] [stdout] | [INFO] [stdout] 140 | impl Dialogue { [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 191 | pub fn get_guild_comm(&mut self) -> &String { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 218 | pub fn get_cult_comm(&mut self) -> &String { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 272 | pub fn get_guild_convo(&mut self) -> &Convo { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 299 | pub fn get_cult_convo(&mut self) -> &Convo { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 326 | pub fn retrieve_new_dialogue(&mut self) {} [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PALLETE` is never used [INFO] [stdout] --> src/enemy.rs:4:7 [INFO] [stdout] | [INFO] [stdout] 4 | const PALLETE: &str = "empty: ' . , ' * | wall: ▒ | other ▓ ░ ~ | pipes: ═ ║ ╣ ╠ ╩ ╦ ╗ ╝ ╚ ╔ ╬ ┐ └ ┴ ┬ ├ ─ ┼ ┘ ┌ ┤ │ ≡ ° × ¤ ¸ ¨ · ■ ¦ ... [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `set_pos`, and `inc_steps` are never used [INFO] [stdout] --> src/enemy.rs:25:12 [INFO] [stdout] | [INFO] [stdout] 24 | impl Enemy { [INFO] [stdout] | ---------- associated items in this implementation [INFO] [stdout] 25 | pub fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 329 | pub fn set_pos(&mut self, pos: (usize, usize)) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 349 | pub fn inc_steps(&mut self) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple variants are never constructed [INFO] [stdout] --> src/enums.rs:25:5 [INFO] [stdout] | [INFO] [stdout] 10 | pub enum Cells { [INFO] [stdout] | ----- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 25 | Moss, [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 63 | Tunnel, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 103 | Inter, [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 107 | Exup, [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 173 | NPCM, [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 179 | Enemy, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 180 | NPC, [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 186 | Herbalist, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Cells` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple variants are never constructed [INFO] [stdout] --> src/enums.rs:202:5 [INFO] [stdout] | [INFO] [stdout] 194 | pub enum Items { [INFO] [stdout] | ----- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 202 | WoodenBoard, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 203 | IronSword, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 211 | IronClaymore, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | SteelLongsword, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 217 | [INFO] [stdout] 218 | BronzeGreatsword, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] 219 | IronGreatsword, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 220 | SteelGreatsword, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 223 | IronShortsword, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 224 | SteelShortsword, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 225 | [INFO] [stdout] 226 | BasicStaff, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 227 | PineStaff, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 228 | WoodStaff, [INFO] [stdout] 229 | MapleStaff, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 230 | OakStaff, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 235 | IronHeavyAxe, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 236 | SteelHeavyAxe, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 239 | IronLightAxe, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 240 | SteelLightAxe, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 243 | IronPickAxe, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 244 | SteelPickAxe, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 247 | IronPickHammer, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 248 | SteelPickHammer, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 249 | [INFO] [stdout] 250 | ShadowAxe, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 253 | IronWarAxe, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 257 | MediumArmour, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 258 | HeavyArmour, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 261 | LargeWoodShield, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 262 | IronShield, // +10 defence [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 263 | SteelShield, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Items` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Null` is never constructed [INFO] [stdout] --> src/enums.rs:298:5 [INFO] [stdout] | [INFO] [stdout] 293 | pub enum PlayerTraits { [INFO] [stdout] | ------------ variant in this enum [INFO] [stdout] ... [INFO] [stdout] 298 | Null, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PlayerTraits` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Luck`, `Trading`, `Navigation`, and `Herbalism` are never constructed [INFO] [stdout] --> src/enums.rs:311:5 [INFO] [stdout] | [INFO] [stdout] 307 | pub enum ExpType { [INFO] [stdout] | ------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 311 | Luck, [INFO] [stdout] | ^^^^ [INFO] [stdout] 312 | Trading, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 313 | Lockpicking, [INFO] [stdout] 314 | Navigation, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 315 | Herbalism, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ExpType` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Null` is never constructed [INFO] [stdout] --> src/enums.rs:328:5 [INFO] [stdout] | [INFO] [stdout] 319 | pub enum Plants { [INFO] [stdout] | ------ variant in this enum [INFO] [stdout] ... [INFO] [stdout] 328 | Null, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Plants` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Hands`, `Head`, `Torso`, and `Feet` are never constructed [INFO] [stdout] --> src/enums.rs:337:5 [INFO] [stdout] | [INFO] [stdout] 332 | pub enum Equip { [INFO] [stdout] | ----- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 337 | Hands, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 338 | Head, [INFO] [stdout] | ^^^^ [INFO] [stdout] 339 | Torso, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 340 | Feet, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Equip` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Null` is never constructed [INFO] [stdout] --> src/enums.rs:366:5 [INFO] [stdout] | [INFO] [stdout] 356 | pub enum Enemies { [INFO] [stdout] | ------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 366 | Null, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Enemies` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `QuestNPC` and `ShopNPC` are never constructed [INFO] [stdout] --> src/enums.rs:373:5 [INFO] [stdout] | [INFO] [stdout] 370 | pub enum NPCs { [INFO] [stdout] | ---- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 373 | QuestNPC, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 374 | ShopNPC, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `NPCs` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Null` is never constructed [INFO] [stdout] --> src/enums.rs:388:5 [INFO] [stdout] | [INFO] [stdout] 381 | pub enum NPCWrap { [INFO] [stdout] | ------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 388 | Null, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `NPCWrap` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Interact`, `NPC`, and `Fight` are never constructed [INFO] [stdout] --> src/enums.rs:403:5 [INFO] [stdout] | [INFO] [stdout] 400 | pub enum GUIMode { [INFO] [stdout] | ------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 403 | Interact, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 407 | NPC, [INFO] [stdout] | ^^^ [INFO] [stdout] 408 | Fight, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `GUIMode` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Menu` and `Null` are never constructed [INFO] [stdout] --> src/enums.rs:413:5 [INFO] [stdout] | [INFO] [stdout] 412 | pub enum GameMode { [INFO] [stdout] | -------- variants in this enum [INFO] [stdout] 413 | Menu, [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 418 | Null, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `GameMode` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Null` is never constructed [INFO] [stdout] --> src/enums.rs:434:5 [INFO] [stdout] | [INFO] [stdout] 430 | pub enum EncResult { [INFO] [stdout] | --------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 434 | Null, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `EncResult` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Feedback` is never constructed [INFO] [stdout] --> src/enums.rs:441:5 [INFO] [stdout] | [INFO] [stdout] 438 | pub enum InterSteps { [INFO] [stdout] | ---------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 441 | Feedback, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `InterSteps` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Message` is never constructed [INFO] [stdout] --> src/enums.rs:449:5 [INFO] [stdout] | [INFO] [stdout] 445 | pub enum FightSteps { [INFO] [stdout] | ---------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 449 | Message, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FightSteps` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Task` and `WoodenHatch` are never constructed [INFO] [stdout] --> src/enums.rs:471:5 [INFO] [stdout] | [INFO] [stdout] 464 | pub enum EnvInter { [INFO] [stdout] | -------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 471 | Task(TaskType), [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 477 | WoodenHatch, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `EnvInter` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `BoardStartEntity` is never constructed [INFO] [stdout] --> src/enums.rs:483:5 [INFO] [stdout] | [INFO] [stdout] 482 | pub enum TaskEnv { [INFO] [stdout] | ------- variant in this enum [INFO] [stdout] 483 | BoardStartEntity, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TaskEnv` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `HUnlocked` and `VUnlocked` are never constructed [INFO] [stdout] --> src/enums.rs:490:5 [INFO] [stdout] | [INFO] [stdout] 488 | pub enum Door { [INFO] [stdout] | ---- variants in this enum [INFO] [stdout] 489 | HOpen, [INFO] [stdout] 490 | HUnlocked, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 493 | VUnlocked, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Door` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Plot`, `RetrieveItem`, `PassMessage`, and `PassItem` are never constructed [INFO] [stdout] --> src/enums.rs:499:5 [INFO] [stdout] | [INFO] [stdout] 498 | enum TaskType { [INFO] [stdout] | -------- variants in this enum [INFO] [stdout] 499 | Plot, [INFO] [stdout] | ^^^^ [INFO] [stdout] 500 | RetrieveItem, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 501 | PassMessage, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 502 | PassItem, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TaskType` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Large` and `Null` are never constructed [INFO] [stdout] --> src/enums.rs:534:5 [INFO] [stdout] | [INFO] [stdout] 531 | pub enum Settle { [INFO] [stdout] | ------ variants in this enum [INFO] [stdout] ... [INFO] [stdout] 534 | Large, [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 537 | Null, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Settle` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Null` is never constructed [INFO] [stdout] --> src/enums.rs:545:5 [INFO] [stdout] | [INFO] [stdout] 541 | pub enum NodeType { [INFO] [stdout] | -------- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 545 | Null, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `NodeType` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Guild`, `Church`, and `Clinic` are never constructed [INFO] [stdout] --> src/enums.rs:564:5 [INFO] [stdout] | [INFO] [stdout] 562 | pub enum ShopItem { [INFO] [stdout] | -------- variants in this enum [INFO] [stdout] 563 | Item(Item), [INFO] [stdout] 564 | Guild, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 565 | Church, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 566 | Clinic, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ShopItem` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `AbandonedSettlement` and `Null` are never constructed [INFO] [stdout] --> src/enums.rs:590:5 [INFO] [stdout] | [INFO] [stdout] 583 | pub enum FeatureType { [INFO] [stdout] | ----------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 590 | AbandonedSettlement, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 591 | Null, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FeatureType` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Teleport` and `Inverted` are never constructed [INFO] [stdout] --> src/enums.rs:604:5 [INFO] [stdout] | [INFO] [stdout] 601 | pub enum PuzzleType { [INFO] [stdout] | ---------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 604 | Teleport, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 605 | Inverted, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PuzzleType` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `DialogueTypes` is never used [INFO] [stdout] --> src/enums.rs:609:10 [INFO] [stdout] | [INFO] [stdout] 609 | pub enum DialogueTypes { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PALETTE` is never used [INFO] [stdout] --> src/features.rs:21:7 [INFO] [stdout] | [INFO] [stdout] 21 | const PALETTE: &str = r#" [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HERMIT_2` is never used [INFO] [stdout] --> src/features.rs:43:7 [INFO] [stdout] | [INFO] [stdout] 43 | const HERMIT_2: &str = r#" [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `feature_check` is never used [INFO] [stdout] --> src/features.rs:305:12 [INFO] [stdout] | [INFO] [stdout] 136 | impl Features { [INFO] [stdout] | ------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 305 | pub fn feature_check(&mut self, pos: (i16, i16)) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ABANDONED_SHACK_BLANK` is never used [INFO] [stdout] --> src/features/abandoned_shacks.rs:10:7 [INFO] [stdout] | [INFO] [stdout] 10 | const ABANDONED_SHACK_BLANK: &str = r#"Null|Null|BronzeWarAxe [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CONSTRUCTION_BLANK` is never used [INFO] [stdout] --> src/features/construction.rs:10:7 [INFO] [stdout] | [INFO] [stdout] 10 | const CONSTRUCTION_BLANK: &str = r#"Null|Null|Null [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `GRASS_PATCH_TRANS` is never used [INFO] [stdout] --> src/features/field.rs:23:7 [INFO] [stdout] | [INFO] [stdout] 23 | const GRASS_PATCH_TRANS: &str = r#" [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SMALL_RUIN_0` is never used [INFO] [stdout] --> src/features/ruin.rs:79:7 [INFO] [stdout] | [INFO] [stdout] 79 | const SMALL_RUIN_0: &str = r#" [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `STREAM` is never used [INFO] [stdout] --> src/features/streams.rs:9:7 [INFO] [stdout] | [INFO] [stdout] 9 | const STREAM: &str = r#" [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `inter_res_draw` is never used [INFO] [stdout] --> src/gui/gui_man_draw.rs:558:12 [INFO] [stdout] | [INFO] [stdout] 14 | impl GUI { [INFO] [stdout] | -------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 558 | pub fn inter_res_draw(&mut self, gui_args: &mut GuiArgs) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `npc_commdraw` is never used [INFO] [stdout] --> src/gui/npc_interactions.rs:22:12 [INFO] [stdout] | [INFO] [stdout] 21 | impl GUI { [INFO] [stdout] | -------- method in this implementation [INFO] [stdout] 22 | pub fn npc_commdraw(&mut self, comms: String, gui_args: &mut GuiArgs) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `CustomColors` is never used [INFO] [stdout] --> src/gui_utils.rs:21:10 [INFO] [stdout] | [INFO] [stdout] 21 | pub enum CustomColors { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `to_custom_color` is never used [INFO] [stdout] --> src/gui_utils.rs:41:12 [INFO] [stdout] | [INFO] [stdout] 40 | impl CustomColors { [INFO] [stdout] | ----------------- method in this implementation [INFO] [stdout] 41 | pub fn to_custom_color(&self) -> Color { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/item.rs:66:12 [INFO] [stdout] | [INFO] [stdout] 65 | impl Item { [INFO] [stdout] | --------- associated items in this implementation [INFO] [stdout] 66 | pub fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 351 | pub fn new_agility_potion(x: usize, y: usize) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 461 | pub fn new_iron_claymore(x: usize, y: usize) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 573 | pub fn new_bronze_greatsword(x: usize, y: usize) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 629 | pub fn new_basic_staff(x: usize, y: usize) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 853 | pub fn new_bronze_shadow_axe(x: usize, y: usize) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 938 | pub fn new_large_wood_shield(x: usize, y: usize) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 965 | pub fn new_iron_shield(x: usize, y: usize) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 992 | pub fn new_steel_shield(x: usize, y: usize) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1046 | pub fn new_medium_armour(x: usize, y: usize) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1073 | pub fn new_heavy_armour(x: usize, y: usize) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1412 | pub fn get_itype(&mut self) -> Items { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LSystem` is never constructed [INFO] [stdout] --> src/lsystems.rs:3:8 [INFO] [stdout] | [INFO] [stdout] 3 | struct LSystem { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `main_rules` is never used [INFO] [stdout] --> src/lsystems.rs:8:4 [INFO] [stdout] | [INFO] [stdout] 8 | fn main_rules (axiom: String) -> String { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `side_quests` is never used [INFO] [stdout] --> src/lsystems.rs:19:4 [INFO] [stdout] | [INFO] [stdout] 19 | fn side_quests (axiom: String) -> String { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `enemy_rules` is never used [INFO] [stdout] --> src/lsystems.rs:30:4 [INFO] [stdout] | [INFO] [stdout] 30 | fn enemy_rules (axiom: String) -> String { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `item_rules` is never used [INFO] [stdout] --> src/lsystems.rs:41:4 [INFO] [stdout] | [INFO] [stdout] 41 | fn item_rules (axiom: String) -> String { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LSystems` is never constructed [INFO] [stdout] --> src/lsystems.rs:52:12 [INFO] [stdout] | [INFO] [stdout] 52 | pub struct LSystems { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `process_enemies` are never used [INFO] [stdout] --> src/lsystems.rs:60:12 [INFO] [stdout] | [INFO] [stdout] 59 | impl LSystems { [INFO] [stdout] | ------------- associated items in this implementation [INFO] [stdout] 60 | pub fn new () -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 88 | fn process_enemies (&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `px`, `py`, and `dead_tunnels` are never read [INFO] [stdout] --> src/map.rs:20:9 [INFO] [stdout] | [INFO] [stdout] 17 | pub struct Map { [INFO] [stdout] | --- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 20 | pub px: usize, [INFO] [stdout] | ^^ [INFO] [stdout] 21 | pub py: usize, [INFO] [stdout] | ^^ [INFO] [stdout] 22 | pub tunnels: HashMap<(usize, usize), (usize, usize)>, [INFO] [stdout] 23 | pub dead_tunnels: HashMap<(usize, usize), (usize, usize)>, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Map` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `format_hashmap` is never used [INFO] [stdout] --> src/map.rs:35:4 [INFO] [stdout] | [INFO] [stdout] 35 | fn format_hashmap(hashmap: HashMap<(usize, usize), (usize, usize)>) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `map_to_string`, `replace_dead_tunnels`, and `center_player` are never used [INFO] [stdout] --> src/map.rs:352:8 [INFO] [stdout] | [INFO] [stdout] 43 | impl Map { [INFO] [stdout] | -------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 352 | fn map_to_string(&self, cells: &Vec>) -> String { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 705 | fn replace_dead_tunnels( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 784 | pub fn center_player(&mut self, x: usize, y: usize) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Quest` is never constructed [INFO] [stdout] --> src/notebook.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct Quest { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Stage` is never constructed [INFO] [stdout] --> src/notebook.rs:26:12 [INFO] [stdout] | [INFO] [stdout] 26 | pub struct Stage { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Place` is never constructed [INFO] [stdout] --> src/notebook.rs:41:12 [INFO] [stdout] | [INFO] [stdout] 41 | pub struct Place { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Person` is never constructed [INFO] [stdout] --> src/notebook.rs:58:12 [INFO] [stdout] | [INFO] [stdout] 58 | pub struct Person { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Lore` is never constructed [INFO] [stdout] --> src/notebook.rs:75:12 [INFO] [stdout] | [INFO] [stdout] 75 | pub struct Lore { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `enter_knowledge` is never used [INFO] [stdout] --> src/notebook.rs:117:12 [INFO] [stdout] | [INFO] [stdout] 107 | impl Notebook { [INFO] [stdout] | ------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 117 | pub fn enter_knowledge(&mut self, sname: String, snote: String) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_ptype` is never used [INFO] [stdout] --> src/npc.rs:504:12 [INFO] [stdout] | [INFO] [stdout] 482 | impl SpawnNPC { [INFO] [stdout] | ------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 504 | pub fn get_ptype(&mut self) -> PuzzleType { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TaskNPC` is never constructed [INFO] [stdout] --> src/npc.rs:580:12 [INFO] [stdout] | [INFO] [stdout] 580 | pub struct TaskNPC { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get_reward`, `get_convo`, and `get_comms` are never used [INFO] [stdout] --> src/npc.rs:637:12 [INFO] [stdout] | [INFO] [stdout] 636 | impl TaskNPC { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] 637 | pub fn get_reward(&mut self) -> Item { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 641 | pub fn get_convo(&mut self) -> Convo { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 645 | pub fn get_comms(&mut self) -> Vec { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `shift_npc` is never used [INFO] [stdout] --> src/npc_utils.rs:128:8 [INFO] [stdout] | [INFO] [stdout] 128 | pub fn shift_npc(npc: NPCWrap, pos: (usize, usize)) -> NPCWrap { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `INVENTORY_MAX` is never used [INFO] [stdout] --> src/player.rs:9:7 [INFO] [stdout] | [INFO] [stdout] 9 | const INVENTORY_MAX: usize = 75; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `set_pos`, `inv_full`, `move_up`, `move_down`, `move_left`, and `move_right` are never used [INFO] [stdout] --> src/player.rs:57:12 [INFO] [stdout] | [INFO] [stdout] 29 | impl Player { [INFO] [stdout] | ----------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 57 | pub fn set_pos(&mut self, pos: (usize, usize)) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 156 | pub fn inv_full(&mut self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 188 | pub fn move_up(&mut self) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 192 | pub fn move_down(&mut self) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 196 | pub fn move_left(&mut self) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 200 | pub fn move_right(&mut self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `make_teleport_map` is never used [INFO] [stdout] --> src/puzzle.rs:82:4 [INFO] [stdout] | [INFO] [stdout] 82 | fn make_teleport_map() -> Vec> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `place_portals` is never used [INFO] [stdout] --> src/puzzle.rs:235:4 [INFO] [stdout] | [INFO] [stdout] 235 | fn place_portals(cells: Vec>) -> HashMap<(usize, usize), (usize, usize)> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RUIN_ROOM_BLANK` is never used [INFO] [stdout] --> src/puzzle.rs:312:7 [INFO] [stdout] | [INFO] [stdout] 312 | const RUIN_ROOM_BLANK: &str = r#" [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PALETTE` is never used [INFO] [stdout] --> src/puzzle.rs:327:7 [INFO] [stdout] | [INFO] [stdout] 327 | const PALETTE: &str = r#" [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `new_teleport`, `set_pos`, and `get_map` are never used [INFO] [stdout] --> src/puzzle.rs:991:12 [INFO] [stdout] | [INFO] [stdout] 990 | impl Puzzle { [INFO] [stdout] | ----------- associated items in this implementation [INFO] [stdout] 991 | pub fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 1055 | pub fn new_teleport(pos: (i16, i16)) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1079 | pub fn set_pos(&mut self, tpos: (i16, i16)) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1083 | pub fn get_map(&mut self) -> Vec> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `spawn_new_puzzle`, and `puzzle_check` are never used [INFO] [stdout] --> src/puzzles.rs:16:12 [INFO] [stdout] | [INFO] [stdout] 15 | impl Puzzles { [INFO] [stdout] | ------------ associated items in this implementation [INFO] [stdout] 16 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 32 | pub fn spawn_new_puzzle(&mut self, pos: (i16, i16), ptype: PuzzleType) -> PuzzleType { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 100 | pub fn puzzle_check(&mut self, pos: (i16, i16)) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/settlement.rs:686:12 [INFO] [stdout] | [INFO] [stdout] 685 | impl Settlement { [INFO] [stdout] | --------------- associated items in this implementation [INFO] [stdout] 686 | pub fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 733 | pub fn new_small_settle(pos: (i16, i16)) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 856 | pub fn get_shop_from_item_pos(&mut self, pos: (i16, i16)) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 925 | pub fn set_pos(&mut self, tpos: (i16, i16)) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 945 | pub fn get_items_sent(&mut self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 949 | pub fn tog_items_sent(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 953 | pub fn get_shops(&mut self) -> HashMap { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 957 | pub fn get_map(&mut self) -> Vec> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Weapons`, `Armour`, and `Consignment` are never constructed [INFO] [stdout] --> src/settlement/med_settle.rs:87:5 [INFO] [stdout] | [INFO] [stdout] 78 | enum BlockType { [INFO] [stdout] | --------- variants in this enum [INFO] [stdout] ... [INFO] [stdout] 87 | Weapons, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 88 | Armour, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 89 | Consignment, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `OOBSIDIAN_WALLS_BOTTOM` is never used [INFO] [stdout] --> src/settlement/obsidian_settle.rs:188:7 [INFO] [stdout] | [INFO] [stdout] 188 | const OOBSIDIAN_WALLS_BOTTOM: &str = r#" [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `GRASS_PATCH` is never used [INFO] [stdout] --> src/settlement/settle_parts.rs:173:7 [INFO] [stdout] | [INFO] [stdout] 173 | const GRASS_PATCH: &str = r#" [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `OPEN_2` is never used [INFO] [stdout] --> src/settlement/settle_parts.rs:212:7 [INFO] [stdout] | [INFO] [stdout] 212 | const OPEN_2: &str = r#"CommNPC|Null|Null [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `WEAPONS_1` is never used [INFO] [stdout] --> src/settlement/settle_parts.rs:324:7 [INFO] [stdout] | [INFO] [stdout] 324 | const WEAPONS_1: &str = r#"CommNPC CommNPC CommNPC ShopNPC|HealthPotion HealthPotion HealthPotion Salve Salve Dowel WoodenBoard Apple App... [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ARMOUR_1` is never used [INFO] [stdout] --> src/settlement/settle_parts.rs:352:7 [INFO] [stdout] | [INFO] [stdout] 352 | const ARMOUR_1: &str = r#"CommNPC CommNPC CommNPC ShopNPC|HealthPotion HealthPotion HealthPotion Salve Salve Dowel WoodenBoard Apple Appl... [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PALETTE` is never used [INFO] [stdout] --> src/settlement/settle_parts.rs:396:7 [INFO] [stdout] | [INFO] [stdout] 396 | const PALETTE: &str = "empty: ' . , ' * | wall: ▒ | other ▓ ░ ~ | pipes: ═ ║ ╣ ╠ ╩ ╦ ╗ ╝ ╚ ╔ ╬ ┐ └ ┴ ┬ ├ ─ ┼ ┘ ┌ ┤ │ ≡ ° × ¤ ¸ ¨ · ■ ¦ ... [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `spawn_new_settlement`, `get_settle_pos`, `set_pass_item_content`, and `set_pass_msg_content` are never used [INFO] [stdout] --> src/settlements.rs:17:12 [INFO] [stdout] | [INFO] [stdout] 16 | impl Settlements { [INFO] [stdout] | ---------------- associated items in this implementation [INFO] [stdout] 17 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 51 | pub fn spawn_new_settlement(&mut self, cpos: (i16, i16)) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 91 | pub fn get_settle_pos(&mut self) -> Vec<(i16, i16)> { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 137 | fn set_pass_item_content(&self, task: Task) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 141 | fn set_pass_msg_content(&self, task: Task) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new_clinic`, `new_herbalist`, `get_npc`, and `get_paid` are never used [INFO] [stdout] --> src/shop.rs:73:12 [INFO] [stdout] | [INFO] [stdout] 30 | impl Shop { [INFO] [stdout] | --------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 73 | pub fn new_clinic( [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 87 | pub fn new_herbalist( [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 105 | pub fn get_npc(&self) -> ShopNPC { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 113 | pub fn get_paid(&mut self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `alignment` and `renown` are never read [INFO] [stdout] --> src/stats.rs:68:5 [INFO] [stdout] | [INFO] [stdout] 67 | pub struct PlayerStats { [INFO] [stdout] | ----------- fields in this struct [INFO] [stdout] 68 | alignment: i8, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 69 | renown: u8, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `state_toggle` and `player_stats` are never read [INFO] [stdout] --> src/stats.rs:164:9 [INFO] [stdout] | [INFO] [stdout] 162 | pub struct Stats { [INFO] [stdout] | ----- fields in this struct [INFO] [stdout] 163 | pub world_stats: WorldStats, [INFO] [stdout] 164 | pub state_toggle: HashMap, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 165 | pub player_stats: PlayerStats, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Plot`, `PassMessage`, and `PassItem` are never constructed [INFO] [stdout] --> src/tasks.rs:80:5 [INFO] [stdout] | [INFO] [stdout] 79 | pub enum TaskType { [INFO] [stdout] | -------- variants in this enum [INFO] [stdout] 80 | Plot, [INFO] [stdout] | ^^^^ [INFO] [stdout] 81 | RetrieveItem, [INFO] [stdout] 82 | PassMessage, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 83 | PassItem, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TaskType` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `RetrieveItem` is never constructed [INFO] [stdout] --> src/tasks.rs:97:5 [INFO] [stdout] | [INFO] [stdout] 87 | pub enum Task { [INFO] [stdout] | ---- variant in this enum [INFO] [stdout] ... [INFO] [stdout] 97 | RetrieveItem { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Task` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `place_enemies` is never used [INFO] [stdout] --> src/utils.rs:8:4 [INFO] [stdout] | [INFO] [stdout] 8 | fn place_enemies(map: Vec>) -> HashMap<(usize, usize), Enemy> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `gen_broken_range` is never used [INFO] [stdout] --> src/utils.rs:51:8 [INFO] [stdout] | [INFO] [stdout] 51 | pub fn gen_broken_range( [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `init_items` is never used [INFO] [stdout] --> src/utils.rs:71:8 [INFO] [stdout] | [INFO] [stdout] 71 | pub fn init_items( [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_dir` is never used [INFO] [stdout] --> src/utils.rs:193:8 [INFO] [stdout] | [INFO] [stdout] 193 | pub fn get_dir(vec: (i16, i16)) -> (i8, i8) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `nodemap`, `level`, `npc_comms`, `npc_convos`, `portal_cool`, and `loc_map` are never read [INFO] [stdout] --> src/gamestate.rs:59:5 [INFO] [stdout] | [INFO] [stdout] 54 | pub struct GameState { [INFO] [stdout] | --------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 59 | nodemap: NodeMap, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | level: u32, [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 84 | npc_comms: Vec, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 85 | npc_convos: Vec, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 94 | portal_cool: Instant, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 95 | loc_map: Option>>, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `new_loc_check` is never used [INFO] [stdout] --> src/gamestate/locations.rs:75:12 [INFO] [stdout] | [INFO] [stdout] 8 | impl GameState { [INFO] [stdout] | -------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 75 | pub fn new_loc_check(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `portal_shift` and `portal_check` are never used [INFO] [stdout] --> src/gamestate/puzzle_state.rs:47:8 [INFO] [stdout] | [INFO] [stdout] 20 | impl GameState { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 47 | fn portal_shift(&mut self, npos: (usize, usize), ppos: (usize, usize)) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 83 | pub fn portal_check(&mut self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&str` instead of cloning the inner type [INFO] [stdout] --> src/gui/npc_interactions.rs:292:45 [INFO] [stdout] | [INFO] [stdout] 292 | ... cell.clone(), [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(suspicious_double_ref_op)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&str` instead of cloning the inner type [INFO] [stdout] --> src/gui/npc_interactions.rs:297:52 [INFO] [stdout] | [INFO] [stdout] 297 | ... Cell::from(cell.clone()) [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/gui_utils.rs:63:24 [INFO] [stdout] | [INFO] [stdout] 63 | pub fn wrap_text(text: &str, max_width: usize) -> Text { [INFO] [stdout] | ^^^^ ---- the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 63 | pub fn wrap_text(text: &str, max_width: usize) -> Text<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/gamestate.rs:499:9 [INFO] [stdout] | [INFO] [stdout] 499 | sfile.write_all(json.as_bytes()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 499 | let _ = sfile.write_all(json.as_bytes()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/gamestate.rs:505:9 [INFO] [stdout] | [INFO] [stdout] 505 | writeln!(nfile, "{}", filename.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 505 | let _ = writeln!(nfile, "{}", filename.clone()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 17.37s [INFO] running `Command { std: "docker" "inspect" "36855795ef09b27a3f10ee696963f10c141ed37bcb37624bd72016ecbe36a0a4", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "36855795ef09b27a3f10ee696963f10c141ed37bcb37624bd72016ecbe36a0a4", kill_on_drop: false }` [INFO] [stdout] 36855795ef09b27a3f10ee696963f10c141ed37bcb37624bd72016ecbe36a0a4