[INFO] fetching crate rfvp 0.1.0...
[INFO] checking rfvp-0.1.0 against try#48c9d93cf65d550d124c40108859fd993778c157 for pr-153692-1
[INFO] extracting crate rfvp 0.1.0 into /workspace/builds/worker-7-tc2/source
[INFO] started tweaking crates.io crate rfvp 0.1.0
[INFO] finished tweaking crates.io crate rfvp 0.1.0
[INFO] tweaked toml for crates.io crate rfvp 0.1.0 written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate rfvp 0.1.0 on toolchain 48c9d93cf65d550d124c40108859fd993778c157
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+48c9d93cf65d550d124c40108859fd993778c157" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate rfvp 0.1.0 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" "+48c9d93cf65d550d124c40108859fd993778c157" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+48c9d93cf65d550d124c40108859fd993778c157" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 2e7d0bdb0e3d8b330296d2d77dc0e39b716814d7bcb1fd4962b4b86705dd7387
[INFO] running `Command { std: "docker" "start" "-a" "2e7d0bdb0e3d8b330296d2d77dc0e39b716814d7bcb1fd4962b4b86705dd7387", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "2e7d0bdb0e3d8b330296d2d77dc0e39b716814d7bcb1fd4962b4b86705dd7387", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2e7d0bdb0e3d8b330296d2d77dc0e39b716814d7bcb1fd4962b4b86705dd7387", kill_on_drop: false }`
[INFO] [stdout] 2e7d0bdb0e3d8b330296d2d77dc0e39b716814d7bcb1fd4962b4b86705dd7387
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+48c9d93cf65d550d124c40108859fd993778c157" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 57429fef8e11ebf3aa1d71df5414e69a741c0cf3227a3ef3af3741e61d6e300c
[INFO] running `Command { std: "docker" "start" "-a" "57429fef8e11ebf3aa1d71df5414e69a741c0cf3227a3ef3af3741e61d6e300c", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.78
[INFO] [stderr]    Compiling serde v1.0.196
[INFO] [stderr]     Checking bitflags v2.4.2
[INFO] [stderr]    Compiling pkg-config v0.3.29
[INFO] [stderr]     Checking smallvec v1.13.1
[INFO] [stderr]    Compiling rustix v0.38.31
[INFO] [stderr]     Checking linux-raw-sys v0.4.13
[INFO] [stderr]     Checking libloading v0.8.1
[INFO] [stderr]    Compiling lock_api v0.4.11
[INFO] [stderr]    Compiling ahash v0.8.7
[INFO] [stderr]     Checking downcast-rs v1.2.0
[INFO] [stderr]    Compiling thiserror v1.0.56
[INFO] [stderr]     Checking arrayvec v0.7.4
[INFO] [stderr]    Compiling memchr v2.7.1
[INFO] [stderr]    Compiling cc v1.0.83
[INFO] [stderr]     Checking getrandom v0.2.12
[INFO] [stderr]    Compiling slab v0.4.9
[INFO] [stderr]     Checking dlib v0.5.2
[INFO] [stderr]     Checking pin-project-lite v0.2.13
[INFO] [stderr]     Checking allocator-api2 v0.2.16
[INFO] [stderr]    Compiling num-traits v0.2.18
[INFO] [stderr]     Checking miniz_oxide v0.7.2
[INFO] [stderr]     Checking tracing-core v0.1.32
[INFO] [stderr]     Checking parking_lot_core v0.9.9
[INFO] [stderr]    Compiling crc32fast v1.3.2
[INFO] [stderr]     Checking unicode-width v0.1.11
[INFO] [stderr]     Checking fixedbitset v0.4.2
[INFO] [stderr]     Checking codespan-reporting v0.11.1
[INFO] [stderr]     Checking parking_lot v0.12.1
[INFO] [stderr]     Checking spin v0.9.8
[INFO] [stderr]     Checking spirv v0.3.0+sdk-1.3.268.0
[INFO] [stderr]    Compiling wayland-sys v0.31.1
[INFO] [stderr]    Compiling alsa-sys v0.3.1
[INFO] [stderr]     Checking hashbrown v0.14.3
[INFO] [stderr]     Checking tracing v0.1.40
[INFO] [stderr]    Compiling quick-xml v0.31.0
[INFO] [stderr]     Checking gpu-descriptor-types v0.1.2
[INFO] [stderr]     Checking gpu-alloc-types v0.3.0
[INFO] [stderr]     Checking encoding_rs v0.8.33
[INFO] [stderr]    Compiling wgpu-hal v0.19.1
[INFO] [stderr]     Checking libloading v0.7.4
[INFO] [stderr]    Compiling quote v1.0.35
[INFO] [stderr]     Checking raw-window-handle v0.6.0
[INFO] [stderr]     Checking futures-sink v0.3.30
[INFO] [stderr]     Checking xcursor v0.3.5
[INFO] [stderr]     Checking cursor-icon v1.1.0
[INFO] [stderr]     Checking either v1.9.0
[INFO] [stderr]     Checking unicode-xid v0.2.4
[INFO] [stderr]     Checking futures-core v0.3.30
[INFO] [stderr]    Compiling smithay-client-toolkit v0.18.0
[INFO] [stderr]    Compiling syn v2.0.48
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]     Checking xkeysym v0.2.0
[INFO] [stderr]     Checking ttf-parser v0.20.0
[INFO] [stderr]     Checking futures-channel v0.3.30
[INFO] [stderr]     Checking rayon v1.8.1
[INFO] [stderr]     Checking ash v0.37.3+1.3.251
[INFO] [stderr]     Checking gpu-alloc v0.6.0
[INFO] [stderr]     Checking flate2 v1.0.28
[INFO] [stderr]     Checking indexmap v2.2.2
[INFO] [stderr]    Compiling wayland-backend v0.3.3
[INFO] [stderr]    Compiling wayland-scanner v0.31.1
[INFO] [stderr]    Compiling backtrace v0.3.69
[INFO] [stderr]     Checking gpu-descriptor v0.2.4
[INFO] [stderr]    Compiling x11-dl v2.21.0
[INFO] [stderr]     Checking khronos-egl v6.0.0
[INFO] [stderr]     Checking nix v0.24.3
[INFO] [stderr]     Checking wgpu-types v0.19.0
[INFO] [stderr]     Checking memmap2 v0.9.4
[INFO] [stderr]    Compiling wgpu-core v0.19.0
[INFO] [stderr]     Checking gimli v0.28.1
[INFO] [stderr]    Compiling cpal v0.15.2
[INFO] [stderr]     Checking glow v0.13.1
[INFO] [stderr]     Checking weezl v0.1.8
[INFO] [stderr]     Checking profiling v1.0.14
[INFO] [stderr]     Checking petgraph v0.6.4
[INFO] [stderr]     Checking renderdoc-sys v1.0.0
[INFO] [stderr]    Compiling libm v0.2.8
[INFO] [stderr]     Checking alsa v0.7.1
[INFO] [stderr]     Checking object v0.32.2
[INFO] [stderr]     Checking flume v0.11.0
[INFO] [stderr]     Checking ogg v0.8.0
[INFO] [stderr]     Checking zune-inflate v0.2.54
[INFO] [stderr]     Checking fdeflate v0.3.4
[INFO] [stderr]     Checking is-terminal v0.4.11
[INFO] [stderr]     Checking half v2.3.1
[INFO] [stderr]    Compiling wgpu v0.19.1
[INFO] [stderr]    Compiling winit v0.29.10
[INFO] [stderr]    Compiling hexf-parse v0.2.1
[INFO] [stderr]     Checking lebe v0.5.2
[INFO] [stderr]     Checking owned_ttf_parser v0.20.0
[INFO] [stderr]     Checking jpeg-decoder v0.3.1
[INFO] [stderr]     Checking bit_field v0.10.2
[INFO] [stderr]     Checking color_quant v1.1.0
[INFO] [stderr]    Compiling serde_json v1.0.113
[INFO] [stderr]     Checking ab_glyph v0.2.23
[INFO] [stderr]     Checking x11rb-protocol v0.13.0
[INFO] [stderr]     Checking rustc-demangle v0.1.23
[INFO] [stderr]    Compiling anyhow v1.0.79
[INFO] [stderr]     Checking gif v0.12.0
[INFO] [stderr]     Checking exr v1.72.0
[INFO] [stderr]     Checking png v0.17.11
[INFO] [stderr]     Checking colored v1.9.4
[INFO] [stderr]     Checking lewton v0.10.2
[INFO] [stderr]     Checking raw-window-handle v0.5.2
[INFO] [stderr]     Checking tiff v0.9.1
[INFO] [stderr]    Compiling trackable_derive v1.0.0
[INFO] [stderr]    Compiling hexf v0.2.1
[INFO] [stderr]     Checking ryu v1.0.16
[INFO] [stderr]     Checking claxon v0.4.3
[INFO] [stderr]     Checking smol_str v0.2.1
[INFO] [stderr]     Checking itoa v1.0.10
[INFO] [stderr]     Checking hound v3.5.1
[INFO] [stderr]     Checking hecs v0.10.4
[INFO] [stderr]     Checking glob v0.3.1
[INFO] [stderr]     Checking atomic_refcell v0.1.13
[INFO] [stderr]     Checking twofloat v0.7.0
[INFO] [stderr]     Checking trackable v1.3.0
[INFO] [stderr]     Checking addr2line v0.21.0
[INFO] [stderr]     Checking mpeg2ts v0.3.1
[INFO] [stderr]    Compiling serde_derive v1.0.196
[INFO] [stderr]    Compiling bytemuck_derive v1.5.0
[INFO] [stderr]    Compiling thiserror-impl v1.0.56
[INFO] [stderr]    Compiling futures-macro v0.3.30
[INFO] [stderr]     Checking bytemuck v1.14.3
[INFO] [stderr]     Checking futures-util v0.3.30
[INFO] [stderr]     Checking tiny-skia-path v0.11.4
[INFO] [stderr]     Checking safe_arch v0.7.1
[INFO] [stderr]     Checking qoi v0.4.1
[INFO] [stderr]     Checking wide v0.7.15
[INFO] [stderr]     Checking polling v3.4.0
[INFO] [stderr]     Checking image v0.24.8
[INFO] [stderr]     Checking ultraviolet v0.9.2
[INFO] [stderr]     Checking futures-executor v0.3.30
[INFO] [stderr]     Checking futures v0.3.30
[INFO] [stderr]     Checking log v0.4.20
[INFO] [stderr]     Checking bincode v1.3.3
[INFO] [stderr]     Checking symphonia-core v0.5.3
[INFO] [stderr]     Checking calloop v0.12.4
[INFO] [stderr]     Checking naga v0.19.0
[INFO] [stderr]     Checking tiny-skia v0.11.4
[INFO] [stderr]     Checking xkbcommon-dl v0.4.1
[INFO] [stderr]     Checking fern v0.6.2
[INFO] [stderr]     Checking wayland-client v0.31.2
[INFO] [stderr]     Checking wayland-csd-frame v0.3.0
[INFO] [stderr]     Checking symphonia-metadata v0.5.3
[INFO] [stderr]     Checking symphonia-bundle-mp3 v0.5.3
[INFO] [stderr]     Checking symphonia v0.5.3
[INFO] [stderr]     Checking wayland-protocols v0.31.2
[INFO] [stderr]     Checking calloop-wayland-source v0.2.0
[INFO] [stderr]     Checking wayland-cursor v0.31.1
[INFO] [stderr]     Checking rodio v0.17.3
[INFO] [stderr]     Checking x11rb v0.13.0
[INFO] [stderr]     Checking wayland-protocols-wlr v0.2.0
[INFO] [stderr]     Checking wayland-protocols-plasma v0.2.0
[INFO] [stderr]     Checking sctk-adwaita v0.8.1
[INFO] [stderr]     Checking rfvp v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `square::Square` and `triangle::Triangle`
[INFO] [stdout]  --> src/subsystem/components/mod.rs:1:18
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub use shapes::{square::Square, triangle::Triangle};
[INFO] [stdout]   |                  ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `hot-reload`
[INFO] [stdout]   --> src/subsystem/systems/mod.rs:60:17
[INFO] [stdout]    |
[INFO] [stdout] 60 |         if cfg!(feature = "hot-reload") {
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `hot-reload` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Nls` and `self`
[INFO] [stdout]  --> src/app.rs:4:29
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::script::parser::{self, Nls, Parser};
[INFO] [stdout]   |                             ^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `hot-reload`
[INFO] [stdout]    --> src/rendering/shinku2d.rs:513:39
[INFO] [stdout]     |
[INFO] [stdout] 513 |         let hot_timer_cycle = if cfg!(feature = "hot-reload") {
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[INFO] [stdout]     = help: consider adding `hot-reload` as a feature in `Cargo.toml`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `square::Square` and `triangle::Triangle`
[INFO] [stdout]  --> src/subsystem/components/mod.rs:1:18
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub use shapes::{square::Square, triangle::Triangle};
[INFO] [stdout]   |                  ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AssetRef`
[INFO] [stdout]   --> src/subsystem/systems/missing_ui_component_system.rs:41:68
[INFO] [stdout]    |
[INFO] [stdout] 41 |     use crate::subsystem::resources::asset_manager::{AssetManager, AssetRef};
[INFO] [stdout]    |                                                                    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AssetRef`
[INFO] [stdout]    --> src/subsystem/systems/ui_text_system.rs:199:72
[INFO] [stdout]     |
[INFO] [stdout] 199 |         use crate::subsystem::resources::asset_manager::{AssetManager, AssetRef};
[INFO] [stdout]     |                                                                        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `hot-reload`
[INFO] [stdout]   --> src/subsystem/systems/mod.rs:60:17
[INFO] [stdout]    |
[INFO] [stdout] 60 |         if cfg!(feature = "hot-reload") {
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]    |
[INFO] [stdout]    = note: no expected values for `feature`
[INFO] [stdout]    = help: consider adding `hot-reload` as a feature in `Cargo.toml`
[INFO] [stdout]    = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]    = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Nls` and `self`
[INFO] [stdout]  --> src/app.rs:4:29
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::script::parser::{self, Nls, Parser};
[INFO] [stdout]   |                             ^^^^  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `hot-reload`
[INFO] [stdout]    --> src/rendering/shinku2d.rs:513:39
[INFO] [stdout]     |
[INFO] [stdout] 513 |         let hot_timer_cycle = if cfg!(feature = "hot-reload") {
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^^^^^ help: remove the condition
[INFO] [stdout]     |
[INFO] [stdout]     = note: no expected values for `feature`
[INFO] [stdout]     = help: consider adding `hot-reload` as a feature in `Cargo.toml`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> src/subsystem/resources/font_atlas.rs:98:9
[INFO] [stdout]     |
[INFO] [stdout]  98 |            return match read_file(Path::new(&font_path)) {
[INFO] [stdout]     |  __________^      -
[INFO] [stdout]     | | ________________|
[INFO] [stdout]  99 | ||             Ok(res) => {
[INFO] [stdout] 100 | ||                 let font = FontVec::try_from_vec(res);
[INFO] [stdout] 101 | ||                 if let Ok(font_vec) = font {
[INFO] [stdout] ...   ||
[INFO] [stdout] 160 | ||             Err(_) => anyhow::bail!("Impossible to find font file"),
[INFO] [stdout] 161 | ||         };
[INFO] [stdout]     | ||         ^
[INFO] [stdout]     | ||_________|
[INFO] [stdout]     |  |_________unreachable expression
[INFO] [stdout]     |            any code following this `match` expression is unreachable, as all arms diverge
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> src/subsystem/resources/font_atlas.rs:98:9
[INFO] [stdout]     |
[INFO] [stdout]  98 |            return match read_file(Path::new(&font_path)) {
[INFO] [stdout]     |  __________^      -
[INFO] [stdout]     | | ________________|
[INFO] [stdout]  99 | ||             Ok(res) => {
[INFO] [stdout] 100 | ||                 let font = FontVec::try_from_vec(res);
[INFO] [stdout] 101 | ||                 if let Ok(font_vec) = font {
[INFO] [stdout] ...   ||
[INFO] [stdout] 160 | ||             Err(_) => anyhow::bail!("Impossible to find font file"),
[INFO] [stdout] 161 | ||         };
[INFO] [stdout]     | ||         ^
[INFO] [stdout]     | ||_________|
[INFO] [stdout]     |  |_________unreachable expression
[INFO] [stdout]     |            any code following this `match` expression is unreachable, as all arms diverge
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]   --> src/rendering/renderer_state.rs:28:32
[INFO] [stdout]    |
[INFO] [stdout] 28 |         let (_size, surface) = unsafe {
[INFO] [stdout]    |                                ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]   --> src/main.rs:32:28
[INFO] [stdout]    |
[INFO] [stdout] 32 |     fn on_start(&mut self, data: &mut GameData) {
[INFO] [stdout]    |                            ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `SavedStackInfo` is more private than the item `script::Variant::_SavedStackInfo::0`
[INFO] [stdout]   --> src/script/mod.rs:31:21
[INFO] [stdout]    |
[INFO] [stdout] 31 |     _SavedStackInfo(SavedStackInfo),
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^ field `script::Variant::_SavedStackInfo::0` is reachable at visibility `pub(crate)`
[INFO] [stdout]    |
[INFO] [stdout] note: but type `SavedStackInfo` is only usable at visibility `pub(self)`
[INFO] [stdout]   --> src/script/mod.rs:12:1
[INFO] [stdout]    |
[INFO] [stdout] 12 | struct SavedStackInfo {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `SavedStackInfo` is more private than the item `script::Variant::as_saved_stack_info`
[INFO] [stdout]    --> src/script/mod.rs:102:5
[INFO] [stdout]     |
[INFO] [stdout] 102 |     pub fn as_saved_stack_info(&self) -> Option<&SavedStackInfo> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `script::Variant::as_saved_stack_info` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `SavedStackInfo` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/script/mod.rs:12:1
[INFO] [stdout]     |
[INFO] [stdout]  12 | struct SavedStackInfo {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SavedStackInfo` is never constructed
[INFO] [stdout]   --> src/script/mod.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | struct SavedStackInfo {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Variant` is never used
[INFO] [stdout]   --> src/script/mod.rs:20:10
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub enum Variant {
[INFO] [stdout]    |          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/script/mod.rs:35:12
[INFO] [stdout]     |
[INFO] [stdout]  34 | impl Variant {
[INFO] [stdout]     | ------------ methods in this implementation
[INFO] [stdout]  35 |     pub fn is_nil(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  39 |     pub fn is_true(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  43 |     pub fn is_int(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  47 |     pub fn is_float(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  51 |     pub fn is_string(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  55 |     pub fn is_table(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  59 |     pub fn is_saved_stack_info(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  63 |     pub fn canbe_true(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  67 |     pub fn as_int(&self) -> Option<i32> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  74 |     pub fn as_float(&self) -> Option<f32> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  81 |     pub fn as_string(&self) -> Option<&String> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  88 |     pub fn as_table(&self) -> Option<&HashMap<i32, Variant>> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  95 |     pub fn as_table_mut(&mut self) -> Option<&mut HashMap<i32, Variant>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 102 |     pub fn as_saved_stack_info(&self) -> Option<&SavedStackInfo> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 109 |     pub fn set_nil(&mut self) {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 113 |     pub fn vadd(&mut self, other: &Variant) {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 117 |     pub fn vsub(&mut self, other: &Variant) {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 121 |     pub fn vmul(&mut self, other: &Variant) {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 125 |     pub fn vdiv(&mut self, other: &Variant) {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 129 |     pub fn vmod(&mut self, other: &Variant) {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 133 |     pub fn neg(&mut self) {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 141 |     pub fn and(&mut self, other: &Variant) {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 152 |     pub fn or(&mut self, other: &Variant) {
[INFO] [stdout]     |            ^^
[INFO] [stdout] ...
[INFO] [stdout] 161 |     pub fn equal(&mut self, other: &Variant) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 213 |     pub fn not_equal(&mut self, other: &Variant) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 265 |     pub fn greater(&mut self, other: &Variant) {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     pub fn less(&mut self, other: &Variant) {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 375 |     pub fn greater_equal(&mut self, other: &Variant) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 387 |     pub fn less_equal(&mut self, other: &Variant) {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `vm_add` is never used
[INFO] [stdout]    --> src/script/mod.rs:400:8
[INFO] [stdout]     |
[INFO] [stdout] 400 | pub fn vm_add(a: Variant, b: Variant) -> Variant {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `vm_sub` is never used
[INFO] [stdout]    --> src/script/mod.rs:426:8
[INFO] [stdout]     |
[INFO] [stdout] 426 | pub fn vm_sub(a: Variant, b: Variant) -> Variant {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `vm_mul` is never used
[INFO] [stdout]    --> src/script/mod.rs:451:8
[INFO] [stdout]     |
[INFO] [stdout] 451 | pub fn vm_mul(a: Variant, b: Variant) -> Variant {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `vm_div` is never used
[INFO] [stdout]    --> src/script/mod.rs:481:8
[INFO] [stdout]     |
[INFO] [stdout] 481 | pub fn vm_div(a: Variant, b: Variant) -> Variant {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `vm_mod` is never used
[INFO] [stdout]    --> src/script/mod.rs:518:4
[INFO] [stdout]     |
[INFO] [stdout] 518 | fn vm_mod(a: Variant, b: Variant) -> Variant {
[INFO] [stdout]     |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `VmSyscall` is never used
[INFO] [stdout]    --> src/script/mod.rs:525:11
[INFO] [stdout]     |
[INFO] [stdout] 525 | pub trait VmSyscall {
[INFO] [stdout]     |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `MAX_STACK_SIZE` is never used
[INFO] [stdout]   --> src/script/context.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | static MAX_STACK_SIZE: usize = 0x100;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `DEFAULT_TIME_SLICE` is never used
[INFO] [stdout]   --> src/script/context.rs:14:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | static DEFAULT_TIME_SLICE: u64 = 50;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `StackFrame` is never constructed
[INFO] [stdout]   --> src/script/context.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct StackFrame {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ContextState` is never used
[INFO] [stdout]   --> src/script/context.rs:23:10
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub enum ContextState {
[INFO] [stdout]    |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Context` is never constructed
[INFO] [stdout]   --> src/script/context.rs:40:12
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub struct Context {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/script/context.rs:58:12
[INFO] [stdout]     |
[INFO] [stdout]  57 | impl Context {
[INFO] [stdout]     | ------------ associated items in this implementation
[INFO] [stdout]  58 |     pub fn new(start_addr: u32) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  73 |     fn to_global_offset(&self) -> Result<usize> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  88 |     fn push(&mut self, value: Variant) -> Result<()> {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 103 |     fn pop(&mut self) -> Result<Variant> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 122 |     fn top(&mut self) -> Result<Variant> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 126 |     fn top_frame(&self) -> Result<&StackFrame> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 |     fn get_local(&self, offset: i8) -> Result<Variant> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 158 |     fn get_local_mut(&mut self, offset: i8) -> Result<&mut Variant> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 181 |     fn set_local(&mut self, offset: i8, value: Variant) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 203 |     pub fn nop(&mut self) -> Result<()> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 211 |     pub fn init_stack(&mut self, parser: &mut Parser) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 244 |     pub fn call(&mut self, parser: &mut Parser) -> Result<()> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 272 |     pub fn syscall(&mut self, sys: impl VmSyscall, parser: &mut Parser) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 294 |     pub fn ret(&mut self) -> Result<()> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 310 |     pub fn retv(&mut self) -> Result<()> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     pub fn jmp(&mut self, parser: &mut Parser) -> Result<()> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 336 |     pub fn jz(&mut self, parser: &mut Parser) -> Result<()> {
[INFO] [stdout]     |            ^^
[INFO] [stdout] ...
[INFO] [stdout] 351 |     pub fn push_nil(&mut self) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 359 |     pub fn push_true(&mut self) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 367 |     pub fn push_i32(&mut self, parser: &mut Parser) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 378 |     pub fn push_i16(&mut self, parser: &mut Parser) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 389 |     pub fn push_i8(&mut self, parser: &mut Parser) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 400 |     pub fn push_f32(&mut self, parser: &mut Parser) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 411 |     pub fn push_string(&mut self, parser: &mut Parser) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 425 |     pub fn push_global(&mut self, parser: &mut Parser, global: &mut Global) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 440 |     pub fn push_stack(&mut self, parser: &mut Parser) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 455 |     pub fn push_global_table(&mut self, parser: &mut Parser, global: &mut Global) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 489 |     pub fn push_local_table(&mut self, parser: &mut Parser) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 518 |     pub fn push_top(&mut self) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 527 |     pub fn push_return_value(&mut self) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 536 |     pub fn pop_global(&mut self, parser: &mut Parser, global: &mut Global) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 548 |     pub fn local_copy(&mut self, parser: &mut Parser) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 560 |     pub fn pop_global_table(&mut self, parser: &mut Parser, global: &mut Global) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 586 |     pub fn pop_local_table(&mut self, parser: &mut Parser) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 609 |     pub fn neg(&mut self) -> Result<()> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 620 |     pub fn add(&mut self) -> Result<()> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 631 |     pub fn sub(&mut self) -> Result<()> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 642 |     pub fn mul(&mut self) -> Result<()> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 653 |     pub fn div(&mut self) -> Result<()> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 664 |     pub fn modulo(&mut self) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 675 |     pub fn bittest(&mut self) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 690 |     pub fn and(&mut self) -> Result<()> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 701 |     pub fn or(&mut self) -> Result<()> {
[INFO] [stdout]     |            ^^
[INFO] [stdout] ...
[INFO] [stdout] 712 |     pub fn sete(&mut self) -> Result<()> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 723 |     pub fn setne(&mut self) -> Result<()> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 734 |     pub fn setg(&mut self) -> Result<()> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 745 |     pub fn setle(&mut self) -> Result<()> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 756 |     pub fn setl(&mut self) -> Result<()> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 767 |     pub fn setge(&mut self) -> Result<()> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Scheduler` is never constructed
[INFO] [stdout]  --> src/script/scheduler.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct Scheduler {
[INFO] [stdout]   |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Opcode` is never used
[INFO] [stdout]   --> src/script/scheduler.rs:13:6
[INFO] [stdout]    |
[INFO] [stdout] 13 | enum Opcode {
[INFO] [stdout]    |      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/script/scheduler.rs:107:12
[INFO] [stdout]     |
[INFO] [stdout] 106 | impl Scheduler {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 107 |     pub fn new(parser: Parser, global: Global) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 115 |     pub fn add(&mut self, id: u32, context: Context) {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn remove(&mut self, id: u32) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 123 |     pub fn get(&self, id: u32) -> Option<&Context> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 127 |     pub fn get_mut(&mut self, id: u32) -> Option<&mut Context> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 132 |     fn dispatch_opcode(&mut self, syscaller: impl VmSyscall, context: &mut Context) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 264 |     pub fn execute(&mut self, _syscall: impl VmSyscall) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `GBK` and `UTF8` are never constructed
[INFO] [stdout]   --> src/script/parser.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub enum Nls {
[INFO] [stdout]    |          --- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 14 |     GBK = 1,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 15 |     UTF8 = 2,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Nls` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `args` and `name` are never read
[INFO] [stdout]   --> src/script/parser.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct Syscall {
[INFO] [stdout]    |            ------- fields in this struct
[INFO] [stdout] 20 |     /// how many arguments the syscall takes from the stack
[INFO] [stdout] 21 |     pub args: u8,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 22 |     /// name of the syscall
[INFO] [stdout] 23 |     pub name: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Syscall` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `read_i8`, `read_i16`, `read_i32`, `is_code_area`, and `get_syscall` are never used
[INFO] [stdout]    --> src/script/parser.rs:98:12
[INFO] [stdout]     |
[INFO] [stdout]  44 | impl Parser {
[INFO] [stdout]     | ----------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  98 |     pub fn read_i8(&self, offset: usize) -> Result<i8> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 106 |     pub fn read_i16(&self, offset: usize) -> Result<i16> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 114 |     pub fn read_i32(&self, offset: usize) -> Result<i32> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 214 |     pub fn is_code_area(&self, addr: u32) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 218 |     pub fn get_syscall(&self, id: u16) -> Option<&Syscall> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Global` is never constructed
[INFO] [stdout]   --> src/script/global.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct Global {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `load_from_file`, `save_to_file`, `get`, `get_mut`, and `set` are never used
[INFO] [stdout]   --> src/script/global.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl Global {
[INFO] [stdout]    | ----------- associated items in this implementation
[INFO] [stdout] 19 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 25 |     pub fn load_from_file(path: impl AsRef<Path>) -> Result<Self> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 34 |     pub fn save_to_file(&self, path: impl AsRef<Path>) -> Result<()> {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub fn get(&self, key: u16) -> Option<&Variant> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 |     pub fn get_mut(&mut self, key: u16) -> Option<&mut Variant> {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 49 |     pub fn set(&mut self, key: u16, value: Variant) {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/subsystem/components/animations.rs:18:12
[INFO] [stdout]     |
[INFO] [stdout]  16 | impl Animations {
[INFO] [stdout]     | --------------- associated items in this implementation
[INFO] [stdout]  17 |     /// Creates a new Animations component
[INFO] [stdout]  18 |     pub fn new(animations: HashMap<String, Animation>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  23 |     pub fn single(name: &str, animation: Animation) -> Self {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  29 |     fn run(&mut self, animation_name: &str, status: AnimationStatus) -> bool {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout]  47 |     pub fn run_animation(&mut self, animation_name: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  52 |     pub fn animation_running(&mut self, animation_name: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  61 |     pub fn loop_animation(&mut self, animation_name: &str) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  66 |     pub fn stop_animation(&mut self, animation_name: &str, force: bool) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  79 |     pub fn stop_all_animation(&mut self, force: bool) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  85 |     fn stop_single_animation(force: bool, animation: &mut Animation) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 106 |     pub fn any_animation_running(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `new`, `running`, `looping`, and `initialise_animation` are never used
[INFO] [stdout]    --> src/subsystem/components/animations.rs:136:12
[INFO] [stdout]     |
[INFO] [stdout] 134 | impl Animation {
[INFO] [stdout]     | -------------- associated functions in this implementation
[INFO] [stdout] 135 |     /// Creates a new animation based on a duration and a list of modifiers
[INFO] [stdout] 136 |     pub fn new(duration: Duration, mut modifiers: Vec<AnimationModifier>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 143 |     pub fn running(duration: Duration, mut modifiers: Vec<AnimationModifier>) -> Self {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 150 |     pub fn looping(duration: Duration, mut modifiers: Vec<AnimationModifier>) -> Self {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 156 |     fn initialise_animation(duration: Duration, modifiers: &mut Vec<AnimationModifier>) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated functions are never used
[INFO] [stdout]    --> src/subsystem/components/animations.rs:200:8
[INFO] [stdout]     |
[INFO] [stdout] 198 | impl AnimationModifier {
[INFO] [stdout]     | ---------------------- associated functions in this implementation
[INFO] [stdout] 199 |     /// Creates a new AnimationModifier using a number of keyframes and a type.
[INFO] [stdout] 200 |     fn new(number_of_keyframes: usize, modifier_type: AnimationModifierType) -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 213 |     pub fn transform(
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 225 |     pub fn sprite(tile_numbers: Vec<usize>, end_tile_number: usize) -> Self {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 237 |     pub fn sprite_with_variant(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 254 |     pub fn color(number_of_keyframes: usize, target_color: Color) -> Self {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 262 |     pub fn blink(number_of_blinks: usize) -> Self {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 267 |     pub fn text(content: String) -> Self {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `TransformModifier`, `SpriteModifier`, `Color`, `Text`, and `Blink` are never constructed
[INFO] [stdout]    --> src/subsystem/components/animations.rs:314:5
[INFO] [stdout]     |
[INFO] [stdout] 313 | pub enum AnimationModifierType {
[INFO] [stdout]     |          --------------------- variants in this enum
[INFO] [stdout] 314 |     TransformModifier {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 319 |     SpriteModifier {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 324 |     Color {
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 327 |     Text {
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 330 |     Blink,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `AnimationModifierType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `TransformModifier` and `Text` are never constructed
[INFO] [stdout]    --> src/subsystem/components/animations.rs:334:5
[INFO] [stdout]     |
[INFO] [stdout] 333 | pub(crate) enum ComputedKeyframeModifier {
[INFO] [stdout]     |                 ------------------------ variants in this enum
[INFO] [stdout] 334 |     TransformModifier { vector: Option<Vector>, scale: Option<f32>, rotation: Option<f32> },
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 335 |     Color { r: i16, g: i16, b: i16, a: f32 },
[INFO] [stdout] 336 |     Text { cursor: usize },
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compute_animation_keyframe_modifier` is never used
[INFO] [stdout]    --> src/subsystem/components/animations.rs:365:4
[INFO] [stdout]     |
[INFO] [stdout] 365 | fn compute_animation_keyframe_modifier(modifier: &mut AnimationModifier) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Tileset` is never constructed
[INFO] [stdout]   --> src/subsystem/components/material.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub enum Material {
[INFO] [stdout]    |          -------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 18 |     Tileset(Tileset),
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Material` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Pivot` is never used
[INFO] [stdout]  --> src/subsystem/components/maths/mod.rs:8:10
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub enum Pivot {
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `None`, `Character`, `Bullet`, `Death`, `Landscape`, and `Custom` are never constructed
[INFO] [stdout]   --> src/subsystem/components/maths/collider.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub enum ColliderMask {
[INFO] [stdout]    |          ------------ variants in this enum
[INFO] [stdout] 26 |     None,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 27 |     Character,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 28 |     Bullet,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 29 |     Death,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 30 |     Landscape,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 31 |     Custom(String),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ColliderMask` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Square` and `Rectangle` are never constructed
[INFO] [stdout]   --> src/subsystem/components/maths/collider.rs:37:5
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub enum ColliderType {
[INFO] [stdout]    |          ------------ variants in this enum
[INFO] [stdout] 37 |     Square(usize),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 38 |     Rectangle(usize, usize),
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ColliderType` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `with_debug_lines`, `with_offset`, `is_colliding`, `collisions`, and `mask_cloned` are never used
[INFO] [stdout]   --> src/subsystem/components/maths/collider.rs:55:12
[INFO] [stdout]    |
[INFO] [stdout] 52 | impl Collider {
[INFO] [stdout]    | ------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 55 |     pub fn new(
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 70 |     pub fn with_debug_lines(mut self) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 75 |     pub fn with_offset(mut self, offset: Vector) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 81 |     pub fn is_colliding(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 86 |     pub fn collisions(&self) -> &Vec<Collision> {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 96 |     pub fn mask_cloned(&self) -> ColliderMask {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `mask`, `entity`, and `coordinates` are never read
[INFO] [stdout]    --> src/subsystem/components/maths/collider.rs:227:16
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Collision {
[INFO] [stdout]     |            --------- fields in this struct
[INFO] [stdout] 227 |     pub(crate) mask: ColliderMask,
[INFO] [stdout]     |                ^^^^
[INFO] [stdout] 228 |     pub(crate) entity: Entity,
[INFO] [stdout]     |                ^^^^^^
[INFO] [stdout] 229 |     pub(crate) coordinates: Coordinates,
[INFO] [stdout]     |                ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Collision` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `entity`, `mask`, and `coordinates` are never used
[INFO] [stdout]    --> src/subsystem/components/maths/collider.rs:233:12
[INFO] [stdout]     |
[INFO] [stdout] 232 | impl Collision {
[INFO] [stdout]     | -------------- methods in this implementation
[INFO] [stdout] 233 |     pub fn entity(&self) -> &Entity {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 236 |     pub fn mask(&self) -> &ColliderMask {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 239 |     pub fn coordinates(&self) -> &Coordinates {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `set_z` is never used
[INFO] [stdout]   --> src/subsystem/components/maths/coordinates.rs:37:12
[INFO] [stdout]    |
[INFO] [stdout]  8 | impl Coordinates {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 37 |     pub fn set_z(&mut self, z: usize) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/subsystem/components/maths/transform.rs:77:12
[INFO] [stdout]     |
[INFO] [stdout]  41 | impl Transform {
[INFO] [stdout]     | -------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub fn append_vector(&mut self, vector: Vector) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  82 |     pub fn append_x(&mut self, x: f32) {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  90 |     pub fn append_y(&mut self, y: f32) {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  98 |     pub fn move_down(&mut self, y: f32) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 131 |     pub fn set_min_x(&mut self, min_x: Option<f32>) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 137 |     pub fn set_max_x(&mut self, max_x: Option<f32>) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 143 |     pub fn set_min_y(&mut self, min_y: Option<f32>) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 149 |     pub fn set_max_y(&mut self, max_y: Option<f32>) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 154 |     pub fn set_use_screen_as_origin(&mut self, new_value: bool) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 160 |     pub fn set_global_translation_bounds(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TransformBuilder` is never constructed
[INFO] [stdout]    --> src/subsystem/components/maths/transform.rs:212:12
[INFO] [stdout]     |
[INFO] [stdout] 212 | pub struct TransformBuilder {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/subsystem/components/maths/transform.rs:217:12
[INFO] [stdout]     |
[INFO] [stdout] 216 | impl TransformBuilder {
[INFO] [stdout]     | --------------------- associated items in this implementation
[INFO] [stdout] 217 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 221 |     pub fn with_xy(mut self, x: f32, y: f32) -> Self {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 227 |     pub fn with_translation(mut self, x: f32, y: f32, z: usize) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 234 |     pub fn with_scale(mut self, scale: f32) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 239 |     pub fn with_angle(mut self, angle: f32) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 244 |     pub fn with_screen_as_origin(mut self) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 249 |     pub fn build(self) -> Transform {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `vertices` is never read
[INFO] [stdout]   --> src/subsystem/components/shapes/line.rs:17:9
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct Line {
[INFO] [stdout]    |            ---- field in this struct
[INFO] [stdout] 17 |     pub vertices: [Coordinates; 2],
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `pivot`, and `new_with_offset` are never used
[INFO] [stdout]   --> src/subsystem/components/shapes/line.rs:23:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | impl Line {
[INFO] [stdout]    | --------- associated items in this implementation
[INFO] [stdout] 22 |     /// Creates a new line using `vertices`.
[INFO] [stdout] 23 |     pub fn new(vertices: [Coordinates; 2]) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |     pub fn pivot(self, pivot: Pivot) -> Self {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 40 |     pub fn new_with_offset(vertices: [Coordinates; 2], offset: Coordinates) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `vertices` is never read
[INFO] [stdout]   --> src/subsystem/components/shapes/polygon.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct Polygon {
[INFO] [stdout]    |            ------- field in this struct
[INFO] [stdout] 12 |     pub vertices: Vec<Coordinates>,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_vertices`, `append_x`, `append_y`, and `compute_contents` are never used
[INFO] [stdout]   --> src/subsystem/components/shapes/polygon.rs:31:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl Polygon {
[INFO] [stdout]    | ------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 31 |     pub fn get_vertices(&self) -> &Vec<Coordinates> {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |     pub fn append_x(&mut self, index: usize, x: f32) {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 42 |     pub fn append_y(&mut self, index: usize, y: f32) {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 48 |     fn compute_contents(&mut self) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `width`, `height`, `vertices`, and `uvs` are never read
[INFO] [stdout]   --> src/subsystem/components/shapes/rectangle.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct Rectangle {
[INFO] [stdout]    |            --------- fields in this struct
[INFO] [stdout] 17 |     width: f32,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 18 |     height: f32,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 19 |     pub vertices: [Coordinates; 4],
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 20 |     pub uvs: Option<[Coordinates; 4]>,
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/subsystem/components/shapes/rectangle.rs:29:12
[INFO] [stdout]     |
[INFO] [stdout]  25 | impl Rectangle {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  29 |     pub fn new(width: f32, height: f32, uvs: Option<[Coordinates; 4]>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  33 |     pub fn pivot(self, pivot: Pivot) -> Self {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  42 |     pub fn new_with_offset(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  63 |     pub fn set_height(&mut self, new_height: f32) {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  81 |     pub fn set_width(&mut self, new_width: f32) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  99 |     pub fn height(&self) -> f32 {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 102 |     pub fn width(&self) -> f32 {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `default_uvs` is never used
[INFO] [stdout]    --> src/subsystem/components/shapes/rectangle.rs:107:4
[INFO] [stdout]     |
[INFO] [stdout] 107 | fn default_uvs() -> [Coordinates; 4] {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `vertices`, `uvs`, and `length` are never read
[INFO] [stdout]   --> src/subsystem/components/shapes/square.rs:17:9
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct Square {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 17 |     pub vertices: [Coordinates; 4],
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 18 |     pub uvs: Option<[Coordinates; 4]>,
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 19 |     contents: [TexturedGlVertex; 4],
[INFO] [stdout] 20 |     length: f32,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `pivot`, and `new_with_offset` are never used
[INFO] [stdout]   --> src/subsystem/components/shapes/square.rs:27:12
[INFO] [stdout]    |
[INFO] [stdout] 23 | impl Square {
[INFO] [stdout]    | ----------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 27 |     pub fn new(length: f32, uvs: Option<[Coordinates; 4]>) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 32 |     pub fn pivot(self, pivot: Pivot) -> Self {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 40 |     fn new_with_offset(length: f32, uvs: Option<[Coordinates; 4]>, offset: f32) -> Self {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `default_uvs` is never used
[INFO] [stdout]   --> src/subsystem/components/shapes/square.rs:56:4
[INFO] [stdout]    |
[INFO] [stdout] 56 | fn default_uvs() -> [Coordinates; 4] {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `vertices` and `uvs` are never read
[INFO] [stdout]   --> src/subsystem/components/shapes/triangle.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct Triangle {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] 15 |     pub vertices: [Coordinates; 3],
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 16 |     pub uvs: Option<[Coordinates; 3]>,
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `pivot`, and `new_with_offset` are never used
[INFO] [stdout]   --> src/subsystem/components/shapes/triangle.rs:23:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | impl Triangle {
[INFO] [stdout]    | ------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 23 |     pub fn new(vertices: [Coordinates; 3], uvs: Option<[Coordinates; 3]>) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |     pub fn pivot(self, pivot: Pivot) -> Self {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 44 |     fn new_with_offset(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `get_tile_nb` are never used
[INFO] [stdout]   --> src/subsystem/components/tiles/sprite.rs:28:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | impl Sprite {
[INFO] [stdout]    | ----------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 28 |     pub fn new(tile_number: usize) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 38 |     pub fn get_tile_nb(&self) -> usize {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Pathing` is never constructed
[INFO] [stdout]   --> src/subsystem/components/tiles/tilemap.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct Pathing {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `event_type`, and `properties` are never used
[INFO] [stdout]   --> src/subsystem/components/tiles/tilemap.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 34 | impl TileEvent {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] 35 |     pub fn new(event_type: String, properties: HashMap<String, String>) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 42 |     pub fn event_type(&self) -> String {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |     pub fn properties(&mut self) -> &mut HashMap<String, String> {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TileInfos` is never constructed
[INFO] [stdout]   --> src/subsystem/components/tiles/tilemap.rs:58:12
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub struct TileInfos {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `with_event`, and `with_pathing` are never used
[INFO] [stdout]   --> src/subsystem/components/tiles/tilemap.rs:67:12
[INFO] [stdout]    |
[INFO] [stdout] 65 | impl TileInfos {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] 66 |     /// Creates a new TileInfos struct
[INFO] [stdout] 67 |     pub fn new(tile_nb: Option<usize>, animation: Option<Animation>) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub fn with_event(mut self, event: Option<TileEvent>) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 79 |     pub fn with_pathing(mut self, pathing: String) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TilemapInfo` is never constructed
[INFO] [stdout]   --> src/subsystem/components/tiles/tilemap.rs:86:12
[INFO] [stdout]    |
[INFO] [stdout] 86 | pub struct TilemapInfo {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/subsystem/components/tiles/tilemap.rs:93:12
[INFO] [stdout]    |
[INFO] [stdout] 92 | impl TilemapInfo {
[INFO] [stdout]    | ---------------- associated function in this implementation
[INFO] [stdout] 93 |     pub fn new(
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `tile_entities`, `events`, and `tileset_ref` are never read
[INFO] [stdout]    --> src/subsystem/components/tiles/tilemap.rs:104:5
[INFO] [stdout]     |
[INFO] [stdout] 103 | pub struct Tilemap {
[INFO] [stdout]     |            ------- fields in this struct
[INFO] [stdout] 104 |     tile_entities: HashMap<Position, Entity>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 105 |     events: HashMap<Position, TileEvent>,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 106 |     tileset_ref: AssetRef<Material>,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/subsystem/components/tiles/tilemap.rs:110:19
[INFO] [stdout]     |
[INFO] [stdout] 109 | impl Tilemap {
[INFO] [stdout]     | ------------ associated items in this implementation
[INFO] [stdout] 110 |     pub(crate) fn new(tileset_ref: AssetRef<Material>) -> Self {
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] ...
[INFO] [stdout] 117 |     pub fn create<F>(infos: TilemapInfo, world: &mut impl World, mut tile_resolver: F) -> Entity
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 170 |     pub fn modify_sprite_tile(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 191 |     pub fn retrieve_sprite_tile(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 210 |     pub fn retrieve_pathing(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 251 |     pub fn retrieve_event(&mut self, tile_position: &Position) -> Option<&mut TileEvent> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 255 |     fn create_tilemap(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `pathing` is never read
[INFO] [stdout]   --> src/subsystem/components/tiles/tileset.rs:19:16
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct Tileset {
[INFO] [stdout]    |            ------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 19 |     pub(crate) pathing: HashMap<String, HashSet<usize>>,
[INFO] [stdout]    |                ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Tileset` 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: associated items `new`, `with_pathing`, and `from_atlas` are never used
[INFO] [stdout]   --> src/subsystem/components/tiles/tileset.rs:23:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl Tileset {
[INFO] [stdout]    | ------------ associated items in this implementation
[INFO] [stdout] 23 |     pub fn new(texture: String, width: usize, height: usize, tile_size: usize) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 27 |     pub fn with_pathing(mut self, pathing: HashMap<String, HashSet<usize>>) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 32 |     pub fn from_atlas(path_to_atlas: &str) -> Result<Self, ()> {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TilesetAtlas` is never constructed
[INFO] [stdout]   --> src/subsystem/components/tiles/tileset.rs:60:19
[INFO] [stdout]    |
[INFO] [stdout] 60 | pub(crate) struct TilesetAtlas {
[INFO] [stdout]    |                   ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `set_tab_index` is never used
[INFO] [stdout]   --> src/subsystem/components/ui/mod.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub trait Focusable{
[INFO] [stdout]    |           --------- method in this trait
[INFO] [stdout] 17 |     fn tab_index(&self) -> usize;
[INFO] [stdout] 18 |     fn set_tab_index(&mut self, tab_index: usize);
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Bitmap` is never constructed
[INFO] [stdout]  --> src/subsystem/components/ui/font.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub enum Font {
[INFO] [stdout]   |          ---- variant in this enum
[INFO] [stdout] 4 |     /// Texture based font
[INFO] [stdout] 5 |     Bitmap {
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Font` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/subsystem/components/ui/ui_image.rs:20:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl UiImage {
[INFO] [stdout]    | ------------ associated function in this implementation
[INFO] [stdout] 19 |     /// Creates a ui_image with `width` and `height` using image at `image_path`
[INFO] [stdout] 20 |     pub fn new(width: f32, height: f32) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `sync_value` is never used
[INFO] [stdout]   --> src/subsystem/components/ui/ui_text.rs:36:12
[INFO] [stdout]    |
[INFO] [stdout] 28 | impl UiText {
[INFO] [stdout]    | ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 36 |     pub fn sync_value(mut self, sync_function: fn(&mut Resources) -> String) -> Self
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `width` and `height` are never read
[INFO] [stdout]   --> src/subsystem/components/ui/ui_input.rs:9:5
[INFO] [stdout]    |
[INFO] [stdout]  7 | pub struct UiInput {
[INFO] [stdout]    |            ------- fields in this struct
[INFO] [stdout]  8 |     text: String,
[INFO] [stdout]  9 |     width: usize,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 10 |     height: usize,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `with_font_size`, `with_font_color`, `with_tab_index`, `width`, and `height` are never used
[INFO] [stdout]   --> src/subsystem/components/ui/ui_input.rs:22:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | impl UiInput{
[INFO] [stdout]    | ------------ associated items in this implementation
[INFO] [stdout] 22 |     pub fn new(width: usize, height: usize, font_ref: AssetRef<Font>) -> Self{
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |     pub fn with_font_size(mut self, font_size: usize) -> Self{
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub fn with_font_color(mut self, color: Color) -> Self{
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |     pub fn with_tab_index(mut self, tab_index: usize) -> Self{
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 52 |     pub fn width(&self) -> usize {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 56 |     pub fn height(&self) -> usize {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `set_cursor`, `resize`, and `dimensions` are never used
[INFO] [stdout]   --> src/subsystem/resources/window.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl Window {
[INFO] [stdout]    | ----------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 29 |     pub fn set_cursor(&mut self, icon: CursorIcon) {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |     pub fn resize(&mut self, width: u32, height: u32) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub fn dimensions(&self) -> (u32, u32) {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/subsystem/resources/inputs/inputs_controller.rs:22:12
[INFO] [stdout]     |
[INFO] [stdout]  15 | impl InputsController {
[INFO] [stdout]     | --------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  22 |     pub fn on_key_pressed<Body>(&self, key: KeyCode, action: Body)
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  30 |     pub fn on_key_released<Body>(&self, key: KeyCode, action: Body)
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  38 |     pub fn on_left_click_pressed<Body>(&self, action: Body)
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  46 |     pub fn on_right_click_pressed<Body>(&self, action: Body)
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  54 |     pub fn on_middle_click_pressed<Body>(&self, action: Body)
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  62 |     pub fn on_left_click_released<Body>(&self, action: Body)
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  70 |     pub fn on_right_click_released<Body>(&self, action: Body)
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  78 |     pub fn on_middle_click_released<Body>(&self, action: Body)
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  91 |     pub fn all_released_events(&self) -> Vec<Input> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  96 |     pub fn all_pressed(&self) -> Vec<Input> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 104 |     pub fn mouse_xy(&self) -> (f64, f64) {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 109 |     pub fn shortcut_pressed(&self, shortcut: &Shortcut) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 120 |     pub fn shortcut_released_event(&self, shortcut: &Shortcut) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `key_pressed`, `keyboard_events`, `on_key_pressed`, `on_key_released`, and `all_pressed` are never used
[INFO] [stdout]   --> src/subsystem/resources/inputs/keyboard.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl Keyboard {
[INFO] [stdout]    | ------------- methods in this implementation
[INFO] [stdout] 13 |     /// Whether or not `key` is currently pressed
[INFO] [stdout] 14 |     pub fn key_pressed(&self, key: &KeyCode) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 19 |     pub fn keyboard_events(&self) -> &Vec<KeyboardEvent> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     pub fn on_key_pressed<Body>(&self, key: KeyCode, mut action: Body)
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 40 |     pub fn on_key_released<Body>(&self, key: KeyCode, mut action: Body)
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 63 |     pub(crate) fn all_pressed(&self) -> Vec<Input> {
[INFO] [stdout]    |                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/subsystem/resources/inputs/mouse.rs:56:19
[INFO] [stdout]     |
[INFO] [stdout]  36 | impl Mouse {
[INFO] [stdout]     | ---------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  56 |     pub(crate) fn on_left_click_pressed<Body>(&self, action: Body)
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  64 |     pub(crate) fn on_right_click_pressed<Body>(&self, action: Body)
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  72 |     pub(crate) fn on_middle_click_pressed<Body>(&self, action: Body)
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  80 |     pub(crate) fn on_left_click_released<Body>(&self, action: Body)
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  88 |     pub(crate) fn on_right_click_released<Body>(&self, action: Body)
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  96 |     pub(crate) fn on_middle_click_released<Body>(&self, action: Body)
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 103 |     fn on_mouse_event<Body>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 126 |     pub(crate) fn all_pressed(&self) -> Vec<Input> {
[INFO] [stdout]     |                   ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 131 |     pub(crate) fn xy(&self) -> (f64, f64) {
[INFO] [stdout]     |                   ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `max_messages` is never read
[INFO] [stdout]   --> src/subsystem/resources/events/mod.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct PollConfiguration {
[INFO] [stdout]    |            ----------------- field in this struct
[INFO] [stdout] 15 |     /// Maximum number of messages a single poll can retrieve
[INFO] [stdout] 16 |     max_messages: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `TopicDoesNotExist` and `SubscriberIdDoesNotExist` are never constructed
[INFO] [stdout]   --> src/subsystem/resources/events/mod.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub enum EventError {
[INFO] [stdout]    |          ---------- variants in this enum
[INFO] [stdout] 28 |     TopicAlreadyExist,
[INFO] [stdout] 29 |     TopicDoesNotExist,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 30 |     SubscriberIdDoesNotExist,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `EventError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `publish`, `subscribe`, and `poll` are never used
[INFO] [stdout]    --> src/subsystem/resources/events/mod.rs:57:12
[INFO] [stdout]     |
[INFO] [stdout]  40 | impl Events {
[INFO] [stdout]     | ----------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  57 |     pub fn publish<T>(&mut self, topic_name: &str, event: T) -> Result<(), EventError>
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  74 |     pub fn subscribe(
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 100 |     pub fn poll<T>(&mut self, subscriber_id: &SubscriberId) -> Result<VecDeque<T>, EventError>
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `publish` is never used
[INFO] [stdout]   --> src/subsystem/resources/events/topic.rs:16:19
[INFO] [stdout]    |
[INFO] [stdout]  7 | impl Topic {
[INFO] [stdout]    | ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 16 |     pub(crate) fn publish(&mut self, message: String) {
[INFO] [stdout]    |                   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `delta_duration` is never used
[INFO] [stdout]   --> src/subsystem/resources/time.rs:41:16
[INFO] [stdout]    |
[INFO] [stdout] 31 |     impl Time {
[INFO] [stdout]    |     --------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 41 |         pub fn delta_duration(&self) -> Duration {
[INFO] [stdout]    |                ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Manual` is never constructed
[INFO] [stdout]   --> src/subsystem/resources/time.rs:56:9
[INFO] [stdout]    |
[INFO] [stdout] 53 |     pub enum TimerType {
[INFO] [stdout]    |              --------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 56 |         Manual,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `elapsed`, `ended`, and `change_cycle` are never used
[INFO] [stdout]    --> src/subsystem/resources/time.rs:120:16
[INFO] [stdout]     |
[INFO] [stdout]  77 |     impl Timer {
[INFO] [stdout]     |     ---------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 120 |         pub fn elapsed(&self) -> f32 {
[INFO] [stdout]     |                ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 125 |         pub fn ended(&self) -> bool {
[INFO] [stdout]     |                ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 138 |         pub fn change_cycle(&mut self, new_cycle: f32) {
[INFO] [stdout]     |                ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `exists` is never used
[INFO] [stdout]    --> src/subsystem/resources/time.rs:183:16
[INFO] [stdout]     |
[INFO] [stdout] 157 |     impl Timers {
[INFO] [stdout]     |     ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 183 |         pub fn exists(&mut self, name: &str) -> bool {
[INFO] [stdout]     |                ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `event_sender` and `sounds_cursor` are never read
[INFO] [stdout]  --> src/subsystem/resources/audio.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct Audio {
[INFO] [stdout]   |            ----- fields in this struct
[INFO] [stdout] 8 |     event_sender: mpsc::Sender<AudioEvent>,
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 9 |     sounds_cursor: usize,
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `play` is never used
[INFO] [stdout]   --> src/subsystem/resources/audio.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl Audio {
[INFO] [stdout]    | ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 24 |     pub fn play(&mut self, path: String, config: PlayConfig) -> Result<usize, Error> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Error` is never used
[INFO] [stdout]   --> src/subsystem/resources/audio.rs:36:10
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub enum Error {
[INFO] [stdout]    |          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `category` is never read
[INFO] [stdout]   --> src/subsystem/resources/audio.rs:49:9
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub struct PlayConfig {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 49 |     pub category: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `register_material`, `register_tileset`, `register_font`, and `retrieve_tileset` are never used
[INFO] [stdout]   --> src/subsystem/resources/asset_manager.rs:28:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl AssetManager {
[INFO] [stdout]    | ----------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 28 |     pub fn register_material(&mut self, material: Material) -> AssetRef<Material> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 34 |     pub fn register_tileset(&mut self, tileset: Tileset) -> AssetRef<Material> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 40 |     pub fn register_font(&mut self, font: Font) -> AssetRef<Font> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |     pub fn retrieve_tileset(&self, asset_ref: &AssetRef<Material>) -> Option<&Tileset> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `VfsFile` is never constructed
[INFO] [stdout]  --> src/subsystem/resources/vfs.rs:2:12
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub struct VfsFile {
[INFO] [stdout]   |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Switch` is never constructed
[INFO] [stdout]   --> src/subsystem/scene.rs:59:5
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub(crate) enum SceneTrans {
[INFO] [stdout]    |                 ---------- variant in this enum
[INFO] [stdout] 59 |     Switch(Box<dyn Scene>),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `switch` is never used
[INFO] [stdout]   --> src/subsystem/scene.rs:72:12
[INFO] [stdout]    |
[INFO] [stdout] 69 | impl SceneController {
[INFO] [stdout]    | -------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub fn switch<T: Scene + Default + 'static>(&mut self) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `test` is never used
[INFO] [stdout]  --> src/subsystem/state.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | impl GameState {
[INFO] [stdout]   | -------------- method in this implementation
[INFO] [stdout] 5 |     pub fn test(&self) -> bool {
[INFO] [stdout]   |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `entities`, `clear`, and `add_default_camera` are never used
[INFO] [stdout]   --> src/subsystem/world.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub trait World {
[INFO] [stdout]    |           ----- methods in this trait
[INFO] [stdout] 25 |     fn entities(&self) -> HashSet<Entity>;
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 26 |     fn clear(&mut self);
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 40 |     fn add_default_camera(&mut self) -> Entity;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `contains_resource`, `remove_resource`, `assets_mut`, and `audio` are never used
[INFO] [stdout]    --> src/subsystem/world.rs:54:12
[INFO] [stdout]     |
[INFO] [stdout]  49 | impl GameData {
[INFO] [stdout]     | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  54 |     pub fn contains_resource<T: Resource>(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  65 |     pub fn remove_resource<T: Resource>(&mut self) -> Option<T> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  92 |     pub fn assets_mut(&self) -> AtomicRefMut<AssetManager> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 116 |     pub fn audio(&self) -> AtomicRefMut<Audio> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/subsystem/world.rs:270:12
[INFO] [stdout]     |
[INFO] [stdout] 269 | impl Resources {
[INFO] [stdout]     | -------------- methods in this implementation
[INFO] [stdout] 270 |     pub fn contains_resource<T: Resource>(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 274 |     pub fn insert_resource<T: Resource>(&mut self, resource: T) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 280 |     pub fn remove_resource<T: Resource>(&mut self) -> Option<T> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 289 |     pub fn get_resource<T: Resource>(&self) -> Option<AtomicRef<T>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 300 |     pub fn assets(&self) -> AtomicRef<AssetManager> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 324 |     pub fn events(&self) -> AtomicRefMut<Events> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 330 |     pub fn audio(&self) -> AtomicRefMut<Audio> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 342 |     pub fn scene_controller(&self) -> AtomicRefMut<SceneController> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `remove_internal` is never used
[INFO] [stdout]    --> src/subsystem/world.rs:370:8
[INFO] [stdout]     |
[INFO] [stdout] 369 | impl InternalResources {
[INFO] [stdout]     | ---------------------- method in this implementation
[INFO] [stdout] 370 |     fn remove_internal(&mut self, type_id: &ResourceTypeId) -> Option<Box<dyn Resource>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `into_inner` is never used
[INFO] [stdout]    --> src/subsystem/world.rs:420:8
[INFO] [stdout]     |
[INFO] [stdout] 415 | impl AtomicResourceCell {
[INFO] [stdout]     | ----------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 420 |     fn into_inner(self) -> Box<dyn Resource> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `parser` is never read
[INFO] [stdout]   --> src/app.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub struct App {
[INFO] [stdout]    |            --- field in this struct
[INFO] [stdout] 27 |     parser: Parser,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `app` and `app_with_config_path` are never used
[INFO] [stdout]   --> src/app.rs:37:12
[INFO] [stdout]    |
[INFO] [stdout] 36 | impl App {
[INFO] [stdout]    | -------- associated functions in this implementation
[INFO] [stdout] 37 |     pub fn app() -> AppBuilder {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 44 |     pub fn app_with_config_path(config_path: impl AsRef<Path>) -> AppBuilder {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `with_renderer` is never used
[INFO] [stdout]    --> src/app.rs:215:12
[INFO] [stdout]     |
[INFO] [stdout] 195 | impl AppBuilder {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 215 |     pub fn with_renderer(mut self, renderer_type: RendererType) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `join` and `get` are never used
[INFO] [stdout]   --> src/utils/file.rs:64:12
[INFO] [stdout]    |
[INFO] [stdout] 63 | impl PathBuilder {
[INFO] [stdout]    | ---------------- methods in this implementation
[INFO] [stdout] 64 |     pub fn join(mut self, path: &str) -> PathBuilder {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 69 |     pub fn get(self) -> String {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/utils/maths.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl Position {
[INFO] [stdout]    | ------------- associated function in this implementation
[INFO] [stdout] 12 |     pub fn new(x: usize, y: usize, z: usize) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Dimensions` is never constructed
[INFO] [stdout]   --> src/utils/maths.rs:30:12
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub struct Dimensions {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `width`, `height`, and `depth` are never used
[INFO] [stdout]   --> src/utils/maths.rs:37:12
[INFO] [stdout]    |
[INFO] [stdout] 36 | impl Dimensions {
[INFO] [stdout]    | --------------- associated items in this implementation
[INFO] [stdout] 37 |     pub fn new(width: usize, height: usize, depth: usize) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub fn width(&self) -> usize {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 |     pub fn height(&self) -> usize {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 49 |     pub fn depth(&self) -> usize {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `set_x`, and `set_y` are never used
[INFO] [stdout]   --> src/utils/maths.rs:62:12
[INFO] [stdout]    |
[INFO] [stdout] 61 | impl Vector {
[INFO] [stdout]    | ----------- associated items in this implementation
[INFO] [stdout] 62 |     pub fn new(x: f32, y: f32) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 74 |     pub fn set_x(&mut self, x: f32) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 78 |     pub fn set_y(&mut self, y: f32) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Custom` is never constructed
[INFO] [stdout]   --> src/rendering/mod.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub enum RendererType {
[INFO] [stdout]    |          ------------ variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 45 |     Custom(Box<dyn Renderer>),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/rendering/gl_representations.rs:9:19
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub(crate) struct GlVec2 {
[INFO] [stdout]   |                   ^^^^^^ field in this struct
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]   --> src/rendering/gl_representations.rs:7:1
[INFO] [stdout]    |
[INFO] [stdout]  7 | / #[repr(C)]
[INFO] [stdout]  8 | | #[derive(Copy, Clone, Debug, bytemuck::Pod, bytemuck::Zeroable)]
[INFO] [stdout]  9 | | pub(crate) struct GlVec2 {
[INFO] [stdout] 10 | |     pub x: f32,
[INFO] [stdout] 11 | |     pub y: f32,
[INFO] [stdout] 12 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/rendering/gl_representations.rs:16:19
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub(crate) struct GlVec3 {
[INFO] [stdout]    |                   ^^^^^^ field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]   --> src/rendering/gl_representations.rs:14:1
[INFO] [stdout]    |
[INFO] [stdout] 14 | / #[repr(C)]
[INFO] [stdout] 15 | | #[derive(Copy, Clone, Debug, bytemuck::Pod, bytemuck::Zeroable)]
[INFO] [stdout] 16 | | pub(crate) struct GlVec3 {
[INFO] [stdout] 17 | |     pub x: f32,
[INFO] [stdout] 18 | |     pub y: f32,
[INFO] [stdout] 19 | |     pub z: f32,
[INFO] [stdout] 20 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/rendering/gl_representations.rs:38:19
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub(crate) struct GlColor {
[INFO] [stdout]    |                   ^^^^^^^ field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]   --> src/rendering/gl_representations.rs:36:1
[INFO] [stdout]    |
[INFO] [stdout] 36 | / #[repr(C)]
[INFO] [stdout] 37 | | #[derive(Copy, Clone, Debug, bytemuck::Pod, bytemuck::Zeroable)]
[INFO] [stdout] 38 | | pub(crate) struct GlColor {
[INFO] [stdout] 39 | |     pub r: f32,
[INFO] [stdout] ...  |
[INFO] [stdout] 42 | |     pub a: f32,
[INFO] [stdout] 43 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/rendering/gl_representations.rs:47:19
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub(crate) struct GlVec4 {
[INFO] [stdout]    |                   ^^^^^^ field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]   --> src/rendering/gl_representations.rs:45:1
[INFO] [stdout]    |
[INFO] [stdout] 45 | / #[repr(C)]
[INFO] [stdout] 46 | | #[derive(Copy, Clone, Debug, bytemuck::Pod, bytemuck::Zeroable)]
[INFO] [stdout] 47 | | pub(crate) struct GlVec4 {
[INFO] [stdout] 48 | |     pub x: f32,
[INFO] [stdout] ...  |
[INFO] [stdout] 51 | |     pub w: f32,
[INFO] [stdout] 52 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/rendering/gl_representations.rs:62:19
[INFO] [stdout]    |
[INFO] [stdout] 62 | pub(crate) struct ColoredGlVertex {
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^ field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]   --> src/rendering/gl_representations.rs:60:1
[INFO] [stdout]    |
[INFO] [stdout] 60 | / #[repr(C)]
[INFO] [stdout] 61 | | #[derive(Copy, Clone, Debug, bytemuck::Pod, bytemuck::Zeroable)]
[INFO] [stdout] 62 | | pub(crate) struct ColoredGlVertex {
[INFO] [stdout] 63 | |     pub position: GlVec3,
[INFO] [stdout] 64 | |     pub color: GlColor,
[INFO] [stdout] 65 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/rendering/gl_representations.rs:90:19
[INFO] [stdout]    |
[INFO] [stdout] 90 | pub(crate) struct TexturedGlVertex {
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^ field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]   --> src/rendering/gl_representations.rs:88:1
[INFO] [stdout]    |
[INFO] [stdout] 88 | / #[repr(C)]
[INFO] [stdout] 89 | | #[derive(Copy, Clone, Debug, bytemuck::Pod, bytemuck::Zeroable)]
[INFO] [stdout] 90 | | pub(crate) struct TexturedGlVertex {
[INFO] [stdout] 91 | |     pub position: GlVec3,
[INFO] [stdout] 92 | |     pub tex_translation: GlVec2,
[INFO] [stdout] 93 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/rendering/gl_representations.rs:128:19
[INFO] [stdout]     |
[INFO] [stdout] 128 | pub(crate) struct GlUniform {
[INFO] [stdout]     |                   ^^^^^^^^^ field in this struct
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]    --> src/rendering/gl_representations.rs:126:1
[INFO] [stdout]     |
[INFO] [stdout] 126 | / #[repr(C)]
[INFO] [stdout] 127 | | #[derive(Copy, Clone, Debug, bytemuck::Pod, bytemuck::Zeroable)]
[INFO] [stdout] 128 | | pub(crate) struct GlUniform {
[INFO] [stdout] 129 | |     pub model_trans: [[f32; 4]; 4],
[INFO] [stdout] 130 | |     pub camera_view: [[f32; 4]; 4],
[INFO] [stdout] 131 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AppConfigReader` is never constructed
[INFO] [stdout]   --> src/config/app_config.rs:68:19
[INFO] [stdout]    |
[INFO] [stdout] 68 | pub(crate) struct AppConfigReader;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `read_or_create_default_scion_json`, `read_app_json`, and `read_app_config` are never used
[INFO] [stdout]   --> src/config/app_config.rs:71:19
[INFO] [stdout]    |
[INFO] [stdout] 70 | impl AppConfigReader {
[INFO] [stdout]    | -------------------- associated functions in this implementation
[INFO] [stdout] 71 |     pub(crate) fn read_or_create_default_scion_json() -> Result<AppConfig, Error> {
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 86 |     pub(crate) fn read_app_json(path: &Path) -> Result<AppConfig, Error> {
[INFO] [stdout]    |                   ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 94 |     fn read_app_config(path: &Path) -> Result<AppConfig, Error> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `with_default_background_color` is never used
[INFO] [stdout]    --> src/config/window_config.rs:112:12
[INFO] [stdout]     |
[INFO] [stdout]  93 | impl WindowConfigBuilder {
[INFO] [stdout]     | ------------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 112 |     pub fn with_default_background_color(mut self, color: Option<Color>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/subsystem/components/shapes/line.rs:56:33
[INFO] [stdout]    |
[INFO] [stdout] 56 |     fn vertex_buffer_descriptor(&mut self, _material: Option<&Material>) -> BufferInitDescriptor {
[INFO] [stdout]    |                                 ^^^^^^^^^ the lifetime is elided here       ^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden 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] 56 |     fn vertex_buffer_descriptor(&mut self, _material: Option<&Material>) -> BufferInitDescriptor<'_> {
[INFO] [stdout]    |                                                                                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/subsystem/components/shapes/line.rs:64:34
[INFO] [stdout]    |
[INFO] [stdout] 64 |     fn indexes_buffer_descriptor(&self) -> BufferInitDescriptor {
[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] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 64 |     fn indexes_buffer_descriptor(&self) -> BufferInitDescriptor<'_> {
[INFO] [stdout]    |                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/subsystem/components/shapes/polygon.rs:59:33
[INFO] [stdout]    |
[INFO] [stdout] 59 |     fn vertex_buffer_descriptor(&mut self, _material: Option<&Material>) -> BufferInitDescriptor {
[INFO] [stdout]    |                                 ^^^^^^^^^ the lifetime is elided here       ^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 59 |     fn vertex_buffer_descriptor(&mut self, _material: Option<&Material>) -> BufferInitDescriptor<'_> {
[INFO] [stdout]    |                                                                                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/subsystem/components/shapes/polygon.rs:67:34
[INFO] [stdout]    |
[INFO] [stdout] 67 |     fn indexes_buffer_descriptor(&self) -> BufferInitDescriptor {
[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] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 67 |     fn indexes_buffer_descriptor(&self) -> BufferInitDescriptor<'_> {
[INFO] [stdout]    |                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/subsystem/components/shapes/rectangle.rs:117:33
[INFO] [stdout]     |
[INFO] [stdout] 117 |     fn vertex_buffer_descriptor(&mut self, _material: Option<&Material>) -> BufferInitDescriptor {
[INFO] [stdout]     |                                 ^^^^^^^^^ the lifetime is elided here       ^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 117 |     fn vertex_buffer_descriptor(&mut self, _material: Option<&Material>) -> BufferInitDescriptor<'_> {
[INFO] [stdout]     |                                                                                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/subsystem/components/shapes/rectangle.rs:125:34
[INFO] [stdout]     |
[INFO] [stdout] 125 |     fn indexes_buffer_descriptor(&self) -> BufferInitDescriptor {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 125 |     fn indexes_buffer_descriptor(&self) -> BufferInitDescriptor<'_> {
[INFO] [stdout]     |                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/subsystem/components/shapes/square.rs:66:33
[INFO] [stdout]    |
[INFO] [stdout] 66 |     fn vertex_buffer_descriptor(&mut self, _material: Option<&Material>) -> BufferInitDescriptor {
[INFO] [stdout]    |                                 ^^^^^^^^^ the lifetime is elided here       ^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 66 |     fn vertex_buffer_descriptor(&mut self, _material: Option<&Material>) -> BufferInitDescriptor<'_> {
[INFO] [stdout]    |                                                                                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/subsystem/components/shapes/square.rs:74:34
[INFO] [stdout]    |
[INFO] [stdout] 74 |     fn indexes_buffer_descriptor(&self) -> BufferInitDescriptor {
[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] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 74 |     fn indexes_buffer_descriptor(&self) -> BufferInitDescriptor<'_> {
[INFO] [stdout]    |                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/subsystem/components/shapes/triangle.rs:63:33
[INFO] [stdout]    |
[INFO] [stdout] 63 |     fn vertex_buffer_descriptor(&mut self, _material: Option<&Material>) -> BufferInitDescriptor {
[INFO] [stdout]    |                                 ^^^^^^^^^ the lifetime is elided here       ^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 63 |     fn vertex_buffer_descriptor(&mut self, _material: Option<&Material>) -> BufferInitDescriptor<'_> {
[INFO] [stdout]    |                                                                                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/subsystem/components/shapes/triangle.rs:71:34
[INFO] [stdout]    |
[INFO] [stdout] 71 |     fn indexes_buffer_descriptor(&self) -> BufferInitDescriptor {
[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] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 71 |     fn indexes_buffer_descriptor(&self) -> BufferInitDescriptor<'_> {
[INFO] [stdout]    |                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/subsystem/components/tiles/sprite.rs:85:33
[INFO] [stdout]    |
[INFO] [stdout] 85 |     fn vertex_buffer_descriptor(&mut self, material: Option<&Material>) -> BufferInitDescriptor {
[INFO] [stdout]    |                                 ^^^^^^^^^ the lifetime is elided here      ^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 85 |     fn vertex_buffer_descriptor(&mut self, material: Option<&Material>) -> BufferInitDescriptor<'_> {
[INFO] [stdout]    |                                                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/subsystem/components/tiles/sprite.rs:97:34
[INFO] [stdout]    |
[INFO] [stdout] 97 |     fn indexes_buffer_descriptor(&self) -> BufferInitDescriptor {
[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] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 97 |     fn indexes_buffer_descriptor(&self) -> BufferInitDescriptor<'_> {
[INFO] [stdout]    |                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/subsystem/components/tiles/tilemap.rs:265:33
[INFO] [stdout]     |
[INFO] [stdout] 265 |     fn vertex_buffer_descriptor(&mut self, _material: Option<&Material>) -> BufferInitDescriptor {
[INFO] [stdout]     |                                 ^^^^^^^^^ the lifetime is elided here       ^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 265 |     fn vertex_buffer_descriptor(&mut self, _material: Option<&Material>) -> BufferInitDescriptor<'_> {
[INFO] [stdout]     |                                                                                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/subsystem/components/tiles/tilemap.rs:269:34
[INFO] [stdout]     |
[INFO] [stdout] 269 |     fn indexes_buffer_descriptor(&self) -> BufferInitDescriptor {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 269 |     fn indexes_buffer_descriptor(&self) -> BufferInitDescriptor<'_> {
[INFO] [stdout]     |                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/subsystem/components/ui/ui_image.rs:53:33
[INFO] [stdout]    |
[INFO] [stdout] 53 |     fn vertex_buffer_descriptor(&mut self, _material: Option<&Material>) -> BufferInitDescriptor {
[INFO] [stdout]    |                                 ^^^^^^^^^ the lifetime is elided here       ^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 53 |     fn vertex_buffer_descriptor(&mut self, _material: Option<&Material>) -> BufferInitDescriptor<'_> {
[INFO] [stdout]    |                                                                                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/subsystem/components/ui/ui_image.rs:61:34
[INFO] [stdout]    |
[INFO] [stdout] 61 |     fn indexes_buffer_descriptor(&self) -> BufferInitDescriptor {
[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] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 61 |     fn indexes_buffer_descriptor(&self) -> BufferInitDescriptor<'_> {
[INFO] [stdout]    |                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/subsystem/components/ui/ui_text.rs:90:33
[INFO] [stdout]    |
[INFO] [stdout] 90 |     fn vertex_buffer_descriptor(&mut self, material: Option<&Material>) -> BufferInitDescriptor {
[INFO] [stdout]    |                                 ^^^^^^^^^ the lifetime is elided here      ^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 90 |     fn vertex_buffer_descriptor(&mut self, material: Option<&Material>) -> BufferInitDescriptor<'_> {
[INFO] [stdout]    |                                                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/subsystem/components/ui/ui_text.rs:94:34
[INFO] [stdout]    |
[INFO] [stdout] 94 |     fn indexes_buffer_descriptor(&self) -> BufferInitDescriptor {
[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] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 94 |     fn indexes_buffer_descriptor(&self) -> BufferInitDescriptor<'_> {
[INFO] [stdout]    |                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/subsystem/world.rs:75:38
[INFO] [stdout]    |
[INFO] [stdout] 75 |     pub fn get_resource<T: Resource>(&self) -> Option<AtomicRef<T>> {
[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] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 75 |     pub fn get_resource<T: Resource>(&self) -> Option<AtomicRef<'_, T>> {
[INFO] [stdout]    |                                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/subsystem/world.rs:80:42
[INFO] [stdout]    |
[INFO] [stdout] 80 |     pub fn get_resource_mut<T: Resource>(&self) -> Option<AtomicRefMut<T>> {
[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] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 80 |     pub fn get_resource_mut<T: Resource>(&self) -> Option<AtomicRefMut<'_, T>> {
[INFO] [stdout]    |                                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/subsystem/world.rs:86:19
[INFO] [stdout]    |
[INFO] [stdout] 86 |     pub fn assets(&self) -> AtomicRef<AssetManager> {
[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] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 86 |     pub fn assets(&self) -> AtomicRef<'_, AssetManager> {
[INFO] [stdout]    |                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/subsystem/world.rs:92:23
[INFO] [stdout]    |
[INFO] [stdout] 92 |     pub fn assets_mut(&self) -> AtomicRefMut<AssetManager> {
[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] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 92 |     pub fn assets_mut(&self) -> AtomicRefMut<'_, AssetManager> {
[INFO] [stdout]    |                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/subsystem/world.rs:98:19
[INFO] [stdout]    |
[INFO] [stdout] 98 |     pub fn timers(&self) -> AtomicRefMut<Timers> {
[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] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 98 |     pub fn timers(&self) -> AtomicRefMut<'_, Timers> {
[INFO] [stdout]    |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/subsystem/world.rs:104:19
[INFO] [stdout]     |
[INFO] [stdout] 104 |     pub fn inputs(&self) -> AtomicRefMut<InputsController> {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 104 |     pub fn inputs(&self) -> AtomicRefMut<'_, InputsController> {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/subsystem/world.rs:110:19
[INFO] [stdout]     |
[INFO] [stdout] 110 |     pub fn events(&self) -> AtomicRefMut<Events> {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 110 |     pub fn events(&self) -> AtomicRefMut<'_, Events> {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/subsystem/world.rs:116:18
[INFO] [stdout]     |
[INFO] [stdout] 116 |     pub fn audio(&self) -> AtomicRefMut<Audio> {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 116 |     pub fn audio(&self) -> AtomicRefMut<'_, Audio> {
[INFO] [stdout]     |                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/subsystem/world.rs:122:19
[INFO] [stdout]     |
[INFO] [stdout] 122 |     pub fn window(&self) -> AtomicRefMut<Window> {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 122 |     pub fn window(&self) -> AtomicRefMut<'_, Window> {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/subsystem/world.rs:128:29
[INFO] [stdout]     |
[INFO] [stdout] 128 |     pub fn scene_controller(&self) -> AtomicRefMut<SceneController> {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 128 |     pub fn scene_controller(&self) -> AtomicRefMut<'_, SceneController> {
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/subsystem/world.rs:134:30
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub(crate) fn font_atlas(&self) -> AtomicRefMut<FontAtlas> {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub(crate) fn font_atlas(&self) -> AtomicRefMut<'_, FontAtlas> {
[INFO] [stdout]     |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/subsystem/world.rs:141:33
[INFO] [stdout]     |
[INFO] [stdout] 141 |     pub(crate) fn focus_manager(&self) -> AtomicRefMut<FocusManager> {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 141 |     pub(crate) fn focus_manager(&self) -> AtomicRefMut<'_, FocusManager> {
[INFO] [stdout]     |                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/subsystem/world.rs:289:38
[INFO] [stdout]     |
[INFO] [stdout] 289 |     pub fn get_resource<T: Resource>(&self) -> Option<AtomicRef<T>> {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 289 |     pub fn get_resource<T: Resource>(&self) -> Option<AtomicRef<'_, T>> {
[INFO] [stdout]     |                                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/subsystem/world.rs:294:42
[INFO] [stdout]     |
[INFO] [stdout] 294 |     pub fn get_resource_mut<T: Resource>(&self) -> Option<AtomicRefMut<T>> {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 294 |     pub fn get_resource_mut<T: Resource>(&self) -> Option<AtomicRefMut<'_, T>> {
[INFO] [stdout]     |                                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/subsystem/world.rs:300:19
[INFO] [stdout]     |
[INFO] [stdout] 300 |     pub fn assets(&self) -> AtomicRef<AssetManager> {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 300 |     pub fn assets(&self) -> AtomicRef<'_, AssetManager> {
[INFO] [stdout]     |                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/subsystem/world.rs:306:23
[INFO] [stdout]     |
[INFO] [stdout] 306 |     pub fn assets_mut(&self) -> AtomicRefMut<AssetManager> {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 306 |     pub fn assets_mut(&self) -> AtomicRefMut<'_, AssetManager> {
[INFO] [stdout]     |                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/subsystem/world.rs:312:19
[INFO] [stdout]     |
[INFO] [stdout] 312 |     pub fn timers(&self) -> AtomicRefMut<Timers> {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 312 |     pub fn timers(&self) -> AtomicRefMut<'_, Timers> {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/subsystem/world.rs:318:19
[INFO] [stdout]     |
[INFO] [stdout] 318 |     pub fn inputs(&self) -> AtomicRefMut<InputsController> {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 318 |     pub fn inputs(&self) -> AtomicRefMut<'_, InputsController> {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/subsystem/world.rs:324:19
[INFO] [stdout]     |
[INFO] [stdout] 324 |     pub fn events(&self) -> AtomicRefMut<Events> {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 324 |     pub fn events(&self) -> AtomicRefMut<'_, Events> {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/subsystem/world.rs:330:18
[INFO] [stdout]     |
[INFO] [stdout] 330 |     pub fn audio(&self) -> AtomicRefMut<Audio> {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 330 |     pub fn audio(&self) -> AtomicRefMut<'_, Audio> {
[INFO] [stdout]     |                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/subsystem/world.rs:336:19
[INFO] [stdout]     |
[INFO] [stdout] 336 |     pub fn window(&self) -> AtomicRefMut<Window> {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 336 |     pub fn window(&self) -> AtomicRefMut<'_, Window> {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/subsystem/world.rs:342:29
[INFO] [stdout]     |
[INFO] [stdout] 342 |     pub fn scene_controller(&self) -> AtomicRefMut<SceneController> {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 342 |     pub fn scene_controller(&self) -> AtomicRefMut<'_, SceneController> {
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/subsystem/world.rs:348:30
[INFO] [stdout]     |
[INFO] [stdout] 348 |     pub(crate) fn font_atlas(&self) -> AtomicRefMut<FontAtlas> {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 348 |     pub(crate) fn font_atlas(&self) -> AtomicRefMut<'_, FontAtlas> {
[INFO] [stdout]     |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/subsystem/world.rs:354:33
[INFO] [stdout]     |
[INFO] [stdout] 354 |     pub(crate) fn focus_manager(&self) -> AtomicRefMut<FocusManager> {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 354 |     pub(crate) fn focus_manager(&self) -> AtomicRefMut<'_, FocusManager> {
[INFO] [stdout]     |                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/subsystem/world.rs:424:29
[INFO] [stdout]     |
[INFO] [stdout] 424 |     pub fn get<T: Resource>(&self) -> AtomicRef<T> {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 424 |     pub fn get<T: Resource>(&self) -> AtomicRef<'_, T> {
[INFO] [stdout]     |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/subsystem/world.rs:429:33
[INFO] [stdout]     |
[INFO] [stdout] 429 |     pub fn get_mut<T: Resource>(&self) -> AtomicRefMut<T> {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 429 |     pub fn get_mut<T: Resource>(&self) -> AtomicRefMut<'_, T> {
[INFO] [stdout]     |                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/rendering/mod.rs:64:33
[INFO] [stdout]    |
[INFO] [stdout] 64 |     fn vertex_buffer_descriptor(&mut self, material: Option<&Material>) -> BufferInitDescriptor;
[INFO] [stdout]    |                                 ^^^^^^^^^ the lifetime is elided here      ^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 64 |     fn vertex_buffer_descriptor(&mut self, material: Option<&Material>) -> BufferInitDescriptor<'_>;
[INFO] [stdout]    |                                                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/rendering/mod.rs:65:34
[INFO] [stdout]    |
[INFO] [stdout] 65 |     fn indexes_buffer_descriptor(&self) -> BufferInitDescriptor;
[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] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 65 |     fn indexes_buffer_descriptor(&self) -> BufferInitDescriptor<'_>;
[INFO] [stdout]    |                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]   --> src/rendering/renderer_state.rs:28:32
[INFO] [stdout]    |
[INFO] [stdout] 28 |         let (_size, surface) = unsafe {
[INFO] [stdout]    |                                ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]   --> src/main.rs:32:28
[INFO] [stdout]    |
[INFO] [stdout] 32 |     fn on_start(&mut self, data: &mut GameData) {
[INFO] [stdout]    |                            ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `SavedStackInfo` is more private than the item `script::Variant::_SavedStackInfo::0`
[INFO] [stdout]   --> src/script/mod.rs:31:21
[INFO] [stdout]    |
[INFO] [stdout] 31 |     _SavedStackInfo(SavedStackInfo),
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^ field `script::Variant::_SavedStackInfo::0` is reachable at visibility `pub(crate)`
[INFO] [stdout]    |
[INFO] [stdout] note: but type `SavedStackInfo` is only usable at visibility `pub(self)`
[INFO] [stdout]   --> src/script/mod.rs:12:1
[INFO] [stdout]    |
[INFO] [stdout] 12 | struct SavedStackInfo {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `SavedStackInfo` is more private than the item `script::Variant::as_saved_stack_info`
[INFO] [stdout]    --> src/script/mod.rs:102:5
[INFO] [stdout]     |
[INFO] [stdout] 102 |     pub fn as_saved_stack_info(&self) -> Option<&SavedStackInfo> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `script::Variant::as_saved_stack_info` is reachable at visibility `pub(crate)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `SavedStackInfo` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/script/mod.rs:12:1
[INFO] [stdout]     |
[INFO] [stdout]  12 | struct SavedStackInfo {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SavedStackInfo` is never constructed
[INFO] [stdout]   --> src/script/mod.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | struct SavedStackInfo {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Variant` is never used
[INFO] [stdout]   --> src/script/mod.rs:20:10
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub enum Variant {
[INFO] [stdout]    |          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/script/mod.rs:35:12
[INFO] [stdout]     |
[INFO] [stdout]  34 | impl Variant {
[INFO] [stdout]     | ------------ methods in this implementation
[INFO] [stdout]  35 |     pub fn is_nil(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  39 |     pub fn is_true(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  43 |     pub fn is_int(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  47 |     pub fn is_float(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  51 |     pub fn is_string(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  55 |     pub fn is_table(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  59 |     pub fn is_saved_stack_info(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  63 |     pub fn canbe_true(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  67 |     pub fn as_int(&self) -> Option<i32> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  74 |     pub fn as_float(&self) -> Option<f32> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  81 |     pub fn as_string(&self) -> Option<&String> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  88 |     pub fn as_table(&self) -> Option<&HashMap<i32, Variant>> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  95 |     pub fn as_table_mut(&mut self) -> Option<&mut HashMap<i32, Variant>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 102 |     pub fn as_saved_stack_info(&self) -> Option<&SavedStackInfo> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 109 |     pub fn set_nil(&mut self) {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 113 |     pub fn vadd(&mut self, other: &Variant) {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 117 |     pub fn vsub(&mut self, other: &Variant) {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 121 |     pub fn vmul(&mut self, other: &Variant) {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 125 |     pub fn vdiv(&mut self, other: &Variant) {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 129 |     pub fn vmod(&mut self, other: &Variant) {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 133 |     pub fn neg(&mut self) {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 141 |     pub fn and(&mut self, other: &Variant) {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 152 |     pub fn or(&mut self, other: &Variant) {
[INFO] [stdout]     |            ^^
[INFO] [stdout] ...
[INFO] [stdout] 161 |     pub fn equal(&mut self, other: &Variant) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 213 |     pub fn not_equal(&mut self, other: &Variant) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 265 |     pub fn greater(&mut self, other: &Variant) {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     pub fn less(&mut self, other: &Variant) {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 375 |     pub fn greater_equal(&mut self, other: &Variant) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 387 |     pub fn less_equal(&mut self, other: &Variant) {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `vm_add` is never used
[INFO] [stdout]    --> src/script/mod.rs:400:8
[INFO] [stdout]     |
[INFO] [stdout] 400 | pub fn vm_add(a: Variant, b: Variant) -> Variant {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `vm_sub` is never used
[INFO] [stdout]    --> src/script/mod.rs:426:8
[INFO] [stdout]     |
[INFO] [stdout] 426 | pub fn vm_sub(a: Variant, b: Variant) -> Variant {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `vm_mul` is never used
[INFO] [stdout]    --> src/script/mod.rs:451:8
[INFO] [stdout]     |
[INFO] [stdout] 451 | pub fn vm_mul(a: Variant, b: Variant) -> Variant {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `vm_div` is never used
[INFO] [stdout]    --> src/script/mod.rs:481:8
[INFO] [stdout]     |
[INFO] [stdout] 481 | pub fn vm_div(a: Variant, b: Variant) -> Variant {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `vm_mod` is never used
[INFO] [stdout]    --> src/script/mod.rs:518:4
[INFO] [stdout]     |
[INFO] [stdout] 518 | fn vm_mod(a: Variant, b: Variant) -> Variant {
[INFO] [stdout]     |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `VmSyscall` is never used
[INFO] [stdout]    --> src/script/mod.rs:525:11
[INFO] [stdout]     |
[INFO] [stdout] 525 | pub trait VmSyscall {
[INFO] [stdout]     |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `MAX_STACK_SIZE` is never used
[INFO] [stdout]   --> src/script/context.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | static MAX_STACK_SIZE: usize = 0x100;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `DEFAULT_TIME_SLICE` is never used
[INFO] [stdout]   --> src/script/context.rs:14:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | static DEFAULT_TIME_SLICE: u64 = 50;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `StackFrame` is never constructed
[INFO] [stdout]   --> src/script/context.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct StackFrame {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `ContextState` is never used
[INFO] [stdout]   --> src/script/context.rs:23:10
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub enum ContextState {
[INFO] [stdout]    |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Context` is never constructed
[INFO] [stdout]   --> src/script/context.rs:40:12
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub struct Context {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/script/context.rs:58:12
[INFO] [stdout]     |
[INFO] [stdout]  57 | impl Context {
[INFO] [stdout]     | ------------ associated items in this implementation
[INFO] [stdout]  58 |     pub fn new(start_addr: u32) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  73 |     fn to_global_offset(&self) -> Result<usize> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  88 |     fn push(&mut self, value: Variant) -> Result<()> {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 103 |     fn pop(&mut self) -> Result<Variant> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 122 |     fn top(&mut self) -> Result<Variant> {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 126 |     fn top_frame(&self) -> Result<&StackFrame> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 |     fn get_local(&self, offset: i8) -> Result<Variant> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 158 |     fn get_local_mut(&mut self, offset: i8) -> Result<&mut Variant> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 181 |     fn set_local(&mut self, offset: i8, value: Variant) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 203 |     pub fn nop(&mut self) -> Result<()> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 211 |     pub fn init_stack(&mut self, parser: &mut Parser) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 244 |     pub fn call(&mut self, parser: &mut Parser) -> Result<()> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 272 |     pub fn syscall(&mut self, sys: impl VmSyscall, parser: &mut Parser) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 294 |     pub fn ret(&mut self) -> Result<()> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 310 |     pub fn retv(&mut self) -> Result<()> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 325 |     pub fn jmp(&mut self, parser: &mut Parser) -> Result<()> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 336 |     pub fn jz(&mut self, parser: &mut Parser) -> Result<()> {
[INFO] [stdout]     |            ^^
[INFO] [stdout] ...
[INFO] [stdout] 351 |     pub fn push_nil(&mut self) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 359 |     pub fn push_true(&mut self) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 367 |     pub fn push_i32(&mut self, parser: &mut Parser) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 378 |     pub fn push_i16(&mut self, parser: &mut Parser) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 389 |     pub fn push_i8(&mut self, parser: &mut Parser) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 400 |     pub fn push_f32(&mut self, parser: &mut Parser) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 411 |     pub fn push_string(&mut self, parser: &mut Parser) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 425 |     pub fn push_global(&mut self, parser: &mut Parser, global: &mut Global) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 440 |     pub fn push_stack(&mut self, parser: &mut Parser) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 455 |     pub fn push_global_table(&mut self, parser: &mut Parser, global: &mut Global) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 489 |     pub fn push_local_table(&mut self, parser: &mut Parser) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 518 |     pub fn push_top(&mut self) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 527 |     pub fn push_return_value(&mut self) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 536 |     pub fn pop_global(&mut self, parser: &mut Parser, global: &mut Global) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 548 |     pub fn local_copy(&mut self, parser: &mut Parser) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 560 |     pub fn pop_global_table(&mut self, parser: &mut Parser, global: &mut Global) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 586 |     pub fn pop_local_table(&mut self, parser: &mut Parser) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 609 |     pub fn neg(&mut self) -> Result<()> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 620 |     pub fn add(&mut self) -> Result<()> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 631 |     pub fn sub(&mut self) -> Result<()> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 642 |     pub fn mul(&mut self) -> Result<()> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 653 |     pub fn div(&mut self) -> Result<()> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 664 |     pub fn modulo(&mut self) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 675 |     pub fn bittest(&mut self) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 690 |     pub fn and(&mut self) -> Result<()> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 701 |     pub fn or(&mut self) -> Result<()> {
[INFO] [stdout]     |            ^^
[INFO] [stdout] ...
[INFO] [stdout] 712 |     pub fn sete(&mut self) -> Result<()> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 723 |     pub fn setne(&mut self) -> Result<()> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 734 |     pub fn setg(&mut self) -> Result<()> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 745 |     pub fn setle(&mut self) -> Result<()> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 756 |     pub fn setl(&mut self) -> Result<()> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 767 |     pub fn setge(&mut self) -> Result<()> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Scheduler` is never constructed
[INFO] [stdout]  --> src/script/scheduler.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct Scheduler {
[INFO] [stdout]   |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Opcode` is never used
[INFO] [stdout]   --> src/script/scheduler.rs:13:6
[INFO] [stdout]    |
[INFO] [stdout] 13 | enum Opcode {
[INFO] [stdout]    |      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/script/scheduler.rs:107:12
[INFO] [stdout]     |
[INFO] [stdout] 106 | impl Scheduler {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 107 |     pub fn new(parser: Parser, global: Global) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 115 |     pub fn add(&mut self, id: u32, context: Context) {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn remove(&mut self, id: u32) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 123 |     pub fn get(&self, id: u32) -> Option<&Context> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 127 |     pub fn get_mut(&mut self, id: u32) -> Option<&mut Context> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 132 |     fn dispatch_opcode(&mut self, syscaller: impl VmSyscall, context: &mut Context) -> Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 264 |     pub fn execute(&mut self, _syscall: impl VmSyscall) -> Result<()> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `GBK` and `UTF8` are never constructed
[INFO] [stdout]   --> src/script/parser.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub enum Nls {
[INFO] [stdout]    |          --- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 14 |     GBK = 1,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 15 |     UTF8 = 2,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Nls` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `args` and `name` are never read
[INFO] [stdout]   --> src/script/parser.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct Syscall {
[INFO] [stdout]    |            ------- fields in this struct
[INFO] [stdout] 20 |     /// how many arguments the syscall takes from the stack
[INFO] [stdout] 21 |     pub args: u8,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 22 |     /// name of the syscall
[INFO] [stdout] 23 |     pub name: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Syscall` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `read_i8`, `read_i16`, `read_i32`, `is_code_area`, and `get_syscall` are never used
[INFO] [stdout]    --> src/script/parser.rs:98:12
[INFO] [stdout]     |
[INFO] [stdout]  44 | impl Parser {
[INFO] [stdout]     | ----------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  98 |     pub fn read_i8(&self, offset: usize) -> Result<i8> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 106 |     pub fn read_i16(&self, offset: usize) -> Result<i16> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 114 |     pub fn read_i32(&self, offset: usize) -> Result<i32> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 214 |     pub fn is_code_area(&self, addr: u32) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 218 |     pub fn get_syscall(&self, id: u16) -> Option<&Syscall> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Global` is never constructed
[INFO] [stdout]   --> src/script/global.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct Global {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `load_from_file`, `save_to_file`, `get`, `get_mut`, and `set` are never used
[INFO] [stdout]   --> src/script/global.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl Global {
[INFO] [stdout]    | ----------- associated items in this implementation
[INFO] [stdout] 19 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 25 |     pub fn load_from_file(path: impl AsRef<Path>) -> Result<Self> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 34 |     pub fn save_to_file(&self, path: impl AsRef<Path>) -> Result<()> {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub fn get(&self, key: u16) -> Option<&Variant> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 |     pub fn get_mut(&mut self, key: u16) -> Option<&mut Variant> {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 49 |     pub fn set(&mut self, key: u16, value: Variant) {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]   --> src/subsystem/components/animations.rs:23:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl Animations {
[INFO] [stdout]    | --------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 23 |     pub fn single(name: &str, animation: Animation) -> Self {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 29 |     fn run(&mut self, animation_name: &str, status: AnimationStatus) -> bool {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 47 |     pub fn run_animation(&mut self, animation_name: &str) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 52 |     pub fn animation_running(&mut self, animation_name: &str) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 61 |     pub fn loop_animation(&mut self, animation_name: &str) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 66 |     pub fn stop_animation(&mut self, animation_name: &str, force: bool) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 79 |     pub fn stop_all_animation(&mut self, force: bool) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 85 |     fn stop_single_animation(force: bool, animation: &mut Animation) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `running` and `looping` are never used
[INFO] [stdout]    --> src/subsystem/components/animations.rs:143:12
[INFO] [stdout]     |
[INFO] [stdout] 134 | impl Animation {
[INFO] [stdout]     | -------------- associated functions in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 143 |     pub fn running(duration: Duration, mut modifiers: Vec<AnimationModifier>) -> Self {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 150 |     pub fn looping(duration: Duration, mut modifiers: Vec<AnimationModifier>) -> Self {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `transform`, `sprite`, `sprite_with_variant`, `color`, `blink`, and `text` are never used
[INFO] [stdout]    --> src/subsystem/components/animations.rs:213:12
[INFO] [stdout]     |
[INFO] [stdout] 198 | impl AnimationModifier {
[INFO] [stdout]     | ---------------------- associated functions in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 213 |     pub fn transform(
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 225 |     pub fn sprite(tile_numbers: Vec<usize>, end_tile_number: usize) -> Self {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 237 |     pub fn sprite_with_variant(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 254 |     pub fn color(number_of_keyframes: usize, target_color: Color) -> Self {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 262 |     pub fn blink(number_of_blinks: usize) -> Self {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 267 |     pub fn text(content: String) -> Self {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `SpriteModifier`, `Color`, `Text`, and `Blink` are never constructed
[INFO] [stdout]    --> src/subsystem/components/animations.rs:319:5
[INFO] [stdout]     |
[INFO] [stdout] 313 | pub enum AnimationModifierType {
[INFO] [stdout]     |          --------------------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 319 |     SpriteModifier {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 324 |     Color {
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 327 |     Text {
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 330 |     Blink,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `AnimationModifierType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Pivot` is never used
[INFO] [stdout]  --> src/subsystem/components/maths/mod.rs:8:10
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub enum Pivot {
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Death` and `Custom` are never constructed
[INFO] [stdout]   --> src/subsystem/components/maths/collider.rs:29:5
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub enum ColliderMask {
[INFO] [stdout]    |          ------------ variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 29 |     Death,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 30 |     Landscape,
[INFO] [stdout] 31 |     Custom(String),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ColliderMask` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Rectangle` is never constructed
[INFO] [stdout]   --> src/subsystem/components/maths/collider.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub enum ColliderType {
[INFO] [stdout]    |          ------------ variant in this enum
[INFO] [stdout] 37 |     Square(usize),
[INFO] [stdout] 38 |     Rectangle(usize, usize),
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ColliderType` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `is_colliding` and `mask_cloned` are never used
[INFO] [stdout]   --> src/subsystem/components/maths/collider.rs:81:12
[INFO] [stdout]    |
[INFO] [stdout] 52 | impl Collider {
[INFO] [stdout]    | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 81 |     pub fn is_colliding(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 96 |     pub fn mask_cloned(&self) -> ColliderMask {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `mask`, `entity`, and `coordinates` are never read
[INFO] [stdout]    --> src/subsystem/components/maths/collider.rs:227:16
[INFO] [stdout]     |
[INFO] [stdout] 226 | pub struct Collision {
[INFO] [stdout]     |            --------- fields in this struct
[INFO] [stdout] 227 |     pub(crate) mask: ColliderMask,
[INFO] [stdout]     |                ^^^^
[INFO] [stdout] 228 |     pub(crate) entity: Entity,
[INFO] [stdout]     |                ^^^^^^
[INFO] [stdout] 229 |     pub(crate) coordinates: Coordinates,
[INFO] [stdout]     |                ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Collision` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `entity`, `mask`, and `coordinates` are never used
[INFO] [stdout]    --> src/subsystem/components/maths/collider.rs:233:12
[INFO] [stdout]     |
[INFO] [stdout] 232 | impl Collision {
[INFO] [stdout]     | -------------- methods in this implementation
[INFO] [stdout] 233 |     pub fn entity(&self) -> &Entity {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 236 |     pub fn mask(&self) -> &ColliderMask {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 239 |     pub fn coordinates(&self) -> &Coordinates {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `set_z` is never used
[INFO] [stdout]   --> src/subsystem/components/maths/coordinates.rs:37:12
[INFO] [stdout]    |
[INFO] [stdout]  8 | impl Coordinates {
[INFO] [stdout]    | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 37 |     pub fn set_z(&mut self, z: usize) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `append_vector`, `set_max_x`, `set_min_y`, `set_max_y`, `set_use_screen_as_origin`, and `set_global_translation_bounds` are never used
[INFO] [stdout]    --> src/subsystem/components/maths/transform.rs:77:12
[INFO] [stdout]     |
[INFO] [stdout]  41 | impl Transform {
[INFO] [stdout]     | -------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  77 |     pub fn append_vector(&mut self, vector: Vector) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 137 |     pub fn set_max_x(&mut self, max_x: Option<f32>) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 143 |     pub fn set_min_y(&mut self, min_y: Option<f32>) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 149 |     pub fn set_max_y(&mut self, max_y: Option<f32>) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 154 |     pub fn set_use_screen_as_origin(&mut self, new_value: bool) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 160 |     pub fn set_global_translation_bounds(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TransformBuilder` is never constructed
[INFO] [stdout]    --> src/subsystem/components/maths/transform.rs:212:12
[INFO] [stdout]     |
[INFO] [stdout] 212 | pub struct TransformBuilder {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/subsystem/components/maths/transform.rs:217:12
[INFO] [stdout]     |
[INFO] [stdout] 216 | impl TransformBuilder {
[INFO] [stdout]     | --------------------- associated items in this implementation
[INFO] [stdout] 217 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 221 |     pub fn with_xy(mut self, x: f32, y: f32) -> Self {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 227 |     pub fn with_translation(mut self, x: f32, y: f32, z: usize) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 234 |     pub fn with_scale(mut self, scale: f32) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 239 |     pub fn with_angle(mut self, angle: f32) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 244 |     pub fn with_screen_as_origin(mut self) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 249 |     pub fn build(self) -> Transform {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `vertices` is never read
[INFO] [stdout]   --> src/subsystem/components/shapes/line.rs:17:9
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct Line {
[INFO] [stdout]    |            ---- field in this struct
[INFO] [stdout] 17 |     pub vertices: [Coordinates; 2],
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `pivot`, and `new_with_offset` are never used
[INFO] [stdout]   --> src/subsystem/components/shapes/line.rs:23:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | impl Line {
[INFO] [stdout]    | --------- associated items in this implementation
[INFO] [stdout] 22 |     /// Creates a new line using `vertices`.
[INFO] [stdout] 23 |     pub fn new(vertices: [Coordinates; 2]) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 28 |     pub fn pivot(self, pivot: Pivot) -> Self {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 40 |     pub fn new_with_offset(vertices: [Coordinates; 2], offset: Coordinates) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `vertices` is never read
[INFO] [stdout]   --> src/subsystem/components/shapes/polygon.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct Polygon {
[INFO] [stdout]    |            ------- field in this struct
[INFO] [stdout] 12 |     pub vertices: Vec<Coordinates>,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_vertices`, `append_x`, `append_y`, and `compute_contents` are never used
[INFO] [stdout]   --> src/subsystem/components/shapes/polygon.rs:31:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl Polygon {
[INFO] [stdout]    | ------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 31 |     pub fn get_vertices(&self) -> &Vec<Coordinates> {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 36 |     pub fn append_x(&mut self, index: usize, x: f32) {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 42 |     pub fn append_y(&mut self, index: usize, y: f32) {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 48 |     fn compute_contents(&mut self) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `width`, `height`, `vertices`, and `uvs` are never read
[INFO] [stdout]   --> src/subsystem/components/shapes/rectangle.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct Rectangle {
[INFO] [stdout]    |            --------- fields in this struct
[INFO] [stdout] 17 |     width: f32,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 18 |     height: f32,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 19 |     pub vertices: [Coordinates; 4],
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 20 |     pub uvs: Option<[Coordinates; 4]>,
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/subsystem/components/shapes/rectangle.rs:29:12
[INFO] [stdout]     |
[INFO] [stdout]  25 | impl Rectangle {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  29 |     pub fn new(width: f32, height: f32, uvs: Option<[Coordinates; 4]>) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  33 |     pub fn pivot(self, pivot: Pivot) -> Self {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  42 |     pub fn new_with_offset(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  63 |     pub fn set_height(&mut self, new_height: f32) {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  81 |     pub fn set_width(&mut self, new_width: f32) {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  99 |     pub fn height(&self) -> f32 {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 102 |     pub fn width(&self) -> f32 {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `default_uvs` is never used
[INFO] [stdout]    --> src/subsystem/components/shapes/rectangle.rs:107:4
[INFO] [stdout]     |
[INFO] [stdout] 107 | fn default_uvs() -> [Coordinates; 4] {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `vertices`, `uvs`, and `length` are never read
[INFO] [stdout]   --> src/subsystem/components/shapes/square.rs:17:9
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct Square {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] 17 |     pub vertices: [Coordinates; 4],
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 18 |     pub uvs: Option<[Coordinates; 4]>,
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 19 |     contents: [TexturedGlVertex; 4],
[INFO] [stdout] 20 |     length: f32,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `pivot`, and `new_with_offset` are never used
[INFO] [stdout]   --> src/subsystem/components/shapes/square.rs:27:12
[INFO] [stdout]    |
[INFO] [stdout] 23 | impl Square {
[INFO] [stdout]    | ----------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 27 |     pub fn new(length: f32, uvs: Option<[Coordinates; 4]>) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 32 |     pub fn pivot(self, pivot: Pivot) -> Self {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 40 |     fn new_with_offset(length: f32, uvs: Option<[Coordinates; 4]>, offset: f32) -> Self {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `default_uvs` is never used
[INFO] [stdout]   --> src/subsystem/components/shapes/square.rs:56:4
[INFO] [stdout]    |
[INFO] [stdout] 56 | fn default_uvs() -> [Coordinates; 4] {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `vertices` and `uvs` are never read
[INFO] [stdout]   --> src/subsystem/components/shapes/triangle.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct Triangle {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] 15 |     pub vertices: [Coordinates; 3],
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 16 |     pub uvs: Option<[Coordinates; 3]>,
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `pivot`, and `new_with_offset` are never used
[INFO] [stdout]   --> src/subsystem/components/shapes/triangle.rs:23:12
[INFO] [stdout]    |
[INFO] [stdout] 20 | impl Triangle {
[INFO] [stdout]    | ------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 23 |     pub fn new(vertices: [Coordinates; 3], uvs: Option<[Coordinates; 3]>) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |     pub fn pivot(self, pivot: Pivot) -> Self {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 44 |     fn new_with_offset(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `get_tile_nb` are never used
[INFO] [stdout]   --> src/subsystem/components/tiles/sprite.rs:28:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | impl Sprite {
[INFO] [stdout]    | ----------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 28 |     pub fn new(tile_number: usize) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 38 |     pub fn get_tile_nb(&self) -> usize {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Pathing` is never constructed
[INFO] [stdout]   --> src/subsystem/components/tiles/tilemap.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct Pathing {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `event_type`, and `properties` are never used
[INFO] [stdout]   --> src/subsystem/components/tiles/tilemap.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 34 | impl TileEvent {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] 35 |     pub fn new(event_type: String, properties: HashMap<String, String>) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 42 |     pub fn event_type(&self) -> String {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |     pub fn properties(&mut self) -> &mut HashMap<String, String> {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TileInfos` is never constructed
[INFO] [stdout]   --> src/subsystem/components/tiles/tilemap.rs:58:12
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub struct TileInfos {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `with_event`, and `with_pathing` are never used
[INFO] [stdout]   --> src/subsystem/components/tiles/tilemap.rs:67:12
[INFO] [stdout]    |
[INFO] [stdout] 65 | impl TileInfos {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] 66 |     /// Creates a new TileInfos struct
[INFO] [stdout] 67 |     pub fn new(tile_nb: Option<usize>, animation: Option<Animation>) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub fn with_event(mut self, event: Option<TileEvent>) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 79 |     pub fn with_pathing(mut self, pathing: String) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TilemapInfo` is never constructed
[INFO] [stdout]   --> src/subsystem/components/tiles/tilemap.rs:86:12
[INFO] [stdout]    |
[INFO] [stdout] 86 | pub struct TilemapInfo {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/subsystem/components/tiles/tilemap.rs:93:12
[INFO] [stdout]    |
[INFO] [stdout] 92 | impl TilemapInfo {
[INFO] [stdout]    | ---------------- associated function in this implementation
[INFO] [stdout] 93 |     pub fn new(
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `tile_entities`, `events`, and `tileset_ref` are never read
[INFO] [stdout]    --> src/subsystem/components/tiles/tilemap.rs:104:5
[INFO] [stdout]     |
[INFO] [stdout] 103 | pub struct Tilemap {
[INFO] [stdout]     |            ------- fields in this struct
[INFO] [stdout] 104 |     tile_entities: HashMap<Position, Entity>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout] 105 |     events: HashMap<Position, TileEvent>,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 106 |     tileset_ref: AssetRef<Material>,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/subsystem/components/tiles/tilemap.rs:110:19
[INFO] [stdout]     |
[INFO] [stdout] 109 | impl Tilemap {
[INFO] [stdout]     | ------------ associated items in this implementation
[INFO] [stdout] 110 |     pub(crate) fn new(tileset_ref: AssetRef<Material>) -> Self {
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] ...
[INFO] [stdout] 117 |     pub fn create<F>(infos: TilemapInfo, world: &mut impl World, mut tile_resolver: F) -> Entity
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 170 |     pub fn modify_sprite_tile(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 191 |     pub fn retrieve_sprite_tile(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 210 |     pub fn retrieve_pathing(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 251 |     pub fn retrieve_event(&mut self, tile_position: &Position) -> Option<&mut TileEvent> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 255 |     fn create_tilemap(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `pathing` is never read
[INFO] [stdout]   --> src/subsystem/components/tiles/tileset.rs:19:16
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub struct Tileset {
[INFO] [stdout]    |            ------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 19 |     pub(crate) pathing: HashMap<String, HashSet<usize>>,
[INFO] [stdout]    |                ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Tileset` 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: associated items `with_pathing` and `from_atlas` are never used
[INFO] [stdout]   --> src/subsystem/components/tiles/tileset.rs:27:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl Tileset {
[INFO] [stdout]    | ------------ associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 27 |     pub fn with_pathing(mut self, pathing: HashMap<String, HashSet<usize>>) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 32 |     pub fn from_atlas(path_to_atlas: &str) -> Result<Self, ()> {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `TilesetAtlas` is never constructed
[INFO] [stdout]   --> src/subsystem/components/tiles/tileset.rs:60:19
[INFO] [stdout]    |
[INFO] [stdout] 60 | pub(crate) struct TilesetAtlas {
[INFO] [stdout]    |                   ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `set_tab_index` is never used
[INFO] [stdout]   --> src/subsystem/components/ui/mod.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub trait Focusable{
[INFO] [stdout]    |           --------- method in this trait
[INFO] [stdout] 17 |     fn tab_index(&self) -> usize;
[INFO] [stdout] 18 |     fn set_tab_index(&mut self, tab_index: usize);
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `width` and `height` are never read
[INFO] [stdout]   --> src/subsystem/components/ui/ui_input.rs:9:5
[INFO] [stdout]    |
[INFO] [stdout]  7 | pub struct UiInput {
[INFO] [stdout]    |            ------- fields in this struct
[INFO] [stdout]  8 |     text: String,
[INFO] [stdout]  9 |     width: usize,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 10 |     height: usize,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `with_font_size`, `with_font_color`, `with_tab_index`, `width`, and `height` are never used
[INFO] [stdout]   --> src/subsystem/components/ui/ui_input.rs:36:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | impl UiInput{
[INFO] [stdout]    | ------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 36 |     pub fn with_font_size(mut self, font_size: usize) -> Self{
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub fn with_font_color(mut self, color: Color) -> Self{
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |     pub fn with_tab_index(mut self, tab_index: usize) -> Self{
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 52 |     pub fn width(&self) -> usize {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 56 |     pub fn height(&self) -> usize {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `set_cursor`, `resize`, and `dimensions` are never used
[INFO] [stdout]   --> src/subsystem/resources/window.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl Window {
[INFO] [stdout]    | ----------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 29 |     pub fn set_cursor(&mut self, icon: CursorIcon) {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |     pub fn resize(&mut self, width: u32, height: u32) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub fn dimensions(&self) -> (u32, u32) {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/subsystem/resources/inputs/inputs_controller.rs:22:12
[INFO] [stdout]     |
[INFO] [stdout]  15 | impl InputsController {
[INFO] [stdout]     | --------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  22 |     pub fn on_key_pressed<Body>(&self, key: KeyCode, action: Body)
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  30 |     pub fn on_key_released<Body>(&self, key: KeyCode, action: Body)
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  38 |     pub fn on_left_click_pressed<Body>(&self, action: Body)
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  46 |     pub fn on_right_click_pressed<Body>(&self, action: Body)
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  54 |     pub fn on_middle_click_pressed<Body>(&self, action: Body)
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  62 |     pub fn on_left_click_released<Body>(&self, action: Body)
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  70 |     pub fn on_right_click_released<Body>(&self, action: Body)
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  78 |     pub fn on_middle_click_released<Body>(&self, action: Body)
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  91 |     pub fn all_released_events(&self) -> Vec<Input> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 104 |     pub fn mouse_xy(&self) -> (f64, f64) {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 120 |     pub fn shortcut_released_event(&self, shortcut: &Shortcut) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `key_pressed`, `keyboard_events`, `on_key_pressed`, and `on_key_released` are never used
[INFO] [stdout]   --> src/subsystem/resources/inputs/keyboard.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl Keyboard {
[INFO] [stdout]    | ------------- methods in this implementation
[INFO] [stdout] 13 |     /// Whether or not `key` is currently pressed
[INFO] [stdout] 14 |     pub fn key_pressed(&self, key: &KeyCode) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 19 |     pub fn keyboard_events(&self) -> &Vec<KeyboardEvent> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     pub fn on_key_pressed<Body>(&self, key: KeyCode, mut action: Body)
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 40 |     pub fn on_key_released<Body>(&self, key: KeyCode, mut action: Body)
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/subsystem/resources/inputs/mouse.rs:56:19
[INFO] [stdout]     |
[INFO] [stdout]  36 | impl Mouse {
[INFO] [stdout]     | ---------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  56 |     pub(crate) fn on_left_click_pressed<Body>(&self, action: Body)
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  64 |     pub(crate) fn on_right_click_pressed<Body>(&self, action: Body)
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  72 |     pub(crate) fn on_middle_click_pressed<Body>(&self, action: Body)
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  80 |     pub(crate) fn on_left_click_released<Body>(&self, action: Body)
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  88 |     pub(crate) fn on_right_click_released<Body>(&self, action: Body)
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  96 |     pub(crate) fn on_middle_click_released<Body>(&self, action: Body)
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 103 |     fn on_mouse_event<Body>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 131 |     pub(crate) fn xy(&self) -> (f64, f64) {
[INFO] [stdout]     |                   ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `delta_duration` is never used
[INFO] [stdout]   --> src/subsystem/resources/time.rs:41:16
[INFO] [stdout]    |
[INFO] [stdout] 31 |     impl Time {
[INFO] [stdout]    |     --------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 41 |         pub fn delta_duration(&self) -> Duration {
[INFO] [stdout]    |                ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `change_cycle` is never used
[INFO] [stdout]    --> src/subsystem/resources/time.rs:138:16
[INFO] [stdout]     |
[INFO] [stdout]  77 |     impl Timer {
[INFO] [stdout]     |     ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 138 |         pub fn change_cycle(&mut self, new_cycle: f32) {
[INFO] [stdout]     |                ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `exists` is never used
[INFO] [stdout]    --> src/subsystem/resources/time.rs:183:16
[INFO] [stdout]     |
[INFO] [stdout] 157 |     impl Timers {
[INFO] [stdout]     |     ----------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 183 |         pub fn exists(&mut self, name: &str) -> bool {
[INFO] [stdout]     |                ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `event_sender` and `sounds_cursor` are never read
[INFO] [stdout]  --> src/subsystem/resources/audio.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct Audio {
[INFO] [stdout]   |            ----- fields in this struct
[INFO] [stdout] 8 |     event_sender: mpsc::Sender<AudioEvent>,
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout] 9 |     sounds_cursor: usize,
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `play` is never used
[INFO] [stdout]   --> src/subsystem/resources/audio.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl Audio {
[INFO] [stdout]    | ---------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 24 |     pub fn play(&mut self, path: String, config: PlayConfig) -> Result<usize, Error> {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Error` is never used
[INFO] [stdout]   --> src/subsystem/resources/audio.rs:36:10
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub enum Error {
[INFO] [stdout]    |          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `category` is never read
[INFO] [stdout]   --> src/subsystem/resources/audio.rs:49:9
[INFO] [stdout]    |
[INFO] [stdout] 43 | pub struct PlayConfig {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 49 |     pub category: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `retrieve_tileset` is never used
[INFO] [stdout]   --> src/subsystem/resources/asset_manager.rs:46:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl AssetManager {
[INFO] [stdout]    | ----------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 46 |     pub fn retrieve_tileset(&self, asset_ref: &AssetRef<Material>) -> Option<&Tileset> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `VfsFile` is never constructed
[INFO] [stdout]  --> src/subsystem/resources/vfs.rs:2:12
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub struct VfsFile {
[INFO] [stdout]   |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Switch` is never constructed
[INFO] [stdout]   --> src/subsystem/scene.rs:59:5
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub(crate) enum SceneTrans {
[INFO] [stdout]    |                 ---------- variant in this enum
[INFO] [stdout] 59 |     Switch(Box<dyn Scene>),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `switch` is never used
[INFO] [stdout]   --> src/subsystem/scene.rs:72:12
[INFO] [stdout]    |
[INFO] [stdout] 69 | impl SceneController {
[INFO] [stdout]    | -------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub fn switch<T: Scene + Default + 'static>(&mut self) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `test` is never used
[INFO] [stdout]  --> src/subsystem/state.rs:5:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | impl GameState {
[INFO] [stdout]   | -------------- method in this implementation
[INFO] [stdout] 5 |     pub fn test(&self) -> bool {
[INFO] [stdout]   |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `entities`, `clear`, and `add_default_camera` are never used
[INFO] [stdout]   --> src/subsystem/world.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub trait World {
[INFO] [stdout]    |           ----- methods in this trait
[INFO] [stdout] 25 |     fn entities(&self) -> HashSet<Entity>;
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 26 |     fn clear(&mut self);
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 40 |     fn add_default_camera(&mut self) -> Entity;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `contains_resource`, `remove_resource`, `assets_mut`, and `audio` are never used
[INFO] [stdout]    --> src/subsystem/world.rs:54:12
[INFO] [stdout]     |
[INFO] [stdout]  49 | impl GameData {
[INFO] [stdout]     | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  54 |     pub fn contains_resource<T: Resource>(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  65 |     pub fn remove_resource<T: Resource>(&mut self) -> Option<T> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  92 |     pub fn assets_mut(&self) -> AtomicRefMut<AssetManager> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 116 |     pub fn audio(&self) -> AtomicRefMut<Audio> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple methods are never used
[INFO] [stdout]    --> src/subsystem/world.rs:270:12
[INFO] [stdout]     |
[INFO] [stdout] 269 | impl Resources {
[INFO] [stdout]     | -------------- methods in this implementation
[INFO] [stdout] 270 |     pub fn contains_resource<T: Resource>(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 274 |     pub fn insert_resource<T: Resource>(&mut self, resource: T) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 280 |     pub fn remove_resource<T: Resource>(&mut self) -> Option<T> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 300 |     pub fn assets(&self) -> AtomicRef<AssetManager> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 324 |     pub fn events(&self) -> AtomicRefMut<Events> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 330 |     pub fn audio(&self) -> AtomicRefMut<Audio> {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 342 |     pub fn scene_controller(&self) -> AtomicRefMut<SceneController> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `remove_internal` is never used
[INFO] [stdout]    --> src/subsystem/world.rs:370:8
[INFO] [stdout]     |
[INFO] [stdout] 369 | impl InternalResources {
[INFO] [stdout]     | ---------------------- method in this implementation
[INFO] [stdout] 370 |     fn remove_internal(&mut self, type_id: &ResourceTypeId) -> Option<Box<dyn Resource>> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `into_inner` is never used
[INFO] [stdout]    --> src/subsystem/world.rs:420:8
[INFO] [stdout]     |
[INFO] [stdout] 415 | impl AtomicResourceCell {
[INFO] [stdout]     | ----------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 420 |     fn into_inner(self) -> Box<dyn Resource> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `parser` is never read
[INFO] [stdout]   --> src/app.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub struct App {
[INFO] [stdout]    |            --- field in this struct
[INFO] [stdout] 27 |     parser: Parser,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `app` and `app_with_config_path` are never used
[INFO] [stdout]   --> src/app.rs:37:12
[INFO] [stdout]    |
[INFO] [stdout] 36 | impl App {
[INFO] [stdout]    | -------- associated functions in this implementation
[INFO] [stdout] 37 |     pub fn app() -> AppBuilder {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 44 |     pub fn app_with_config_path(config_path: impl AsRef<Path>) -> AppBuilder {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `with_renderer` is never used
[INFO] [stdout]    --> src/app.rs:215:12
[INFO] [stdout]     |
[INFO] [stdout] 195 | impl AppBuilder {
[INFO] [stdout]     | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 215 |     pub fn with_renderer(mut self, renderer_type: RendererType) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `join` and `get` are never used
[INFO] [stdout]   --> src/utils/file.rs:64:12
[INFO] [stdout]    |
[INFO] [stdout] 63 | impl PathBuilder {
[INFO] [stdout]    | ---------------- methods in this implementation
[INFO] [stdout] 64 |     pub fn join(mut self, path: &str) -> PathBuilder {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 69 |     pub fn get(self) -> String {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/utils/maths.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl Position {
[INFO] [stdout]    | ------------- associated function in this implementation
[INFO] [stdout] 12 |     pub fn new(x: usize, y: usize, z: usize) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Dimensions` is never constructed
[INFO] [stdout]   --> src/utils/maths.rs:30:12
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub struct Dimensions {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `width`, `height`, and `depth` are never used
[INFO] [stdout]   --> src/utils/maths.rs:37:12
[INFO] [stdout]    |
[INFO] [stdout] 36 | impl Dimensions {
[INFO] [stdout]    | --------------- associated items in this implementation
[INFO] [stdout] 37 |     pub fn new(width: usize, height: usize, depth: usize) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 41 |     pub fn width(&self) -> usize {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 45 |     pub fn height(&self) -> usize {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 49 |     pub fn depth(&self) -> usize {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `set_x` and `set_y` are never used
[INFO] [stdout]   --> src/utils/maths.rs:74:12
[INFO] [stdout]    |
[INFO] [stdout] 61 | impl Vector {
[INFO] [stdout]    | ----------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 74 |     pub fn set_x(&mut self, x: f32) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 78 |     pub fn set_y(&mut self, y: f32) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Custom` is never constructed
[INFO] [stdout]   --> src/rendering/mod.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 41 | pub enum RendererType {
[INFO] [stdout]    |          ------------ variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 45 |     Custom(Box<dyn Renderer>),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/rendering/gl_representations.rs:9:19
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub(crate) struct GlVec2 {
[INFO] [stdout]   |                   ^^^^^^ field in this struct
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]   --> src/rendering/gl_representations.rs:7:1
[INFO] [stdout]    |
[INFO] [stdout]  7 | / #[repr(C)]
[INFO] [stdout]  8 | | #[derive(Copy, Clone, Debug, bytemuck::Pod, bytemuck::Zeroable)]
[INFO] [stdout]  9 | | pub(crate) struct GlVec2 {
[INFO] [stdout] 10 | |     pub x: f32,
[INFO] [stdout] 11 | |     pub y: f32,
[INFO] [stdout] 12 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/rendering/gl_representations.rs:16:19
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub(crate) struct GlVec3 {
[INFO] [stdout]    |                   ^^^^^^ field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]   --> src/rendering/gl_representations.rs:14:1
[INFO] [stdout]    |
[INFO] [stdout] 14 | / #[repr(C)]
[INFO] [stdout] 15 | | #[derive(Copy, Clone, Debug, bytemuck::Pod, bytemuck::Zeroable)]
[INFO] [stdout] 16 | | pub(crate) struct GlVec3 {
[INFO] [stdout] 17 | |     pub x: f32,
[INFO] [stdout] 18 | |     pub y: f32,
[INFO] [stdout] 19 | |     pub z: f32,
[INFO] [stdout] 20 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/rendering/gl_representations.rs:38:19
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub(crate) struct GlColor {
[INFO] [stdout]    |                   ^^^^^^^ field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]   --> src/rendering/gl_representations.rs:36:1
[INFO] [stdout]    |
[INFO] [stdout] 36 | / #[repr(C)]
[INFO] [stdout] 37 | | #[derive(Copy, Clone, Debug, bytemuck::Pod, bytemuck::Zeroable)]
[INFO] [stdout] 38 | | pub(crate) struct GlColor {
[INFO] [stdout] 39 | |     pub r: f32,
[INFO] [stdout] ...  |
[INFO] [stdout] 42 | |     pub a: f32,
[INFO] [stdout] 43 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/rendering/gl_representations.rs:47:19
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub(crate) struct GlVec4 {
[INFO] [stdout]    |                   ^^^^^^ field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]   --> src/rendering/gl_representations.rs:45:1
[INFO] [stdout]    |
[INFO] [stdout] 45 | / #[repr(C)]
[INFO] [stdout] 46 | | #[derive(Copy, Clone, Debug, bytemuck::Pod, bytemuck::Zeroable)]
[INFO] [stdout] 47 | | pub(crate) struct GlVec4 {
[INFO] [stdout] 48 | |     pub x: f32,
[INFO] [stdout] ...  |
[INFO] [stdout] 51 | |     pub w: f32,
[INFO] [stdout] 52 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/rendering/gl_representations.rs:62:19
[INFO] [stdout]    |
[INFO] [stdout] 62 | pub(crate) struct ColoredGlVertex {
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^ field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]   --> src/rendering/gl_representations.rs:60:1
[INFO] [stdout]    |
[INFO] [stdout] 60 | / #[repr(C)]
[INFO] [stdout] 61 | | #[derive(Copy, Clone, Debug, bytemuck::Pod, bytemuck::Zeroable)]
[INFO] [stdout] 62 | | pub(crate) struct ColoredGlVertex {
[INFO] [stdout] 63 | |     pub position: GlVec3,
[INFO] [stdout] 64 | |     pub color: GlColor,
[INFO] [stdout] 65 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/rendering/gl_representations.rs:90:19
[INFO] [stdout]    |
[INFO] [stdout] 90 | pub(crate) struct TexturedGlVertex {
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^ field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]   --> src/rendering/gl_representations.rs:88:1
[INFO] [stdout]    |
[INFO] [stdout] 88 | / #[repr(C)]
[INFO] [stdout] 89 | | #[derive(Copy, Clone, Debug, bytemuck::Pod, bytemuck::Zeroable)]
[INFO] [stdout] 90 | | pub(crate) struct TexturedGlVertex {
[INFO] [stdout] 91 | |     pub position: GlVec3,
[INFO] [stdout] 92 | |     pub tex_translation: GlVec2,
[INFO] [stdout] 93 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/rendering/gl_representations.rs:128:19
[INFO] [stdout]     |
[INFO] [stdout] 128 | pub(crate) struct GlUniform {
[INFO] [stdout]     |                   ^^^^^^^^^ field in this struct
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]    --> src/rendering/gl_representations.rs:126:1
[INFO] [stdout]     |
[INFO] [stdout] 126 | / #[repr(C)]
[INFO] [stdout] 127 | | #[derive(Copy, Clone, Debug, bytemuck::Pod, bytemuck::Zeroable)]
[INFO] [stdout] 128 | | pub(crate) struct GlUniform {
[INFO] [stdout] 129 | |     pub model_trans: [[f32; 4]; 4],
[INFO] [stdout] 130 | |     pub camera_view: [[f32; 4]; 4],
[INFO] [stdout] 131 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AppConfigReader` is never constructed
[INFO] [stdout]   --> src/config/app_config.rs:68:19
[INFO] [stdout]    |
[INFO] [stdout] 68 | pub(crate) struct AppConfigReader;
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `read_or_create_default_scion_json`, `read_app_json`, and `read_app_config` are never used
[INFO] [stdout]   --> src/config/app_config.rs:71:19
[INFO] [stdout]    |
[INFO] [stdout] 70 | impl AppConfigReader {
[INFO] [stdout]    | -------------------- associated functions in this implementation
[INFO] [stdout] 71 |     pub(crate) fn read_or_create_default_scion_json() -> Result<AppConfig, Error> {
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 86 |     pub(crate) fn read_app_json(path: &Path) -> Result<AppConfig, Error> {
[INFO] [stdout]    |                   ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 94 |     fn read_app_config(path: &Path) -> Result<AppConfig, Error> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `with_default_background_color` is never used
[INFO] [stdout]    --> src/config/window_config.rs:112:12
[INFO] [stdout]     |
[INFO] [stdout]  93 | impl WindowConfigBuilder {
[INFO] [stdout]     | ------------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 112 |     pub fn with_default_background_color(mut self, color: Option<Color>) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/subsystem/components/shapes/line.rs:56:33
[INFO] [stdout]    |
[INFO] [stdout] 56 |     fn vertex_buffer_descriptor(&mut self, _material: Option<&Material>) -> BufferInitDescriptor {
[INFO] [stdout]    |                                 ^^^^^^^^^ the lifetime is elided here       ^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden 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] 56 |     fn vertex_buffer_descriptor(&mut self, _material: Option<&Material>) -> BufferInitDescriptor<'_> {
[INFO] [stdout]    |                                                                                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/subsystem/components/shapes/line.rs:64:34
[INFO] [stdout]    |
[INFO] [stdout] 64 |     fn indexes_buffer_descriptor(&self) -> BufferInitDescriptor {
[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] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 64 |     fn indexes_buffer_descriptor(&self) -> BufferInitDescriptor<'_> {
[INFO] [stdout]    |                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/subsystem/components/shapes/polygon.rs:59:33
[INFO] [stdout]    |
[INFO] [stdout] 59 |     fn vertex_buffer_descriptor(&mut self, _material: Option<&Material>) -> BufferInitDescriptor {
[INFO] [stdout]    |                                 ^^^^^^^^^ the lifetime is elided here       ^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 59 |     fn vertex_buffer_descriptor(&mut self, _material: Option<&Material>) -> BufferInitDescriptor<'_> {
[INFO] [stdout]    |                                                                                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/subsystem/components/shapes/polygon.rs:67:34
[INFO] [stdout]    |
[INFO] [stdout] 67 |     fn indexes_buffer_descriptor(&self) -> BufferInitDescriptor {
[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] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 67 |     fn indexes_buffer_descriptor(&self) -> BufferInitDescriptor<'_> {
[INFO] [stdout]    |                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/subsystem/components/shapes/rectangle.rs:117:33
[INFO] [stdout]     |
[INFO] [stdout] 117 |     fn vertex_buffer_descriptor(&mut self, _material: Option<&Material>) -> BufferInitDescriptor {
[INFO] [stdout]     |                                 ^^^^^^^^^ the lifetime is elided here       ^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 117 |     fn vertex_buffer_descriptor(&mut self, _material: Option<&Material>) -> BufferInitDescriptor<'_> {
[INFO] [stdout]     |                                                                                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/subsystem/components/shapes/rectangle.rs:125:34
[INFO] [stdout]     |
[INFO] [stdout] 125 |     fn indexes_buffer_descriptor(&self) -> BufferInitDescriptor {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 125 |     fn indexes_buffer_descriptor(&self) -> BufferInitDescriptor<'_> {
[INFO] [stdout]     |                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/subsystem/components/shapes/square.rs:66:33
[INFO] [stdout]    |
[INFO] [stdout] 66 |     fn vertex_buffer_descriptor(&mut self, _material: Option<&Material>) -> BufferInitDescriptor {
[INFO] [stdout]    |                                 ^^^^^^^^^ the lifetime is elided here       ^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 66 |     fn vertex_buffer_descriptor(&mut self, _material: Option<&Material>) -> BufferInitDescriptor<'_> {
[INFO] [stdout]    |                                                                                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/subsystem/components/shapes/square.rs:74:34
[INFO] [stdout]    |
[INFO] [stdout] 74 |     fn indexes_buffer_descriptor(&self) -> BufferInitDescriptor {
[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] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 74 |     fn indexes_buffer_descriptor(&self) -> BufferInitDescriptor<'_> {
[INFO] [stdout]    |                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/subsystem/components/shapes/triangle.rs:63:33
[INFO] [stdout]    |
[INFO] [stdout] 63 |     fn vertex_buffer_descriptor(&mut self, _material: Option<&Material>) -> BufferInitDescriptor {
[INFO] [stdout]    |                                 ^^^^^^^^^ the lifetime is elided here       ^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 63 |     fn vertex_buffer_descriptor(&mut self, _material: Option<&Material>) -> BufferInitDescriptor<'_> {
[INFO] [stdout]    |                                                                                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/subsystem/components/shapes/triangle.rs:71:34
[INFO] [stdout]    |
[INFO] [stdout] 71 |     fn indexes_buffer_descriptor(&self) -> BufferInitDescriptor {
[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] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 71 |     fn indexes_buffer_descriptor(&self) -> BufferInitDescriptor<'_> {
[INFO] [stdout]    |                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/subsystem/components/tiles/sprite.rs:85:33
[INFO] [stdout]    |
[INFO] [stdout] 85 |     fn vertex_buffer_descriptor(&mut self, material: Option<&Material>) -> BufferInitDescriptor {
[INFO] [stdout]    |                                 ^^^^^^^^^ the lifetime is elided here      ^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 85 |     fn vertex_buffer_descriptor(&mut self, material: Option<&Material>) -> BufferInitDescriptor<'_> {
[INFO] [stdout]    |                                                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/subsystem/components/tiles/sprite.rs:97:34
[INFO] [stdout]    |
[INFO] [stdout] 97 |     fn indexes_buffer_descriptor(&self) -> BufferInitDescriptor {
[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] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 97 |     fn indexes_buffer_descriptor(&self) -> BufferInitDescriptor<'_> {
[INFO] [stdout]    |                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/subsystem/components/tiles/tilemap.rs:265:33
[INFO] [stdout]     |
[INFO] [stdout] 265 |     fn vertex_buffer_descriptor(&mut self, _material: Option<&Material>) -> BufferInitDescriptor {
[INFO] [stdout]     |                                 ^^^^^^^^^ the lifetime is elided here       ^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 265 |     fn vertex_buffer_descriptor(&mut self, _material: Option<&Material>) -> BufferInitDescriptor<'_> {
[INFO] [stdout]     |                                                                                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/subsystem/components/tiles/tilemap.rs:269:34
[INFO] [stdout]     |
[INFO] [stdout] 269 |     fn indexes_buffer_descriptor(&self) -> BufferInitDescriptor {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 269 |     fn indexes_buffer_descriptor(&self) -> BufferInitDescriptor<'_> {
[INFO] [stdout]     |                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/subsystem/components/ui/ui_image.rs:53:33
[INFO] [stdout]    |
[INFO] [stdout] 53 |     fn vertex_buffer_descriptor(&mut self, _material: Option<&Material>) -> BufferInitDescriptor {
[INFO] [stdout]    |                                 ^^^^^^^^^ the lifetime is elided here       ^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 53 |     fn vertex_buffer_descriptor(&mut self, _material: Option<&Material>) -> BufferInitDescriptor<'_> {
[INFO] [stdout]    |                                                                                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/subsystem/components/ui/ui_image.rs:61:34
[INFO] [stdout]    |
[INFO] [stdout] 61 |     fn indexes_buffer_descriptor(&self) -> BufferInitDescriptor {
[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] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 61 |     fn indexes_buffer_descriptor(&self) -> BufferInitDescriptor<'_> {
[INFO] [stdout]    |                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/subsystem/components/ui/ui_text.rs:90:33
[INFO] [stdout]    |
[INFO] [stdout] 90 |     fn vertex_buffer_descriptor(&mut self, material: Option<&Material>) -> BufferInitDescriptor {
[INFO] [stdout]    |                                 ^^^^^^^^^ the lifetime is elided here      ^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 90 |     fn vertex_buffer_descriptor(&mut self, material: Option<&Material>) -> BufferInitDescriptor<'_> {
[INFO] [stdout]    |                                                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/subsystem/components/ui/ui_text.rs:94:34
[INFO] [stdout]    |
[INFO] [stdout] 94 |     fn indexes_buffer_descriptor(&self) -> BufferInitDescriptor {
[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] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 94 |     fn indexes_buffer_descriptor(&self) -> BufferInitDescriptor<'_> {
[INFO] [stdout]    |                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/subsystem/world.rs:75:38
[INFO] [stdout]    |
[INFO] [stdout] 75 |     pub fn get_resource<T: Resource>(&self) -> Option<AtomicRef<T>> {
[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] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 75 |     pub fn get_resource<T: Resource>(&self) -> Option<AtomicRef<'_, T>> {
[INFO] [stdout]    |                                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/subsystem/world.rs:80:42
[INFO] [stdout]    |
[INFO] [stdout] 80 |     pub fn get_resource_mut<T: Resource>(&self) -> Option<AtomicRefMut<T>> {
[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] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 80 |     pub fn get_resource_mut<T: Resource>(&self) -> Option<AtomicRefMut<'_, T>> {
[INFO] [stdout]    |                                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/subsystem/world.rs:86:19
[INFO] [stdout]    |
[INFO] [stdout] 86 |     pub fn assets(&self) -> AtomicRef<AssetManager> {
[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] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 86 |     pub fn assets(&self) -> AtomicRef<'_, AssetManager> {
[INFO] [stdout]    |                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/subsystem/world.rs:92:23
[INFO] [stdout]    |
[INFO] [stdout] 92 |     pub fn assets_mut(&self) -> AtomicRefMut<AssetManager> {
[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] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 92 |     pub fn assets_mut(&self) -> AtomicRefMut<'_, AssetManager> {
[INFO] [stdout]    |                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/subsystem/world.rs:98:19
[INFO] [stdout]    |
[INFO] [stdout] 98 |     pub fn timers(&self) -> AtomicRefMut<Timers> {
[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] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 98 |     pub fn timers(&self) -> AtomicRefMut<'_, Timers> {
[INFO] [stdout]    |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/subsystem/world.rs:104:19
[INFO] [stdout]     |
[INFO] [stdout] 104 |     pub fn inputs(&self) -> AtomicRefMut<InputsController> {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 104 |     pub fn inputs(&self) -> AtomicRefMut<'_, InputsController> {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/subsystem/world.rs:110:19
[INFO] [stdout]     |
[INFO] [stdout] 110 |     pub fn events(&self) -> AtomicRefMut<Events> {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 110 |     pub fn events(&self) -> AtomicRefMut<'_, Events> {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/subsystem/world.rs:116:18
[INFO] [stdout]     |
[INFO] [stdout] 116 |     pub fn audio(&self) -> AtomicRefMut<Audio> {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 116 |     pub fn audio(&self) -> AtomicRefMut<'_, Audio> {
[INFO] [stdout]     |                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/subsystem/world.rs:122:19
[INFO] [stdout]     |
[INFO] [stdout] 122 |     pub fn window(&self) -> AtomicRefMut<Window> {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 122 |     pub fn window(&self) -> AtomicRefMut<'_, Window> {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/subsystem/world.rs:128:29
[INFO] [stdout]     |
[INFO] [stdout] 128 |     pub fn scene_controller(&self) -> AtomicRefMut<SceneController> {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 128 |     pub fn scene_controller(&self) -> AtomicRefMut<'_, SceneController> {
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/subsystem/world.rs:134:30
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub(crate) fn font_atlas(&self) -> AtomicRefMut<FontAtlas> {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub(crate) fn font_atlas(&self) -> AtomicRefMut<'_, FontAtlas> {
[INFO] [stdout]     |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/subsystem/world.rs:141:33
[INFO] [stdout]     |
[INFO] [stdout] 141 |     pub(crate) fn focus_manager(&self) -> AtomicRefMut<FocusManager> {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 141 |     pub(crate) fn focus_manager(&self) -> AtomicRefMut<'_, FocusManager> {
[INFO] [stdout]     |                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/subsystem/world.rs:289:38
[INFO] [stdout]     |
[INFO] [stdout] 289 |     pub fn get_resource<T: Resource>(&self) -> Option<AtomicRef<T>> {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 289 |     pub fn get_resource<T: Resource>(&self) -> Option<AtomicRef<'_, T>> {
[INFO] [stdout]     |                                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/subsystem/world.rs:294:42
[INFO] [stdout]     |
[INFO] [stdout] 294 |     pub fn get_resource_mut<T: Resource>(&self) -> Option<AtomicRefMut<T>> {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 294 |     pub fn get_resource_mut<T: Resource>(&self) -> Option<AtomicRefMut<'_, T>> {
[INFO] [stdout]     |                                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/subsystem/world.rs:300:19
[INFO] [stdout]     |
[INFO] [stdout] 300 |     pub fn assets(&self) -> AtomicRef<AssetManager> {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 300 |     pub fn assets(&self) -> AtomicRef<'_, AssetManager> {
[INFO] [stdout]     |                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/subsystem/world.rs:306:23
[INFO] [stdout]     |
[INFO] [stdout] 306 |     pub fn assets_mut(&self) -> AtomicRefMut<AssetManager> {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 306 |     pub fn assets_mut(&self) -> AtomicRefMut<'_, AssetManager> {
[INFO] [stdout]     |                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/subsystem/world.rs:312:19
[INFO] [stdout]     |
[INFO] [stdout] 312 |     pub fn timers(&self) -> AtomicRefMut<Timers> {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 312 |     pub fn timers(&self) -> AtomicRefMut<'_, Timers> {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/subsystem/world.rs:318:19
[INFO] [stdout]     |
[INFO] [stdout] 318 |     pub fn inputs(&self) -> AtomicRefMut<InputsController> {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 318 |     pub fn inputs(&self) -> AtomicRefMut<'_, InputsController> {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/subsystem/world.rs:324:19
[INFO] [stdout]     |
[INFO] [stdout] 324 |     pub fn events(&self) -> AtomicRefMut<Events> {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 324 |     pub fn events(&self) -> AtomicRefMut<'_, Events> {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/subsystem/world.rs:330:18
[INFO] [stdout]     |
[INFO] [stdout] 330 |     pub fn audio(&self) -> AtomicRefMut<Audio> {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 330 |     pub fn audio(&self) -> AtomicRefMut<'_, Audio> {
[INFO] [stdout]     |                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/subsystem/world.rs:336:19
[INFO] [stdout]     |
[INFO] [stdout] 336 |     pub fn window(&self) -> AtomicRefMut<Window> {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 336 |     pub fn window(&self) -> AtomicRefMut<'_, Window> {
[INFO] [stdout]     |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/subsystem/world.rs:342:29
[INFO] [stdout]     |
[INFO] [stdout] 342 |     pub fn scene_controller(&self) -> AtomicRefMut<SceneController> {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 342 |     pub fn scene_controller(&self) -> AtomicRefMut<'_, SceneController> {
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/subsystem/world.rs:348:30
[INFO] [stdout]     |
[INFO] [stdout] 348 |     pub(crate) fn font_atlas(&self) -> AtomicRefMut<FontAtlas> {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 348 |     pub(crate) fn font_atlas(&self) -> AtomicRefMut<'_, FontAtlas> {
[INFO] [stdout]     |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/subsystem/world.rs:354:33
[INFO] [stdout]     |
[INFO] [stdout] 354 |     pub(crate) fn focus_manager(&self) -> AtomicRefMut<FocusManager> {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 354 |     pub(crate) fn focus_manager(&self) -> AtomicRefMut<'_, FocusManager> {
[INFO] [stdout]     |                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/subsystem/world.rs:424:29
[INFO] [stdout]     |
[INFO] [stdout] 424 |     pub fn get<T: Resource>(&self) -> AtomicRef<T> {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 424 |     pub fn get<T: Resource>(&self) -> AtomicRef<'_, T> {
[INFO] [stdout]     |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/subsystem/world.rs:429:33
[INFO] [stdout]     |
[INFO] [stdout] 429 |     pub fn get_mut<T: Resource>(&self) -> AtomicRefMut<T> {
[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] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 429 |     pub fn get_mut<T: Resource>(&self) -> AtomicRefMut<'_, T> {
[INFO] [stdout]     |                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/rendering/mod.rs:64:33
[INFO] [stdout]    |
[INFO] [stdout] 64 |     fn vertex_buffer_descriptor(&mut self, material: Option<&Material>) -> BufferInitDescriptor;
[INFO] [stdout]    |                                 ^^^^^^^^^ the lifetime is elided here      ^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 64 |     fn vertex_buffer_descriptor(&mut self, material: Option<&Material>) -> BufferInitDescriptor<'_>;
[INFO] [stdout]    |                                                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/rendering/mod.rs:65:34
[INFO] [stdout]    |
[INFO] [stdout] 65 |     fn indexes_buffer_descriptor(&self) -> BufferInitDescriptor;
[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] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 65 |     fn indexes_buffer_descriptor(&self) -> BufferInitDescriptor<'_>;
[INFO] [stdout]    |                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 31.26s
[INFO] running `Command { std: "docker" "inspect" "57429fef8e11ebf3aa1d71df5414e69a741c0cf3227a3ef3af3741e61d6e300c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "57429fef8e11ebf3aa1d71df5414e69a741c0cf3227a3ef3af3741e61d6e300c", kill_on_drop: false }`
[INFO] [stdout] 57429fef8e11ebf3aa1d71df5414e69a741c0cf3227a3ef3af3741e61d6e300c
