[INFO] cloning repository https://github.com/AdrianoCLeao/starman [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/AdrianoCLeao/starman" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAdrianoCLeao%2Fstarman", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAdrianoCLeao%2Fstarman'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 7df6e93b7596ec3baad21761cbf6da235a06079f [INFO] building AdrianoCLeao/starman against master#44f415c1d617ebc7b931a243b7b321ef8a6ca47c for pr-142134-abi-ast-error [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAdrianoCLeao%2Fstarman" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/AdrianoCLeao/starman on toolchain 44f415c1d617ebc7b931a243b7b321ef8a6ca47c [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+44f415c1d617ebc7b931a243b7b321ef8a6ca47c" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/AdrianoCLeao/starman [INFO] finished tweaking git repo https://github.com/AdrianoCLeao/starman [INFO] tweaked toml for git repo https://github.com/AdrianoCLeao/starman written to /workspace/builds/worker-2-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/AdrianoCLeao/starman 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" "+44f415c1d617ebc7b931a243b7b321ef8a6ca47c" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded emath v0.22.0 [INFO] [stderr] Downloaded ecolor v0.22.0 [INFO] [stderr] Downloaded atomic_refcell v0.1.13 [INFO] [stderr] Downloaded egui_glow v0.22.0 [INFO] [stderr] Downloaded simba v0.7.3 [INFO] [stderr] Downloaded cc v1.2.10 [INFO] [stderr] Downloaded serde_json v1.0.136 [INFO] [stderr] Downloaded ncollide3d v0.33.0 [INFO] [stderr] Downloaded nalgebra v0.30.1 [INFO] [stderr] Downloaded egui v0.22.0 [INFO] [stderr] Downloaded epaint v0.22.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/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:eea15d5475069c3ef791f10c2c6b5af2ee421ef2da1e680ecce1cba46243983b" "/opt/rustwide/cargo-home/bin/cargo" "+44f415c1d617ebc7b931a243b7b321ef8a6ca47c" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 47022704c777f913035078543fc5c0c6f0cb95dc3ba84234b1a44015df0273e3 [INFO] running `Command { std: "docker" "start" "-a" "47022704c777f913035078543fc5c0c6f0cb95dc3ba84234b1a44015df0273e3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "47022704c777f913035078543fc5c0c6f0cb95dc3ba84234b1a44015df0273e3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "47022704c777f913035078543fc5c0c6f0cb95dc3ba84234b1a44015df0273e3", kill_on_drop: false }` [INFO] [stdout] 47022704c777f913035078543fc5c0c6f0cb95dc3ba84234b1a44015df0273e3 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:eea15d5475069c3ef791f10c2c6b5af2ee421ef2da1e680ecce1cba46243983b" "/opt/rustwide/cargo-home/bin/cargo" "+44f415c1d617ebc7b931a243b7b321ef8a6ca47c" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 0d82903291f190783a3b3d8f78bf6abf27232c6575a82c8e60682f6d2a204c57 [INFO] running `Command { std: "docker" "start" "-a" "0d82903291f190783a3b3d8f78bf6abf27232c6575a82c8e60682f6d2a204c57", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.93 [INFO] [stderr] Compiling unicode-ident v1.0.14 [INFO] [stderr] Compiling xml-rs v0.8.25 [INFO] [stderr] Compiling smallvec v1.13.2 [INFO] [stderr] Compiling pkg-config v0.3.31 [INFO] [stderr] Compiling once_cell v1.20.2 [INFO] [stderr] Compiling scopeguard v1.2.0 [INFO] [stderr] Compiling simd-adler32 v0.3.7 [INFO] [stderr] Compiling khronos_api v3.1.0 [INFO] [stderr] Compiling libloading v0.8.6 [INFO] [stderr] Compiling lock_api v0.4.12 [INFO] [stderr] Compiling ab_glyph_rasterizer v0.1.8 [INFO] [stderr] Compiling adler2 v2.0.0 [INFO] [stderr] Compiling nix v0.20.0 [INFO] [stderr] Compiling downcast-rs v1.2.1 [INFO] [stderr] Compiling slab v0.4.9 [INFO] [stderr] Compiling scoped-tls v1.0.1 [INFO] [stderr] Compiling crc32fast v1.4.2 [INFO] [stderr] Compiling ttf-parser v0.15.2 [INFO] [stderr] Compiling parking_lot_core v0.9.10 [INFO] [stderr] Compiling nix v0.18.0 [INFO] [stderr] Compiling ahash v0.8.11 [INFO] [stderr] Compiling dlib v0.5.2 [INFO] [stderr] Compiling miniz_oxide v0.8.3 [INFO] [stderr] Compiling crossbeam-utils v0.7.2 [INFO] [stderr] Compiling memoffset v0.5.6 [INFO] [stderr] Compiling ttf-parser v0.25.1 [INFO] [stderr] Compiling serde v1.0.217 [INFO] [stderr] Compiling maybe-uninit v2.0.0 [INFO] [stderr] Compiling parking_lot_core v0.8.6 [INFO] [stderr] Compiling fdeflate v0.3.7 [INFO] [stderr] Compiling iovec v0.1.4 [INFO] [stderr] Compiling net2 v0.2.39 [INFO] [stderr] Compiling libloading v0.6.7 [INFO] [stderr] Compiling instant v0.1.13 [INFO] [stderr] Compiling matrixmultiply v0.3.9 [INFO] [stderr] Compiling crossbeam-epoch v0.8.2 [INFO] [stderr] Compiling cty v0.2.2 [INFO] [stderr] Compiling zerocopy v0.7.35 [INFO] [stderr] Compiling xdg v2.5.2 [INFO] [stderr] Compiling xcursor v0.3.8 [INFO] [stderr] Compiling serde_json v1.0.136 [INFO] [stderr] Compiling wayland-sys v0.28.6 [INFO] [stderr] Compiling x11-dl v2.21.0 [INFO] [stderr] Compiling parking_lot v0.12.3 [INFO] [stderr] Compiling gl_generator v0.14.0 [INFO] [stderr] Compiling flate2 v1.0.35 [INFO] [stderr] Compiling quote v1.0.38 [INFO] [stderr] Compiling mio v0.6.23 [INFO] [stderr] Compiling syn v2.0.96 [INFO] [stderr] Compiling wayland-scanner v0.28.6 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling raw-window-handle v0.4.3 [INFO] [stderr] Compiling dlib v0.4.2 [INFO] [stderr] Compiling num-integer v0.1.46 [INFO] [stderr] Compiling memmap2 v0.1.0 [INFO] [stderr] Compiling png v0.17.16 [INFO] [stderr] Compiling approx v0.5.1 [INFO] [stderr] Compiling owned_ttf_parser v0.15.2 [INFO] [stderr] Compiling num-complex v0.4.6 [INFO] [stderr] Compiling slotmap v1.0.7 [INFO] [stderr] Compiling glutin_glx_sys v0.1.8 [INFO] [stderr] Compiling rusttype v0.9.3 [INFO] [stderr] Compiling glutin_egl_sys v0.1.6 [INFO] [stderr] Compiling memoffset v0.6.5 [INFO] [stderr] Compiling lazycell v1.3.0 [INFO] [stderr] Compiling inflections v1.1.1 [INFO] [stderr] Compiling hashbrown v0.15.2 [INFO] [stderr] Compiling ryu v1.0.18 [INFO] [stderr] Compiling andrew v0.3.1 [INFO] [stderr] Compiling rawpointer v0.2.1 [INFO] [stderr] Compiling equivalent v1.0.1 [INFO] [stderr] Compiling weezl v0.1.8 [INFO] [stderr] Compiling nohash-hasher v0.2.0 [INFO] [stderr] Compiling zune-core v0.4.12 [INFO] [stderr] Compiling zune-jpeg v0.4.14 [INFO] [stderr] Compiling mio-extras v2.0.6 [INFO] [stderr] Compiling owned_ttf_parser v0.25.0 [INFO] [stderr] Compiling num-rational v0.4.2 [INFO] [stderr] Compiling wayland-client v0.28.6 [INFO] [stderr] Compiling wayland-protocols v0.28.6 [INFO] [stderr] Compiling ab_glyph v0.2.29 [INFO] [stderr] Compiling wayland-commons v0.28.6 [INFO] [stderr] Compiling indexmap v2.7.0 [INFO] [stderr] Compiling parking_lot v0.11.2 [INFO] [stderr] Compiling jpeg-decoder v0.3.1 [INFO] [stderr] Compiling raw-window-handle v0.3.4 [INFO] [stderr] Compiling zune-inflate v0.2.54 [INFO] [stderr] Compiling shared_library v0.1.9 [INFO] [stderr] Compiling half v2.4.1 [INFO] [stderr] Compiling lebe v0.5.2 [INFO] [stderr] Compiling bit_field v0.10.2 [INFO] [stderr] Compiling fixedbitset v0.4.2 [INFO] [stderr] Compiling byteorder-lite v0.1.0 [INFO] [stderr] Compiling color_quant v1.1.0 [INFO] [stderr] Compiling osmesa-sys v0.1.2 [INFO] [stderr] Compiling crossbeam-deque v0.7.4 [INFO] [stderr] Compiling exr v1.73.0 [INFO] [stderr] Compiling gif v0.13.1 [INFO] [stderr] Compiling petgraph v0.6.5 [INFO] [stderr] Compiling stb_truetype v0.3.1 [INFO] [stderr] Compiling approx v0.3.2 [INFO] [stderr] Compiling ordered-float v1.1.1 [INFO] [stderr] Compiling num_cpus v1.16.0 [INFO] [stderr] Compiling glow v0.12.3 [INFO] [stderr] Compiling urlencoding v2.1.3 [INFO] [stderr] Compiling bytemuck_derive v1.8.1 [INFO] [stderr] Compiling gltf-derive v1.4.1 [INFO] [stderr] Compiling serde_derive v1.0.217 [INFO] [stderr] Compiling calloop v0.6.5 [INFO] [stderr] Compiling tiff v0.9.1 [INFO] [stderr] Compiling linked-hash-map v0.5.6 [INFO] [stderr] Compiling rusttype v0.8.3 [INFO] [stderr] Compiling wayland-cursor v0.28.6 [INFO] [stderr] Compiling wayland-egl v0.28.6 [INFO] [stderr] Compiling bytemuck v1.21.0 [INFO] [stderr] Compiling nalgebra-macros v0.1.0 [INFO] [stderr] Compiling safe_arch v0.7.4 [INFO] [stderr] Compiling emath v0.22.0 [INFO] [stderr] Compiling ecolor v0.22.0 [INFO] [stderr] Compiling qoi v0.4.1 [INFO] [stderr] Compiling image v0.25.5 [INFO] [stderr] Compiling epaint v0.22.0 [INFO] [stderr] Compiling wide v0.7.32 [INFO] [stderr] Compiling gltf-json v1.4.1 [INFO] [stderr] Compiling simba v0.7.3 [INFO] [stderr] Compiling egui v0.22.0 [INFO] [stderr] Compiling image v0.24.9 [INFO] [stderr] Compiling gltf v1.4.1 [INFO] [stderr] Compiling egui_glow v0.22.0 [INFO] [stderr] Compiling smithay-client-toolkit v0.12.3 [INFO] [stderr] Compiling winit v0.24.0 [INFO] [stderr] Compiling nalgebra v0.30.1 [INFO] [stderr] Compiling glutin v0.26.0 [INFO] [stderr] Compiling ncollide3d v0.33.0 [INFO] [stderr] Compiling starman v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused imports: `Isometry3` and `Point2` [INFO] [stdout] --> src/main.rs:7:16 [INFO] [stdout] | [INFO] [stdout] 7 | use nalgebra::{Isometry3, Point2, Point3, Translation3, UnitQuaternion, Vector3}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `scene::object::Object` [INFO] [stdout] --> src/main.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use scene::object::Object; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::f32` [INFO] [stdout] --> src/main.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use std::f32; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Isometry3` and `Translation3` [INFO] [stdout] --> src/window/window.rs:8:16 [INFO] [stdout] | [INFO] [stdout] 8 | use nalgebra::{Isometry3, Point2, Point3, Translation3, Vector2, Vector3}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `IndexBuffer` and `TriMesh` [INFO] [stdout] --> src/loader/obj.rs:14:30 [INFO] [stdout] | [INFO] [stdout] 14 | use ncollide3d::procedural::{IndexBuffer, TriMesh}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Zero` [INFO] [stdout] --> src/loader/obj.rs:15:27 [INFO] [stdout] | [INFO] [stdout] 15 | use num_traits::{Bounded, Zero}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self` [INFO] [stdout] --> src/loader/obj.rs:21:29 [INFO] [stdout] | [INFO] [stdout] 21 | use crate::resource::mesh::{self, Mesh}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `vertex_index_u32` [INFO] [stdout] --> src/resource/vertex_index.rs:6:11 [INFO] [stdout] | [INFO] [stdout] 6 | #[cfg(not(feature = "vertex_index_u32"))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove the condition [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `vertex_index_u32` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `vertex_index_u32` [INFO] [stdout] --> src/resource/vertex_index.rs:12:7 [INFO] [stdout] | [INFO] [stdout] 12 | #[cfg(feature = "vertex_index_u32")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove the condition [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `vertex_index_u32` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::mem` [INFO] [stdout] --> src/resource/effect.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::mem; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `GLintptr` [INFO] [stdout] --> src/resource/effect.rs:10:40 [INFO] [stdout] | [INFO] [stdout] 10 | use crate::context::context::{Context, GLintptr, Program, Shader, UniformLocation, VertexArray}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::resource::gpu_vector::GPUVec` [INFO] [stdout] --> src/resource/effect.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use crate::resource::gpu_vector::GPUVec; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::rc::Rc` [INFO] [stdout] --> src/context/context.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::rc::Rc; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self::sidescroll::Sidescroll` [INFO] [stdout] --> src/planar_camera/mod.rs:5:9 [INFO] [stdout] | [INFO] [stdout] 5 | pub use self::sidescroll::Sidescroll; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `buffer` [INFO] [stdout] --> src/loader/glb.rs:31:44 [INFO] [stdout] | [INFO] [stdout] 31 | let reader = primitive.reader(|buffer| { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_buffer` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/resource/gpu_vector.rs:109:32 [INFO] [stdout] | [INFO] [stdout] 109 | .map(|&(_, ref h)| unsafe { verify!(Context::get().delete_buffer(Some(h))) }); [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_unsafe)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/resource/gpu_vector.rs:188:5 [INFO] [stdout] | [INFO] [stdout] 188 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/resource/gl_primitive.rs:87:9 [INFO] [stdout] | [INFO] [stdout] 87 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/resource/gl_primitive.rs:99:9 [INFO] [stdout] | [INFO] [stdout] 99 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `log` [INFO] [stdout] --> src/resource/effect.rs:201:9 [INFO] [stdout] | [INFO] [stdout] 201 | let log = ctxt.get_shader_info_log(&shader); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_log` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/resource/texture_manager.rs:56:9 [INFO] [stdout] | [INFO] [stdout] 56 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/resource/texture_manager.rs:179:9 [INFO] [stdout] | [INFO] [stdout] 179 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/context/context.rs:24:9 [INFO] [stdout] | [INFO] [stdout] 24 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/scene/scene_node.rs:733:21 [INFO] [stdout] | [INFO] [stdout] 733 | let mut object = Object::new( [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/builtin/object_material.rs:88:9 [INFO] [stdout] | [INFO] [stdout] 88 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/builtin/uvs_material.rs:77:9 [INFO] [stdout] | [INFO] [stdout] 77 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/builtin/normals_material.rs:89:9 [INFO] [stdout] | [INFO] [stdout] 89 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/builtin/planar_object_material.rs:69:9 [INFO] [stdout] | [INFO] [stdout] 69 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/window/window.rs:96:12 [INFO] [stdout] | [INFO] [stdout] 79 | impl Window { [INFO] [stdout] | ----------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 96 | pub fn size(&self) -> Vector2 { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 102 | pub fn set_framerate_limit(&mut self, fps: Option) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 109 | pub fn set_title(&mut self, title: &str) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 113 | pub fn set_icon(&mut self, icon: impl GenericImage>) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 117 | pub fn set_cursor_grab(&self, grab: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 122 | pub fn set_cursor_position(&self, x: f64, y: f64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 127 | pub fn hide_cursor(&self, hide: bool) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 137 | pub fn hide(&mut self) { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 142 | pub fn show(&mut self) { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 147 | pub fn set_background_color(&mut self, r: f32, g: f32, b: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 154 | pub fn set_point_size(&mut self, pt_size: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 159 | pub fn set_line_width(&mut self, line_width: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 170 | pub fn draw_planar_line(&mut self, a: &Point2, b: &Point2, color: &Point3) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 175 | pub fn draw_point(&mut self, pt: &Point3, color: &Point3) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 180 | pub fn draw_text( [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 192 | pub fn remove(&mut self, sn: &mut SceneNode) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 196 | pub fn remove_node(&mut self, sn: &mut SceneNode) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 200 | pub fn remove_planar_node(&mut self, sn: &mut PlanarSceneNode) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 204 | pub fn add_group(&mut self) -> SceneNode { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 208 | pub fn add_planar_group(&mut self) -> PlanarSceneNode { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 226 | pub fn add_mesh(&mut self, mesh: Rc>, scale: Vector3) -> SceneNode { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 230 | pub fn add_planar_mesh( [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 238 | pub fn add_trimesh(&mut self, descr: TriMesh, scale: Vector3) -> SceneNode { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 242 | pub fn add_geom_with_name( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 278 | pub fn add_sphere(&mut self, r: f32) -> SceneNode { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 282 | pub fn add_cone(&mut self, r: f32, h: f32) -> SceneNode { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 286 | pub fn add_cylinder(&mut self, r: f32, h: f32) -> SceneNode { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 290 | pub fn add_capsule(&mut self, r: f32, h: f32) -> SceneNode { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 294 | pub fn add_planar_capsule(&mut self, r: f32, h: f32) -> PlanarSceneNode { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 298 | pub fn add_quad(&mut self, w: f32, h: f32, usubdivs: usize, vsubdivs: usize) -> SceneNode { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 302 | pub fn add_quad_with_vertices( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 312 | pub fn add_texture(&mut self, path: &Path, name: &str) -> Rc { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 316 | pub fn add_rectangle(&mut self, wx: f32, wy: f32) -> PlanarSceneNode { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 320 | pub fn add_circle(&mut self, r: f32) -> PlanarSceneNode { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 324 | pub fn add_convex_polygon( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 332 | pub fn is_closed(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 336 | pub fn scale_factor(&self) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 344 | pub fn new_hidden(title: &str) -> Window { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 352 | pub fn new_with_size(title: &str, width: u32, height: u32) -> Window { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 356 | pub fn new_with_setup(title: &str, width: u32, height: u32, setup: CanvasSetup) -> Window { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 423 | pub fn scene(&self) -> &SceneNode { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 428 | pub fn scene_mut(&mut self) -> &mut SceneNode { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 432 | pub fn snap(&self, out: &mut Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 437 | pub fn snap_rect(&self, out: &mut Vec, x: usize, y: usize, width: usize, height: usize) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 459 | pub fn snap_image(&self) -> ImageBuffer, Vec> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 468 | pub fn events(&self) -> EventManager { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 472 | pub fn get_key(&self, key: Key) -> Action { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 476 | pub fn cursor_pos(&self) -> Option<(f64, f64)> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 528 | pub fn render_loop(self, state: S) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 543 | pub fn render_with_state(&mut self, state: &mut S) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 547 | fn do_render_with_state(&mut self, state: &mut S) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 566 | pub fn render_with_effect(&mut self, effect: &mut (dyn PostProcessingEffect)) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 571 | pub fn render_with_camera(&mut self, camera: &mut (dyn Camera)) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 576 | pub fn render_with_cameras( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 585 | pub fn render_with_camera_and_effect( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 594 | pub fn render_with_cameras_and_effect( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from_u32` is never used [INFO] [stdout] --> src/window/canvas.rs:21:12 [INFO] [stdout] | [INFO] [stdout] 20 | impl NumSamples { [INFO] [stdout] | --------------- associated function in this implementation [INFO] [stdout] 21 | pub fn from_u32(i: u32) -> Option { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/window/canvas.rs:58:12 [INFO] [stdout] | [INFO] [stdout] 44 | impl Canvas { [INFO] [stdout] | ----------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 58 | pub fn render_loop(data: impl FnMut(f64) -> bool + 'static) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 74 | pub fn cursor_pos(&self) -> Option<(f64, f64)> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 82 | pub fn set_title(&mut self, title: &str) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 86 | pub fn set_icon(&mut self, icon: impl GenericImage>) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 90 | pub fn set_cursor_grab(&self, grab: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 94 | pub fn set_cursor_position(&self, x: f64, y: f64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 98 | pub fn hide_cursor(&self, hide: bool) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 106 | pub fn show(&mut self) { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 114 | pub fn get_key(&self, key: Key) -> Action { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/window/canvas.rs:140:8 [INFO] [stdout] | [INFO] [stdout] 131 | pub(crate) trait AbstractCanvas { [INFO] [stdout] | -------------- associated items in this trait [INFO] [stdout] ... [INFO] [stdout] 140 | fn render_loop(data: impl FnMut(f64) -> bool + 'static); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 144 | fn cursor_pos(&self) -> Option<(f64, f64)>; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 147 | fn set_title(&mut self, title: &str); [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 148 | fn set_icon(&mut self, icon: impl GenericImage>); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 149 | fn set_cursor_grab(&self, grab: bool); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 150 | fn set_cursor_position(&self, x: f64, y: f64); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 151 | fn hide_cursor(&self, hide: bool); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 152 | fn hide(&mut self); [INFO] [stdout] 153 | fn show(&mut self); [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 156 | fn get_key(&self, key: Key) -> Action; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `State` is never used [INFO] [stdout] --> src/window/state.rs:7:11 [INFO] [stdout] | [INFO] [stdout] 7 | pub trait State: 'static { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/loader/mtl.rs:150:12 [INFO] [stdout] | [INFO] [stdout] 134 | impl MtlMaterial { [INFO] [stdout] | ---------------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 150 | pub fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name` and `normals` are never read [INFO] [stdout] --> src/loader/glb.rs:8:9 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct Mesh { [INFO] [stdout] | ---- fields in this struct [INFO] [stdout] 8 | pub name: Option, [INFO] [stdout] | ^^^^ [INFO] [stdout] 9 | pub vertices: Vec>, [INFO] [stdout] 10 | pub normals: Vec>, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `UNSIGNED_INT` is never used [INFO] [stdout] --> src/resource/vertex_index.rs:4:7 [INFO] [stdout] | [INFO] [stdout] 4 | const UNSIGNED_INT: u32 = 0x1405; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `to_trimesh`, `recompute_normals`, `faces`, `normals`, `coords`, and `uvs` are never used [INFO] [stdout] --> src/resource/mesh.rs:88:12 [INFO] [stdout] | [INFO] [stdout] 20 | impl Mesh { [INFO] [stdout] | --------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 88 | pub fn to_trimesh(&self) -> Option> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 232 | pub fn recompute_normals(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 240 | pub fn faces(&self) -> &Arc>>> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 244 | pub fn normals(&self) -> &Arc>>> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 248 | pub fn coords(&self) -> &Arc>>> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 252 | pub fn uvs(&self) -> &Arc>>> { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `is_on_ram`, `unload_from_gpu`, and `unload_from_ram` are never used [INFO] [stdout] --> src/resource/gpu_vector.rs:61:12 [INFO] [stdout] | [INFO] [stdout] 14 | impl GPUVec { [INFO] [stdout] | ------------------------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 61 | pub fn is_on_ram(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 105 | pub fn unload_from_gpu(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 116 | pub fn unload_from_ram(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `to_owned` is never used [INFO] [stdout] --> src/resource/gpu_vector.rs:127:12 [INFO] [stdout] | [INFO] [stdout] 125 | impl GPUVec { [INFO] [stdout] | -------------------------------------- method in this implementation [INFO] [stdout] 126 | #[inline] [INFO] [stdout] 127 | pub fn to_owned(&self) -> Option> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `flatten` is never used [INFO] [stdout] --> src/resource/gl_primitive.rs:22:8 [INFO] [stdout] | [INFO] [stdout] 14 | pub unsafe trait GLPrimitive: Copy { [INFO] [stdout] | ----------- associated function in this trait [INFO] [stdout] ... [INFO] [stdout] 22 | fn flatten(array: &[Self]) -> &[Self::Element] { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/resource/effect.rs:22:12 [INFO] [stdout] | [INFO] [stdout] 21 | impl Effect { [INFO] [stdout] | ----------- associated function in this implementation [INFO] [stdout] 22 | pub fn new(vshader_path: &Path, fshader_path: &Path) -> Option { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `set_wrapping_s` and `set_wrapping_t` are never used [INFO] [stdout] --> src/resource/texture_manager.rs:39:12 [INFO] [stdout] | [INFO] [stdout] 31 | impl Texture { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 39 | pub fn set_wrapping_s(&mut self, wrapping: TextureWrapping) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 46 | pub fn set_wrapping_t(&mut self, wrapping: TextureWrapping) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get`, `get_with_size`, `add_empty`, `add_image`, `add_image_from_memory`, and `set_generate_mipmaps` are never used [INFO] [stdout] --> src/resource/texture_manager.rs:129:12 [INFO] [stdout] | [INFO] [stdout] 72 | impl TextureManager { [INFO] [stdout] | ------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 129 | pub fn get(&mut self, name: &str) -> Option> { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 133 | pub fn get_with_size(&mut self, name: &str) -> Option<(Rc, (u32, u32))> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 139 | pub fn add_empty(&mut self, name: &str) -> Rc { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 146 | pub fn add_image(&mut self, image: DynamicImage, name: &str) -> Rc { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 157 | pub fn add_image_from_memory(&mut self, image_data: &[u8], name: &str) -> Rc { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 261 | pub fn set_generate_mipmaps(&mut self, enabled: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `remove` is never used [INFO] [stdout] --> src/resource/mesh_manager.rs:59:12 [INFO] [stdout] | [INFO] [stdout] 18 | impl MeshManager { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 59 | pub fn remove(&mut self, name: &str) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `materials` is never read [INFO] [stdout] --> src/resource/material_manager.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct MaterialManager { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] 10 | default_material: Rc>>, [INFO] [stdout] 11 | materials: HashMap>>>, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get`, `add`, and `remove` are never used [INFO] [stdout] --> src/resource/material_manager.rs:48:12 [INFO] [stdout] | [INFO] [stdout] 14 | impl MaterialManager { [INFO] [stdout] | -------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 48 | pub fn get(&mut self, name: &str) -> Option>>> { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 52 | pub fn add(&mut self, material: Rc>>, name: &str) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 56 | pub fn remove(&mut self, name: &str) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `texture_id` and `depth_id` are never used [INFO] [stdout] --> src/resource/framebuffer_manager.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 17 | impl RenderTarget { [INFO] [stdout] | ----------------- methods in this implementation [INFO] [stdout] 18 | pub fn texture_id(&self) -> Option<&Texture> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 26 | pub fn depth_id(&self) -> Option<&Either> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `coords`, `faces`, `uvs`, and `edges` are never read [INFO] [stdout] --> src/resource/planar_mesh.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct PlanarMesh { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] 11 | coords: Arc>>>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 12 | faces: Arc>>>, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 13 | uvs: Arc>>>, [INFO] [stdout] | ^^^ [INFO] [stdout] 14 | edges: Option>>>>, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/resource/planar_mesh.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 17 | impl PlanarMesh { [INFO] [stdout] | --------------- associated items in this implementation [INFO] [stdout] 18 | pub fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 49 | pub fn new_with_gpu_vectors( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 62 | pub fn bind_coords(&mut self, coords: &mut ShaderAttribute>) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 66 | pub fn bind_uvs(&mut self, uvs: &mut ShaderAttribute>) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 70 | pub fn bind_faces(&mut self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 74 | pub fn bind( [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 84 | pub fn bind_edges(&mut self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 100 | pub fn unbind(&self) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 106 | pub fn num_pts(&self) -> usize { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 110 | pub fn faces(&self) -> &Arc>>> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 114 | pub fn coords(&self) -> &Arc>>> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 118 | pub fn uvs(&self) -> &Arc>>> { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PlanarMeshManager` is never constructed [INFO] [stdout] --> src/resource/planar_mesh_manager.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct PlanarMeshManager { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `get_global_manager`, `get`, `add`, and `remove` are never used [INFO] [stdout] --> src/resource/planar_mesh_manager.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 17 | impl PlanarMeshManager { [INFO] [stdout] | ---------------------- associated items in this implementation [INFO] [stdout] 18 | pub fn new() -> PlanarMeshManager { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 61 | pub fn get_global_manager T>(mut f: F) -> T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 65 | pub fn get(&mut self, name: &str) -> Option>> { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 69 | pub fn add(&mut self, mesh: Rc>, name: &str) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | pub fn remove(&mut self, name: &str) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PlanarMaterialManager` is never constructed [INFO] [stdout] --> src/resource/planar_material_manager.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct PlanarMaterialManager { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `get_global_manager`, `get_default`, `get`, `add`, and `remove` are never used [INFO] [stdout] --> src/resource/planar_material_manager.rs:15:12 [INFO] [stdout] | [INFO] [stdout] 14 | impl PlanarMaterialManager { [INFO] [stdout] | -------------------------- associated items in this implementation [INFO] [stdout] 15 | pub fn new() -> PlanarMaterialManager { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 29 | pub fn get_global_manager T>(mut f: F) -> T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 33 | pub fn get_default(&self) -> Rc>> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 37 | pub fn get(&mut self, name: &str) -> Option>>> { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 41 | pub fn add(&mut self, material: Rc>>, name: &str) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 45 | pub fn remove(&mut self, name: &str) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `GLsizeiptr` is never used [INFO] [stdout] --> src/context/context.rs:12:10 [INFO] [stdout] | [INFO] [stdout] 12 | pub type GLsizeiptr = isize; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/context/context.rs:55:15 [INFO] [stdout] | [INFO] [stdout] 41 | impl Context { [INFO] [stdout] | ------------ associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 55 | pub const RENDERBUFFER: u32 = ContextImpl::RENDERBUFFER; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 61 | pub const UNSIGNED_BYTE: u32 = ContextImpl::UNSIGNED_BYTE; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 67 | pub const NEAREST: u32 = ContextImpl::NEAREST; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 84 | pub const TRIANGLE_STRIP: u32 = ContextImpl::TRIANGLE_STRIP; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 93 | pub const PACK_ALIGNMENT: u32 = ContextImpl::PACK_ALIGNMENT; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 99 | pub const ALPHA: u32 = ContextImpl::ALPHA; [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 187 | pub fn delete_vertex_array(&self, vertex_array: Option<&VertexArray>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 211 | pub fn buffer_data_uninitialized(&self, target: GLenum, len: usize, usage: GLenum) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 510 | pub fn read_pixels( [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constants `NEAREST`, `TRIANGLE_STRIP`, `PACK_ALIGNMENT`, and `ALPHA` are never used [INFO] [stdout] --> src/context/context.rs:564:11 [INFO] [stdout] | [INFO] [stdout] 538 | pub(crate) trait AbstractContextConst { [INFO] [stdout] | -------------------- associated constants in this trait [INFO] [stdout] ... [INFO] [stdout] 564 | const NEAREST: u32; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 581 | const TRIANGLE_STRIP: u32; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 590 | const PACK_ALIGNMENT: u32; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 596 | const ALPHA: u32; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `delete_vertex_array`, `buffer_data_uninitialized`, and `read_pixels` are never used [INFO] [stdout] --> src/context/context.rs:638:8 [INFO] [stdout] | [INFO] [stdout] 600 | pub(crate) trait AbstractContext { [INFO] [stdout] | --------------- methods in this trait [INFO] [stdout] ... [INFO] [stdout] 638 | fn delete_vertex_array(&self, vertex_array: Option<&Self::VertexArray>); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 644 | fn buffer_data_uninitialized(&self, target: GLenum, len: usize, usage: GLenum); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 764 | fn read_pixels( [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/event/event_manager.rs:25:8 [INFO] [stdout] | [INFO] [stdout] 23 | impl<'a> Event<'a> { [INFO] [stdout] | ------------------ associated function in this implementation [INFO] [stdout] 24 | #[inline] [INFO] [stdout] 25 | fn new(value: WindowEvent, inhibitor: &RefCell>) -> Event { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Events` is never constructed [INFO] [stdout] --> src/event/event_manager.rs:34:12 [INFO] [stdout] | [INFO] [stdout] 34 | pub struct Events<'a> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/event/event_manager.rs:41:8 [INFO] [stdout] | [INFO] [stdout] 39 | impl<'a> Events<'a> { [INFO] [stdout] | ------------------- associated function in this implementation [INFO] [stdout] 40 | #[inline] [INFO] [stdout] 41 | fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `EventManager` is never constructed [INFO] [stdout] --> src/event/event_manager.rs:61:12 [INFO] [stdout] | [INFO] [stdout] 61 | pub struct EventManager { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `iter` are never used [INFO] [stdout] --> src/event/event_manager.rs:68:12 [INFO] [stdout] | [INFO] [stdout] 66 | impl EventManager { [INFO] [stdout] | ----------------- associated items in this implementation [INFO] [stdout] 67 | #[inline] [INFO] [stdout] 68 | pub fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 76 | pub fn iter(&mut self) -> Events { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `is_keyboard_event`, `is_mouse_event`, and `is_touch_event` are never used [INFO] [stdout] --> src/event/window_event.rs:24:12 [INFO] [stdout] | [INFO] [stdout] 23 | impl WindowEvent { [INFO] [stdout] | ---------------- methods in this implementation [INFO] [stdout] 24 | pub fn is_keyboard_event(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 28 | pub fn is_mouse_event(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 35 | pub fn is_touch_event(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new`, `from_bytes`, and `default` are never used [INFO] [stdout] --> src/text/font.rs:15:12 [INFO] [stdout] | [INFO] [stdout] 14 | impl Font { [INFO] [stdout] | --------- associated functions in this implementation [INFO] [stdout] 15 | pub fn new(path: &Path) -> Option> { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 22 | pub fn from_bytes(memory: &[u8]) -> Option> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | pub fn default() -> Rc { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Glyph` is never constructed [INFO] [stdout] --> src/text/glyph.rs:3:12 [INFO] [stdout] | [INFO] [stdout] 3 | pub struct Glyph { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/text/glyph.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 11 | impl Glyph { [INFO] [stdout] | ---------- associated function in this implementation [INFO] [stdout] 12 | pub fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `draw_text` is never used [INFO] [stdout] --> src/text/renderer.rs:103:12 [INFO] [stdout] | [INFO] [stdout] 35 | impl TextRenderer { [INFO] [stdout] | ----------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 103 | pub fn draw_text( [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/camera/arc_ball.rs:81:12 [INFO] [stdout] | [INFO] [stdout] 37 | impl ArcBall { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 81 | pub fn at(&self) -> Point3 { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 85 | pub fn set_at(&mut self, at: Point3) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 90 | pub fn yaw(&self) -> f32 { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 94 | pub fn set_yaw(&mut self, yaw: f32) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 101 | pub fn pitch(&self) -> f32 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 105 | pub fn set_pitch(&mut self, pitch: f32) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 112 | pub fn min_pitch(&self) -> f32 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 116 | pub fn set_min_pitch(&mut self, min_pitch: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 120 | pub fn max_pitch(&self) -> f32 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 124 | pub fn set_max_pitch(&mut self, max_pitch: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 128 | pub fn dist(&self) -> f32 { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 132 | pub fn set_dist(&mut self, dist: f32) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 139 | pub fn min_dist(&self) -> f32 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 143 | pub fn set_min_dist(&mut self, min_dist: f32) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 147 | pub fn max_dist(&self) -> f32 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 151 | pub fn set_max_dist(&mut self, max_dist: f32) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 155 | pub fn set_dist_step(&mut self, dist_step: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 194 | pub fn rotate_button(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 198 | pub fn rebind_rotate_button(&mut self, new_button: Option) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 202 | pub fn rotate_modifiers(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 206 | pub fn set_rotate_modifiers(&mut self, modifiers: Option) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 210 | pub fn drag_modifiers(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 214 | pub fn set_drag_modifiers(&mut self, modifiers: Option) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 218 | pub fn drag_button(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 222 | pub fn rebind_drag_button(&mut self, new_button: Option) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 226 | pub fn reset_key(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 230 | pub fn rebind_reset_key(&mut self, new_key: Option) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 275 | pub fn set_up_axis(&mut self, up_axis: Vector3) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 280 | pub fn set_up_axis_dir(&mut self, up_axis: Unit>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `transformation`, `inverse_transformation`, `project`, and `unproject` are never used [INFO] [stdout] --> src/camera/camera.rs:10:8 [INFO] [stdout] | [INFO] [stdout] 6 | pub trait Camera { [INFO] [stdout] | ------ methods in this trait [INFO] [stdout] ... [INFO] [stdout] 10 | fn transformation(&self) -> Matrix4; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 11 | fn inverse_transformation(&self) -> Matrix4; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 34 | fn project(&self, world_coord: &Point3, size: &Vector2) -> Vector2 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 46 | fn unproject( [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `FirstPerson` is never constructed [INFO] [stdout] --> src/camera/first_person.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct FirstPerson { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FirstPerson` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/camera/first_person.rs:38:12 [INFO] [stdout] | [INFO] [stdout] 37 | impl FirstPerson { [INFO] [stdout] | ---------------- associated items in this implementation [INFO] [stdout] 38 | pub fn new(eye: Point3, at: Point3) -> FirstPerson { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 42 | pub fn new_with_frustrum( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 77 | pub fn set_move_step(&mut self, step: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 82 | pub fn set_pitch_step(&mut self, step: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 87 | pub fn set_yaw_step(&mut self, step: f32) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 92 | pub fn move_step(&self) -> f32 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 97 | pub fn pitch_step(&self) -> f32 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 102 | pub fn yaw_step(&self) -> f32 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 106 | pub fn look_at(&mut self, eye: Point3, at: Point3) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 120 | pub fn at(&self) -> Point3 { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 128 | fn update_restrictions(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 139 | pub fn rotate_button(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 143 | pub fn rebind_rotate_button(&mut self, new_button: Option) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 147 | pub fn drag_button(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 151 | pub fn rebind_drag_button(&mut self, new_button: Option) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 155 | pub fn up_key(&self) -> Option { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 159 | pub fn down_key(&self) -> Option { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 163 | pub fn left_key(&self) -> Option { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 167 | pub fn right_key(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 171 | pub fn rebind_up_key(&mut self, new_key: Option) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 175 | pub fn rebind_down_key(&mut self, new_key: Option) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 179 | pub fn rebind_left_key(&mut self, new_key: Option) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 183 | pub fn rebind_right_key(&mut self, new_key: Option) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 187 | pub fn unbind_movement_keys(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 195 | pub fn handle_left_button_displacement(&mut self, dpos: &Vector2) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 204 | pub fn handle_right_button_displacement(&mut self, dpos: &Vector2) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | pub fn handle_scroll(&mut self, yoff: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 225 | fn update_projviews(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 235 | pub fn eye_dir(&self) -> Vector3 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 239 | pub fn move_dir(&self, up: bool, down: bool, right: bool, left: bool) -> Vector3 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 270 | pub fn translate_mut(&mut self, t: &Translation3) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 277 | pub fn translate(&self, t: &Translation3) -> FirstPerson { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 284 | fn set_eye(&mut self, eye: Point3) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 291 | pub fn set_up_axis(&mut self, up_axis: Vector3) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 296 | pub fn set_up_axis_dir(&mut self, up_axis: Unit>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 305 | fn observer_frame(&self) -> Isometry3 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check_optional_key_state` is never used [INFO] [stdout] --> src/camera/first_person.rs:384:4 [INFO] [stdout] | [INFO] [stdout] 384 | fn check_optional_key_state(canvas: &Canvas, key: Option, key_state: Action) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `CoordSystemRh` is never constructed [INFO] [stdout] --> src/camera/first_person.rs:393:8 [INFO] [stdout] | [INFO] [stdout] 393 | struct CoordSystemRh { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CoordSystemRh` 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: associated function `from_up_axis` is never used [INFO] [stdout] --> src/camera/first_person.rs:400:8 [INFO] [stdout] | [INFO] [stdout] 398 | impl CoordSystemRh { [INFO] [stdout] | ------------------ associated function in this implementation [INFO] [stdout] 399 | #[inline] [INFO] [stdout] 400 | fn from_up_axis(up_axis: Unit>) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `FirstPersonStereo` is never constructed [INFO] [stdout] --> src/camera/first_person_stereo.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct FirstPersonStereo { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FirstPersonStereo` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/camera/first_person_stereo.rs:33:12 [INFO] [stdout] | [INFO] [stdout] 32 | impl FirstPersonStereo { [INFO] [stdout] | ---------------------- associated items in this implementation [INFO] [stdout] 33 | pub fn new(eye: Point3, at: Point3, ipd: f32) -> FirstPersonStereo { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 37 | pub fn new_with_frustrum( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 69 | pub fn look_at(&mut self, eye: Point3, at: Point3) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 81 | pub fn at(&self) -> Point3 { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 89 | fn update_restrictions(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 101 | pub fn handle_left_button_displacement(&mut self, dpos: &Vector2) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 109 | fn update_eyes_location(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 117 | pub fn handle_right_button_displacement(&mut self, dpos: &Vector2) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 130 | pub fn handle_scroll(&mut self, yoff: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 140 | fn update_projviews(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 148 | fn view_eye(&self, eye: usize) -> Matrix4 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 156 | fn view_transform_left(&self) -> Isometry3 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 160 | fn view_transform_right(&self) -> Isometry3 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 164 | pub fn ipd(&self) -> f32 { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 168 | pub fn set_ipd(&mut self, ipd: f32) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `FixedView` is never constructed [INFO] [stdout] --> src/camera/fixed_view.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct FixedView { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FixedView` 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: associated items `new`, `new_with_frustrum`, and `update_projviews` are never used [INFO] [stdout] --> src/camera/fixed_view.rs:16:12 [INFO] [stdout] | [INFO] [stdout] 15 | impl FixedView { [INFO] [stdout] | -------------- associated items in this implementation [INFO] [stdout] 16 | pub fn new() -> FixedView { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 20 | pub fn new_with_frustrum(fov: f32, znear: f32, zfar: f32) -> FixedView { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 28 | fn update_projviews(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `user_data` is never read [INFO] [stdout] --> src/scene/object.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct ObjectData { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 23 | user_data: Box, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `user_data` is never used [INFO] [stdout] --> src/scene/object.rs:63:12 [INFO] [stdout] | [INFO] [stdout] 26 | impl ObjectData { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 63 | pub fn user_data(&self) -> &dyn Any { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/scene/object.rs:120:12 [INFO] [stdout] | [INFO] [stdout] 73 | impl Object { [INFO] [stdout] | ----------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 120 | pub fn data(&self) -> &ObjectData { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 125 | pub fn data_mut(&mut self) -> &mut ObjectData { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 130 | pub fn enable_backface_culling(&mut self, active: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 135 | pub fn set_user_data(&mut self, user_data: Box) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 140 | pub fn material(&self) -> Rc>> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 145 | pub fn set_material(&mut self, material: Rc>>) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 150 | pub fn set_lines_width(&mut self, width: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 155 | pub fn lines_width(&self) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 160 | pub fn set_lines_color(&mut self, color: Option>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 165 | pub fn lines_color(&self) -> Option> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 170 | pub fn set_points_size(&mut self, size: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 175 | pub fn points_size(&self) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 180 | pub fn set_surface_rendering_activation(&mut self, active: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 185 | pub fn surface_rendering_activation(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 190 | pub fn mesh(&self) -> &Rc> { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 195 | pub fn modify_vertices>)>(&mut self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 207 | pub fn read_vertices])>(&self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 219 | pub fn recompute_normals(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 224 | pub fn modify_normals>)>(&mut self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 236 | pub fn read_normals])>(&self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 248 | pub fn modify_faces>)>(&mut self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 260 | pub fn read_faces])>(&self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 272 | pub fn modify_uvs>)>(&mut self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 284 | pub fn read_uvs])>(&self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 310 | pub fn set_texture_with_name(&mut self, name: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/scene/planar_object.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct PlanarObjectData { [INFO] [stdout] | ---------------- fields in this struct [INFO] [stdout] 16 | material: Rc>>, [INFO] [stdout] 17 | texture: Rc, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 18 | color: Point3, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 19 | lines_color: Option>, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 20 | wlines: f32, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 21 | wpoints: f32, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 22 | draw_surface: bool, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 23 | cull: bool, [INFO] [stdout] | ^^^^ [INFO] [stdout] 24 | user_data: Box, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/scene/planar_object.rs:29:12 [INFO] [stdout] | [INFO] [stdout] 27 | impl PlanarObjectData { [INFO] [stdout] | --------------------- methods in this implementation [INFO] [stdout] 28 | #[inline] [INFO] [stdout] 29 | pub fn texture(&self) -> &Rc { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 34 | pub fn color(&self) -> &Point3 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 39 | pub fn lines_width(&self) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 44 | pub fn lines_color(&self) -> Option<&Point3> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 49 | pub fn points_size(&self) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 54 | pub fn surface_rendering_active(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 59 | pub fn backface_culling_enabled(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 64 | pub fn user_data(&self) -> &dyn Any { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/scene/planar_object.rs:76:12 [INFO] [stdout] | [INFO] [stdout] 74 | impl PlanarObject { [INFO] [stdout] | ----------------- associated items in this implementation [INFO] [stdout] 75 | #[doc(hidden)] [INFO] [stdout] 76 | pub fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 117 | pub fn data(&self) -> &PlanarObjectData { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 122 | pub fn data_mut(&mut self) -> &mut PlanarObjectData { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 127 | pub fn enable_backface_culling(&mut self, active: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 132 | pub fn set_user_data(&mut self, user_data: Box) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 137 | pub fn material(&self) -> Rc>> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 142 | pub fn set_material(&mut self, material: Rc>>) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 147 | pub fn set_lines_width(&mut self, width: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 152 | pub fn lines_width(&self) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 157 | pub fn set_lines_color(&mut self, color: Option>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 162 | pub fn lines_color(&self) -> Option<&Point3> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 167 | pub fn set_points_size(&mut self, size: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 172 | pub fn points_size(&self) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 177 | pub fn set_surface_rendering_activation(&mut self, active: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 182 | pub fn surface_rendering_activation(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 187 | pub fn mesh(&self) -> &Rc> { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 192 | pub fn modify_vertices>)>(&mut self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 204 | pub fn read_vertices])>(&self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | pub fn modify_faces>)>(&mut self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 228 | pub fn read_faces])>(&self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 240 | pub fn modify_uvs>)>(&mut self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 252 | pub fn read_uvs])>(&self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 264 | pub fn set_color(&mut self, r: f32, g: f32, b: f32) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 271 | pub fn set_texture_from_file(&mut self, path: &Path, name: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 278 | pub fn set_texture_with_name(&mut self, name: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 289 | pub fn set_texture(&mut self, texture: Rc) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/scene/scene_node.rs:45:8 [INFO] [stdout] | [INFO] [stdout] 40 | impl SceneNodeData { [INFO] [stdout] | ------------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 45 | fn remove_from_parent(&mut self, to_remove: &SceneNode) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 53 | fn remove(&mut self, o: &SceneNode) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 64 | pub fn has_object(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 123 | pub fn object(&self) -> Option<&Object> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 128 | pub fn object_mut(&mut self) -> Option<&mut Object> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 133 | pub fn get_object(&self) -> &Object { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 139 | pub fn get_object_mut(&mut self) -> &mut Object { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 145 | pub fn set_material(&mut self, material: Rc>>) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 150 | pub fn set_material_with_name(&mut self, name: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 161 | pub fn set_lines_width(&mut self, width: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 166 | pub fn set_lines_color(&mut self, color: Option>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 171 | pub fn set_points_size(&mut self, size: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 176 | pub fn set_surface_rendering_activation(&mut self, active: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 181 | pub fn enable_backface_culling(&mut self, active: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 186 | pub fn modify_vertices>)>(&mut self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 191 | pub fn read_vertices])>(&self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 196 | pub fn recompute_normals(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 201 | pub fn modify_normals>)>(&mut self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 206 | pub fn read_normals])>(&self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 211 | pub fn modify_faces>)>(&mut self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | pub fn read_faces])>(&self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 221 | pub fn modify_uvs>)>(&mut self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 226 | pub fn read_uvs])>(&self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 231 | pub fn is_visible(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 236 | pub fn set_visible(&mut self, visible: bool) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 246 | pub fn set_texture_from_file(&mut self, path: &Path, name: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 253 | pub fn set_texture_from_memory(&mut self, image_data: &[u8], name: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 261 | pub fn set_texture_with_name(&mut self, name: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 271 | pub fn set_texture(&mut self, texture: Rc) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 287 | pub fn apply_to_objects(&self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 298 | pub fn set_local_scale(&mut self, sx: f32, sy: f32, sz: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 304 | pub fn local_scale(&self) -> Vector3 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 309 | pub fn reorient(&mut self, eye: &Point3, at: &Point3, up: &Vector3) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 315 | pub fn local_transformation(&self) -> Isometry3 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 320 | pub fn inverse_local_transformation(&self) -> Isometry3 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 326 | pub fn world_transformation(&self) -> Isometry3 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 336 | pub fn inverse_world_transformation(&self) -> Isometry3 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 345 | pub fn append_transformation(&mut self, t: &Isometry3) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 351 | pub fn prepend_to_local_transformation(&mut self, t: &Isometry3) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 357 | pub fn set_local_transformation(&mut self, t: Isometry3) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 363 | pub fn local_translation(&self) -> Translation3 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 368 | pub fn inverse_local_translation(&self) -> Translation3 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 379 | pub fn prepend_to_local_translation(&mut self, t: &Translation3) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 391 | pub fn local_rotation(&self) -> UnitQuaternion { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 396 | pub fn inverse_local_rotation(&self) -> UnitQuaternion { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 401 | pub fn append_rotation(&mut self, r: &UnitQuaternion) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 407 | pub fn append_rotation_wrt_center(&mut self, r: &UnitQuaternion) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 419 | pub fn set_local_rotation(&mut self, r: UnitQuaternion) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 436 | fn update(&mut self) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 464 | pub fn is_fixed(&self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/scene/scene_node.rs:507:12 [INFO] [stdout] | [INFO] [stdout] 475 | impl SceneNode { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 507 | pub fn is_fixed(&self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 511 | pub fn unlink(&mut self) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 525 | pub fn add_group(&mut self) -> SceneNode { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 564 | pub fn add_sphere(&mut self, r: f32) -> SceneNode { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 570 | pub fn add_cone(&mut self, r: f32, h: f32) -> SceneNode { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 576 | pub fn add_cylinder(&mut self, r: f32, h: f32) -> SceneNode { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 582 | pub fn add_capsule(&mut self, r: f32, h: f32) -> SceneNode { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 589 | pub fn add_quad(&mut self, w: f32, h: f32, usubdivs: usize, vsubdivs: usize) -> SceneNode { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 599 | pub fn add_quad_with_vertices( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 629 | pub fn add_trimesh(&mut self, descr: TriMesh, scale: Vector3) -> SceneNode { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 761 | pub fn apply_to_scene_nodes_mut(&mut self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 770 | pub fn apply_to_scene_nodes(&self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 778 | pub fn render(&mut self, pass: usize, camera: &mut dyn Camera, light: &Light) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 783 | pub fn set_material(&mut self, material: Rc>>) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 788 | pub fn set_material_with_name(&mut self, name: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 793 | pub fn set_lines_width(&mut self, width: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 798 | pub fn set_lines_color(&mut self, color: Option>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 803 | pub fn set_points_size(&mut self, size: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 808 | pub fn set_surface_rendering_activation(&mut self, active: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 813 | pub fn enable_backface_culling(&mut self, active: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 818 | pub fn modify_vertices>)>(&mut self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 823 | pub fn read_vertices])>(&self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 828 | pub fn recompute_normals(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 833 | pub fn modify_normals>)>(&mut self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 838 | pub fn read_normals])>(&self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 843 | pub fn modify_faces>)>(&mut self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 848 | pub fn read_faces])>(&self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 853 | pub fn modify_uvs>)>(&mut self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 858 | pub fn read_uvs])>(&self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 863 | pub fn is_visible(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 868 | pub fn set_visible(&mut self, visible: bool) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 878 | pub fn set_texture_from_file(&mut self, path: &Path, name: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 882 | pub fn set_texture_from_memory(&mut self, image_data: &[u8], name: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 887 | pub fn set_texture_with_name(&mut self, name: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 891 | pub fn set_texture(&mut self, texture: Rc) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 896 | pub fn set_local_scale(&mut self, sx: f32, sy: f32, sz: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 901 | pub fn reorient(&mut self, eye: &Point3, at: &Point3, up: &Vector3) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 906 | pub fn append_transformation(&mut self, t: &Isometry3) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 911 | pub fn prepend_to_local_transformation(&mut self, t: &Isometry3) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 916 | pub fn set_local_transformation(&mut self, t: Isometry3) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 926 | pub fn prepend_to_local_translation(&mut self, t: &Translation3) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 936 | pub fn append_rotation(&mut self, r: &UnitQuaternion) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 941 | pub fn append_rotation_wrt_center(&mut self, r: &UnitQuaternion) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 951 | pub fn set_local_rotation(&mut self, r: UnitQuaternion) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `parent` is never read [INFO] [stdout] --> src/scene/planar_scene_node.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 18 | pub struct PlanarSceneNodeData { [INFO] [stdout] | ------------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 27 | parent: Option<*const RefCell>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/scene/planar_scene_node.rs:36:8 [INFO] [stdout] | [INFO] [stdout] 35 | impl PlanarSceneNodeData { [INFO] [stdout] | ------------------------ methods in this implementation [INFO] [stdout] 36 | fn set_parent(&mut self, parent: *const RefCell) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 40 | fn remove_from_parent(&mut self, to_remove: &PlanarSceneNode) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 47 | fn remove(&mut self, o: &PlanarSceneNode) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 58 | pub fn has_object(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 63 | pub fn is_root(&self) -> bool { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 98 | pub fn object(&self) -> Option<&PlanarObject> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 103 | pub fn object_mut(&mut self) -> Option<&mut PlanarObject> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 108 | pub fn get_object(&self) -> &PlanarObject { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 114 | pub fn get_object_mut(&mut self) -> &mut PlanarObject { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 120 | pub fn set_material(&mut self, material: Rc>>) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 125 | pub fn set_material_with_name(&mut self, name: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 136 | pub fn set_lines_width(&mut self, width: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 141 | pub fn set_lines_color(&mut self, color: Option>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 146 | pub fn set_points_size(&mut self, size: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 151 | pub fn set_surface_rendering_activation(&mut self, active: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 156 | pub fn enable_backface_culling(&mut self, active: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 161 | pub fn modify_vertices>)>(&mut self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 166 | pub fn read_vertices])>(&self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 171 | pub fn modify_faces>)>(&mut self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 176 | pub fn read_faces])>(&self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 181 | pub fn modify_uvs>)>(&mut self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 186 | pub fn read_uvs])>(&self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 191 | pub fn is_visible(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 196 | pub fn set_visible(&mut self, visible: bool) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 201 | pub fn set_color(&mut self, r: f32, g: f32, b: f32) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 206 | pub fn set_texture_from_file(&mut self, path: &Path, name: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 213 | pub fn set_texture_from_memory(&mut self, image_data: &[u8], name: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 221 | pub fn set_texture_with_name(&mut self, name: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 231 | pub fn set_texture(&mut self, texture: Rc) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 236 | pub fn apply_to_objects_mut(&mut self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 247 | pub fn apply_to_objects(&self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 258 | pub fn set_local_scale(&mut self, sx: f32, sy: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 264 | pub fn local_scale(&self) -> Vector2 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 269 | pub fn local_transformation(&self) -> Isometry2 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 274 | pub fn inverse_local_transformation(&self) -> Isometry2 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 280 | pub fn world_transformation(&self) -> Isometry2 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 290 | pub fn inverse_world_transformation(&self) -> Isometry2 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 299 | pub fn append_transformation(&mut self, t: &Isometry2) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 305 | pub fn prepend_to_local_transformation(&mut self, t: &Isometry2) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 311 | pub fn set_local_transformation(&mut self, t: Isometry2) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 317 | pub fn local_translation(&self) -> Translation2 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 322 | pub fn inverse_local_translation(&self) -> Translation2 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 327 | pub fn append_translation(&mut self, t: &Translation2) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 333 | pub fn prepend_to_local_translation(&mut self, t: &Translation2) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 339 | pub fn set_local_translation(&mut self, t: Translation2) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 345 | pub fn local_rotation(&self) -> UnitComplex { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 350 | pub fn inverse_local_rotation(&self) -> UnitComplex { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 355 | pub fn append_rotation(&mut self, r: &UnitComplex) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 361 | pub fn append_rotation_wrt_center(&mut self, r: &UnitComplex) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 367 | pub fn prepend_to_local_rotation(&mut self, r: &UnitComplex) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 373 | pub fn set_local_rotation(&mut self, r: UnitComplex) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 378 | fn invalidate(&mut self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 390 | fn update(&mut self) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/scene/planar_scene_node.rs:439:12 [INFO] [stdout] | [INFO] [stdout] 412 | impl PlanarSceneNode { [INFO] [stdout] | -------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 439 | pub fn unlink(&mut self) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 445 | pub fn data(&self) -> Ref { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 453 | pub fn add_group(&mut self) -> PlanarSceneNode { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 461 | pub fn add_child(&mut self, node: PlanarSceneNode) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 472 | pub fn add_object( [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 485 | pub fn add_rectangle(&mut self, wx: f32, wy: f32) -> PlanarSceneNode { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 491 | pub fn add_circle(&mut self, r: f32) -> PlanarSceneNode { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 497 | pub fn add_capsule(&mut self, r: f32, h: f32) -> PlanarSceneNode { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 540 | pub fn add_geom_with_name( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 549 | pub fn add_mesh( [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 561 | pub fn add_convex_polygon( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 581 | pub fn apply_to_scene_nodes_mut(&mut self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 590 | pub fn apply_to_scene_nodes(&self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 598 | pub fn render(&mut self, camera: &mut dyn PlanarCamera) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 603 | pub fn set_material(&mut self, material: Rc>>) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 608 | pub fn set_material_with_name(&mut self, name: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 613 | pub fn set_lines_width(&mut self, width: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 618 | pub fn set_lines_color(&mut self, color: Option>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 623 | pub fn set_points_size(&mut self, size: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 628 | pub fn set_surface_rendering_activation(&mut self, active: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 633 | pub fn enable_backface_culling(&mut self, active: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 638 | pub fn modify_vertices>)>(&mut self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 643 | pub fn read_vertices])>(&self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 648 | pub fn modify_faces>)>(&mut self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 653 | pub fn read_faces])>(&self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 658 | pub fn modify_uvs>)>(&mut self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 663 | pub fn read_uvs])>(&self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 668 | pub fn is_visible(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 673 | pub fn set_visible(&mut self, visible: bool) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 678 | pub fn set_color(&mut self, r: f32, g: f32, b: f32) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 683 | pub fn set_texture_from_file(&mut self, path: &Path, name: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 687 | pub fn set_texture_from_memory(&mut self, image_data: &[u8], name: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 692 | pub fn set_texture_with_name(&mut self, name: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 696 | pub fn set_texture(&mut self, texture: Rc) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 701 | pub fn set_local_scale(&mut self, sx: f32, sy: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 706 | pub fn append_transformation(&mut self, t: &Isometry2) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 711 | pub fn prepend_to_local_transformation(&mut self, t: &Isometry2) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 716 | pub fn set_local_transformation(&mut self, t: Isometry2) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 721 | pub fn append_translation(&mut self, t: &Translation2) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 726 | pub fn prepend_to_local_translation(&mut self, t: &Translation2) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 731 | pub fn set_local_translation(&mut self, t: Translation2) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 736 | pub fn append_rotation(&mut self, r: &UnitComplex) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 741 | pub fn append_rotation_wrt_center(&mut self, r: &UnitComplex) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 746 | pub fn prepend_to_local_rotation(&mut self, r: &UnitComplex) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 751 | pub fn set_local_rotation(&mut self, r: UnitComplex) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PlanarObjectMaterial` is never constructed [INFO] [stdout] --> src/builtin/planar_object_material.rs:11:12 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct PlanarObjectMaterial { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `activate`, and `deactivate` are never used [INFO] [stdout] --> src/builtin/planar_object_material.rs:23:12 [INFO] [stdout] | [INFO] [stdout] 22 | impl PlanarObjectMaterial { [INFO] [stdout] | ------------------------- associated items in this implementation [INFO] [stdout] 23 | pub fn new() -> PlanarObjectMaterial { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 40 | fn activate(&mut self) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 46 | fn deactivate(&mut self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `OBJECT_VERTEX_SRC` is never used [INFO] [stdout] --> src/builtin/planar_object_material.rs:148:8 [INFO] [stdout] | [INFO] [stdout] 148 | static OBJECT_VERTEX_SRC: &str = A_VERY_LONG_STRING; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `OBJECT_FRAGMENT_SRC` is never used [INFO] [stdout] --> src/builtin/planar_object_material.rs:149:8 [INFO] [stdout] | [INFO] [stdout] 149 | static OBJECT_FRAGMENT_SRC: &str = ANOTHER_VERY_LONG_STRING; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `A_VERY_LONG_STRING` is never used [INFO] [stdout] --> src/builtin/planar_object_material.rs:151:7 [INFO] [stdout] | [INFO] [stdout] 151 | const A_VERY_LONG_STRING: &str = "#version 100 [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ANOTHER_VERY_LONG_STRING` is never used [INFO] [stdout] --> src/builtin/planar_object_material.rs:168:7 [INFO] [stdout] | [INFO] [stdout] 168 | const ANOTHER_VERY_LONG_STRING: &str = "#version 100 [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `needs_rendering` and `set_line_width` are never used [INFO] [stdout] --> src/renderer/line_renderer.rs:44:12 [INFO] [stdout] | [INFO] [stdout] 19 | impl LineRenderer { [INFO] [stdout] | ----------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 44 | pub fn needs_rendering(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 57 | pub fn set_line_width(&mut self, line_width: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `needs_rendering`, `set_point_size`, and `draw_point` are never used [INFO] [stdout] --> src/renderer/point_renderer.rs:36:12 [INFO] [stdout] | [INFO] [stdout] 19 | impl PointRenderer { [INFO] [stdout] | ------------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 36 | pub fn needs_rendering(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 40 | pub fn set_point_size(&mut self, pt_size: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 44 | pub fn draw_point(&mut self, pt: Point3, color: Point3) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `unproject` is never used [INFO] [stdout] --> src/planar_camera/planar_camera.rs:17:8 [INFO] [stdout] | [INFO] [stdout] 6 | pub trait PlanarCamera { [INFO] [stdout] | ------------ method in this trait [INFO] [stdout] ... [INFO] [stdout] 17 | fn unproject(&self, window_coord: &Point2, window_size: &Vector2) -> Point2; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Sidescroll` is never constructed [INFO] [stdout] --> src/planar_camera/sidescroll.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct Sidescroll { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Sidescroll` 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: multiple associated items are never used [INFO] [stdout] --> src/planar_camera/sidescroll.rs:25:12 [INFO] [stdout] | [INFO] [stdout] 24 | impl Sidescroll { [INFO] [stdout] | --------------- associated items in this implementation [INFO] [stdout] 25 | pub fn new() -> Sidescroll { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | pub fn at(&self) -> Point2 { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 47 | pub fn set_at(&mut self, at: Point2) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 52 | pub fn zoom(&self) -> f32 { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 56 | pub fn set_zoom(&mut self, zoom: f32) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 63 | pub fn look_at(&mut self, at: Point2, zoom: f32) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 69 | fn update_restrictions(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 75 | pub fn drag_button(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 79 | pub fn rebind_drag_button(&mut self, new_button: Option) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 83 | fn handle_right_button_displacement(&mut self, dpos: &Vector2) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 89 | fn handle_scroll(&mut self, off: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 95 | fn update_projviews(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Grayscales` is never constructed [INFO] [stdout] --> src/post_processing/grayscales.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct Grayscales { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/post_processing/grayscales.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 17 | impl Grayscales { [INFO] [stdout] | --------------- associated function in this implementation [INFO] [stdout] 18 | pub fn new() -> Grayscales { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `VERTEX_SHADER` is never used [INFO] [stdout] --> src/post_processing/grayscales.rs:65:8 [INFO] [stdout] | [INFO] [stdout] 65 | static VERTEX_SHADER: &str = "#version 100 [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `FRAGMENT_SHADER` is never used [INFO] [stdout] --> src/post_processing/grayscales.rs:75:8 [INFO] [stdout] | [INFO] [stdout] 75 | static FRAGMENT_SHADER: &str = "#version 100 [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `OculusStereo` is never constructed [INFO] [stdout] --> src/post_processing/oculus_stereo.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct OculusStereo { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/post_processing/oculus_stereo.rs:26:12 [INFO] [stdout] | [INFO] [stdout] 25 | impl OculusStereo { [INFO] [stdout] | ----------------- associated function in this implementation [INFO] [stdout] 26 | pub fn new() -> OculusStereo { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `VERTEX_SHADER` is never used [INFO] [stdout] --> src/post_processing/oculus_stereo.rs:101:8 [INFO] [stdout] | [INFO] [stdout] 101 | static VERTEX_SHADER: &str = " [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `FRAGMENT_SHADER` is never used [INFO] [stdout] --> src/post_processing/oculus_stereo.rs:113:8 [INFO] [stdout] | [INFO] [stdout] 113 | static FRAGMENT_SHADER: &str = " [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SobelEdgeHighlight` is never constructed [INFO] [stdout] --> src/post_processing/sobel_edge_highlight.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct SobelEdgeHighlight { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/post_processing/sobel_edge_highlight.rs:29:12 [INFO] [stdout] | [INFO] [stdout] 28 | impl SobelEdgeHighlight { [INFO] [stdout] | ----------------------- associated function in this implementation [INFO] [stdout] 29 | pub fn new(threshold: f32) -> SobelEdgeHighlight { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `VERTEX_SHADER` is never used [INFO] [stdout] --> src/post_processing/sobel_edge_highlight.rs:109:8 [INFO] [stdout] | [INFO] [stdout] 109 | static VERTEX_SHADER: &str = "#version 100 [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `FRAGMENT_SHADER` is never used [INFO] [stdout] --> src/post_processing/sobel_edge_highlight.rs:125:8 [INFO] [stdout] | [INFO] [stdout] 125 | static FRAGMENT_SHADER: &str = "#version 100 [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Waves` is never constructed [INFO] [stdout] --> src/post_processing/waves.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 12 | pub struct Waves { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/post_processing/waves.rs:22:12 [INFO] [stdout] | [INFO] [stdout] 21 | impl Waves { [INFO] [stdout] | ---------- associated function in this implementation [INFO] [stdout] 22 | pub fn new() -> Waves { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `VERTEX_SHADER` is never used [INFO] [stdout] --> src/post_processing/waves.rs:78:8 [INFO] [stdout] | [INFO] [stdout] 78 | static VERTEX_SHADER: &str = "#version 100 [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `FRAGMENT_SHADER` is never used [INFO] [stdout] --> src/post_processing/waves.rs:88:8 [INFO] [stdout] | [INFO] [stdout] 88 | static FRAGMENT_SHADER: &str = "#version 100 [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `draw_line` and `set_line_width` are never used [INFO] [stdout] --> src/planar_line_renderer.rs:50:12 [INFO] [stdout] | [INFO] [stdout] 20 | impl PlanarLineRenderer { [INFO] [stdout] | ----------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 50 | pub fn draw_line(&mut self, a: Point2, b: Point2, color: Point3) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 91 | pub fn set_line_width(&mut self, line_width: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/loader/obj.rs:28:23 [INFO] [stdout] | [INFO] [stdout] 28 | pub fn split_words(s: &str) -> Words { [INFO] [stdout] | ^^^^ ----- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 28 | pub fn split_words(s: &str) -> Words<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/context/context.rs:115:13 [INFO] [stdout] | [INFO] [stdout] 115 | / CONTEXT_SINGLETON [INFO] [stdout] 116 | | .clone() [INFO] [stdout] | |________________________^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] = note: `#[warn(static_mut_refs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/event/event_manager.rs:25:43 [INFO] [stdout] | [INFO] [stdout] 25 | fn new(value: WindowEvent, inhibitor: &RefCell>) -> Event { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ ----- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 25 | fn new(value: WindowEvent, inhibitor: &RefCell>) -> Event<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/event/event_manager.rs:76:17 [INFO] [stdout] | [INFO] [stdout] 76 | pub fn iter(&mut self) -> Events { [INFO] [stdout] | ^^^^^^^^^ ------ the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 76 | pub fn iter(&mut self) -> Events<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant `Shift` should have an upper case name [INFO] [stdout] --> src/event/window_event.rs:235:15 [INFO] [stdout] | [INFO] [stdout] 235 | const Shift = 0b0001; [INFO] [stdout] | ^^^^^ help: convert the identifier to upper case: `SHIFT` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_upper_case_globals)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant `Control` should have an upper case name [INFO] [stdout] --> src/event/window_event.rs:236:15 [INFO] [stdout] | [INFO] [stdout] 236 | const Control = 0b0010; [INFO] [stdout] | ^^^^^^^ help: convert the identifier to upper case: `CONTROL` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant `Alt` should have an upper case name [INFO] [stdout] --> src/event/window_event.rs:237:15 [INFO] [stdout] | [INFO] [stdout] 237 | const Alt = 0b0100; [INFO] [stdout] | ^^^ help: convert the identifier to upper case: `ALT` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant `Super` should have an upper case name [INFO] [stdout] --> src/event/window_event.rs:238:15 [INFO] [stdout] | [INFO] [stdout] 238 | const Super = 0b1000; [INFO] [stdout] | ^^^^^ help: convert the identifier to upper case: `SUPER` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/text/font.rs:38:13 [INFO] [stdout] | [INFO] [stdout] 38 | DEFAULT_FONT_SINGLETON.clone().unwrap() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/scene/scene_node.rs:517:17 [INFO] [stdout] | [INFO] [stdout] 517 | pub fn data(&self) -> Ref { [INFO] [stdout] | ^^^^^ ------------------ the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 517 | pub fn data(&self) -> Ref<'_, SceneNodeData> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/scene/scene_node.rs:521:21 [INFO] [stdout] | [INFO] [stdout] 521 | pub fn data_mut(&mut self) -> RefMut { [INFO] [stdout] | ^^^^^^^^^ --------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 521 | pub fn data_mut(&mut self) -> RefMut<'_, SceneNodeData> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/scene/planar_scene_node.rs:445:17 [INFO] [stdout] | [INFO] [stdout] 445 | pub fn data(&self) -> Ref { [INFO] [stdout] | ^^^^^ ------------------------ the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 445 | pub fn data(&self) -> Ref<'_, PlanarSceneNodeData> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/scene/planar_scene_node.rs:449:21 [INFO] [stdout] | [INFO] [stdout] 449 | pub fn data_mut(&mut self) -> RefMut { [INFO] [stdout] | ^^^^^^^^^ --------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 449 | pub fn data_mut(&mut self) -> RefMut<'_, PlanarSceneNodeData> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 39s [INFO] running `Command { std: "docker" "inspect" "0d82903291f190783a3b3d8f78bf6abf27232c6575a82c8e60682f6d2a204c57", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0d82903291f190783a3b3d8f78bf6abf27232c6575a82c8e60682f6d2a204c57", kill_on_drop: false }` [INFO] [stdout] 0d82903291f190783a3b3d8f78bf6abf27232c6575a82c8e60682f6d2a204c57 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:eea15d5475069c3ef791f10c2c6b5af2ee421ef2da1e680ecce1cba46243983b" "/opt/rustwide/cargo-home/bin/cargo" "+44f415c1d617ebc7b931a243b7b321ef8a6ca47c" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] f9583fec4951f746dc030628382dada1e5f445bf4f94dab95e298c3011b50d98 [INFO] running `Command { std: "docker" "start" "-a" "f9583fec4951f746dc030628382dada1e5f445bf4f94dab95e298c3011b50d98", kill_on_drop: false }` [INFO] [stderr] Compiling starman v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused imports: `Isometry3` and `Point2` [INFO] [stdout] --> src/main.rs:7:16 [INFO] [stdout] | [INFO] [stdout] 7 | use nalgebra::{Isometry3, Point2, Point3, Translation3, UnitQuaternion, Vector3}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `scene::object::Object` [INFO] [stdout] --> src/main.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use scene::object::Object; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::f32` [INFO] [stdout] --> src/main.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use std::f32; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Isometry3` and `Translation3` [INFO] [stdout] --> src/window/window.rs:8:16 [INFO] [stdout] | [INFO] [stdout] 8 | use nalgebra::{Isometry3, Point2, Point3, Translation3, Vector2, Vector3}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `IndexBuffer` and `TriMesh` [INFO] [stdout] --> src/loader/obj.rs:14:30 [INFO] [stdout] | [INFO] [stdout] 14 | use ncollide3d::procedural::{IndexBuffer, TriMesh}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Zero` [INFO] [stdout] --> src/loader/obj.rs:15:27 [INFO] [stdout] | [INFO] [stdout] 15 | use num_traits::{Bounded, Zero}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self` [INFO] [stdout] --> src/loader/obj.rs:21:29 [INFO] [stdout] | [INFO] [stdout] 21 | use crate::resource::mesh::{self, Mesh}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `vertex_index_u32` [INFO] [stdout] --> src/resource/vertex_index.rs:6:11 [INFO] [stdout] | [INFO] [stdout] 6 | #[cfg(not(feature = "vertex_index_u32"))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove the condition [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `vertex_index_u32` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `vertex_index_u32` [INFO] [stdout] --> src/resource/vertex_index.rs:12:7 [INFO] [stdout] | [INFO] [stdout] 12 | #[cfg(feature = "vertex_index_u32")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove the condition [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `vertex_index_u32` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::mem` [INFO] [stdout] --> src/resource/effect.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::mem; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `GLintptr` [INFO] [stdout] --> src/resource/effect.rs:10:40 [INFO] [stdout] | [INFO] [stdout] 10 | use crate::context::context::{Context, GLintptr, Program, Shader, UniformLocation, VertexArray}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::resource::gpu_vector::GPUVec` [INFO] [stdout] --> src/resource/effect.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use crate::resource::gpu_vector::GPUVec; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::rc::Rc` [INFO] [stdout] --> src/context/context.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::rc::Rc; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self::sidescroll::Sidescroll` [INFO] [stdout] --> src/planar_camera/mod.rs:5:9 [INFO] [stdout] | [INFO] [stdout] 5 | pub use self::sidescroll::Sidescroll; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `buffer` [INFO] [stdout] --> src/loader/glb.rs:31:44 [INFO] [stdout] | [INFO] [stdout] 31 | let reader = primitive.reader(|buffer| { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_buffer` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/resource/gpu_vector.rs:109:32 [INFO] [stdout] | [INFO] [stdout] 109 | .map(|&(_, ref h)| unsafe { verify!(Context::get().delete_buffer(Some(h))) }); [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_unsafe)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/resource/gpu_vector.rs:188:5 [INFO] [stdout] | [INFO] [stdout] 188 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/resource/gl_primitive.rs:87:9 [INFO] [stdout] | [INFO] [stdout] 87 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/resource/gl_primitive.rs:99:9 [INFO] [stdout] | [INFO] [stdout] 99 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `log` [INFO] [stdout] --> src/resource/effect.rs:201:9 [INFO] [stdout] | [INFO] [stdout] 201 | let log = ctxt.get_shader_info_log(&shader); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_log` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/resource/texture_manager.rs:56:9 [INFO] [stdout] | [INFO] [stdout] 56 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/resource/texture_manager.rs:179:9 [INFO] [stdout] | [INFO] [stdout] 179 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/context/context.rs:24:9 [INFO] [stdout] | [INFO] [stdout] 24 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/scene/scene_node.rs:733:21 [INFO] [stdout] | [INFO] [stdout] 733 | let mut object = Object::new( [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/builtin/object_material.rs:88:9 [INFO] [stdout] | [INFO] [stdout] 88 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/builtin/uvs_material.rs:77:9 [INFO] [stdout] | [INFO] [stdout] 77 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/builtin/normals_material.rs:89:9 [INFO] [stdout] | [INFO] [stdout] 89 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `unsafe` block [INFO] [stdout] --> src/builtin/planar_object_material.rs:69:9 [INFO] [stdout] | [INFO] [stdout] 69 | unsafe { [INFO] [stdout] | ^^^^^^ unnecessary `unsafe` block [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/window/window.rs:96:12 [INFO] [stdout] | [INFO] [stdout] 79 | impl Window { [INFO] [stdout] | ----------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 96 | pub fn size(&self) -> Vector2 { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 102 | pub fn set_framerate_limit(&mut self, fps: Option) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 109 | pub fn set_title(&mut self, title: &str) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 113 | pub fn set_icon(&mut self, icon: impl GenericImage>) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 117 | pub fn set_cursor_grab(&self, grab: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 122 | pub fn set_cursor_position(&self, x: f64, y: f64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 127 | pub fn hide_cursor(&self, hide: bool) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 137 | pub fn hide(&mut self) { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 142 | pub fn show(&mut self) { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 147 | pub fn set_background_color(&mut self, r: f32, g: f32, b: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 154 | pub fn set_point_size(&mut self, pt_size: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 159 | pub fn set_line_width(&mut self, line_width: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 170 | pub fn draw_planar_line(&mut self, a: &Point2, b: &Point2, color: &Point3) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 175 | pub fn draw_point(&mut self, pt: &Point3, color: &Point3) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 180 | pub fn draw_text( [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 192 | pub fn remove(&mut self, sn: &mut SceneNode) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 196 | pub fn remove_node(&mut self, sn: &mut SceneNode) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 200 | pub fn remove_planar_node(&mut self, sn: &mut PlanarSceneNode) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 204 | pub fn add_group(&mut self) -> SceneNode { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 208 | pub fn add_planar_group(&mut self) -> PlanarSceneNode { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 226 | pub fn add_mesh(&mut self, mesh: Rc>, scale: Vector3) -> SceneNode { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 230 | pub fn add_planar_mesh( [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 238 | pub fn add_trimesh(&mut self, descr: TriMesh, scale: Vector3) -> SceneNode { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 242 | pub fn add_geom_with_name( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 278 | pub fn add_sphere(&mut self, r: f32) -> SceneNode { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 282 | pub fn add_cone(&mut self, r: f32, h: f32) -> SceneNode { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 286 | pub fn add_cylinder(&mut self, r: f32, h: f32) -> SceneNode { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 290 | pub fn add_capsule(&mut self, r: f32, h: f32) -> SceneNode { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 294 | pub fn add_planar_capsule(&mut self, r: f32, h: f32) -> PlanarSceneNode { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 298 | pub fn add_quad(&mut self, w: f32, h: f32, usubdivs: usize, vsubdivs: usize) -> SceneNode { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 302 | pub fn add_quad_with_vertices( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 312 | pub fn add_texture(&mut self, path: &Path, name: &str) -> Rc { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 316 | pub fn add_rectangle(&mut self, wx: f32, wy: f32) -> PlanarSceneNode { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 320 | pub fn add_circle(&mut self, r: f32) -> PlanarSceneNode { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 324 | pub fn add_convex_polygon( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 332 | pub fn is_closed(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 336 | pub fn scale_factor(&self) -> f64 { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 344 | pub fn new_hidden(title: &str) -> Window { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 352 | pub fn new_with_size(title: &str, width: u32, height: u32) -> Window { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 356 | pub fn new_with_setup(title: &str, width: u32, height: u32, setup: CanvasSetup) -> Window { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 423 | pub fn scene(&self) -> &SceneNode { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 428 | pub fn scene_mut(&mut self) -> &mut SceneNode { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 432 | pub fn snap(&self, out: &mut Vec) { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 437 | pub fn snap_rect(&self, out: &mut Vec, x: usize, y: usize, width: usize, height: usize) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 459 | pub fn snap_image(&self) -> ImageBuffer, Vec> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 468 | pub fn events(&self) -> EventManager { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 472 | pub fn get_key(&self, key: Key) -> Action { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 476 | pub fn cursor_pos(&self) -> Option<(f64, f64)> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 528 | pub fn render_loop(self, state: S) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 543 | pub fn render_with_state(&mut self, state: &mut S) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 547 | fn do_render_with_state(&mut self, state: &mut S) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 566 | pub fn render_with_effect(&mut self, effect: &mut (dyn PostProcessingEffect)) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 571 | pub fn render_with_camera(&mut self, camera: &mut (dyn Camera)) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 576 | pub fn render_with_cameras( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 585 | pub fn render_with_camera_and_effect( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 594 | pub fn render_with_cameras_and_effect( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from_u32` is never used [INFO] [stdout] --> src/window/canvas.rs:21:12 [INFO] [stdout] | [INFO] [stdout] 20 | impl NumSamples { [INFO] [stdout] | --------------- associated function in this implementation [INFO] [stdout] 21 | pub fn from_u32(i: u32) -> Option { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/window/canvas.rs:58:12 [INFO] [stdout] | [INFO] [stdout] 44 | impl Canvas { [INFO] [stdout] | ----------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 58 | pub fn render_loop(data: impl FnMut(f64) -> bool + 'static) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 74 | pub fn cursor_pos(&self) -> Option<(f64, f64)> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 82 | pub fn set_title(&mut self, title: &str) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 86 | pub fn set_icon(&mut self, icon: impl GenericImage>) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 90 | pub fn set_cursor_grab(&self, grab: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 94 | pub fn set_cursor_position(&self, x: f64, y: f64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 98 | pub fn hide_cursor(&self, hide: bool) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 106 | pub fn show(&mut self) { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 114 | pub fn get_key(&self, key: Key) -> Action { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/window/canvas.rs:140:8 [INFO] [stdout] | [INFO] [stdout] 131 | pub(crate) trait AbstractCanvas { [INFO] [stdout] | -------------- associated items in this trait [INFO] [stdout] ... [INFO] [stdout] 140 | fn render_loop(data: impl FnMut(f64) -> bool + 'static); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 144 | fn cursor_pos(&self) -> Option<(f64, f64)>; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 147 | fn set_title(&mut self, title: &str); [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 148 | fn set_icon(&mut self, icon: impl GenericImage>); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 149 | fn set_cursor_grab(&self, grab: bool); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] 150 | fn set_cursor_position(&self, x: f64, y: f64); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 151 | fn hide_cursor(&self, hide: bool); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 152 | fn hide(&mut self); [INFO] [stdout] 153 | fn show(&mut self); [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 156 | fn get_key(&self, key: Key) -> Action; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `State` is never used [INFO] [stdout] --> src/window/state.rs:7:11 [INFO] [stdout] | [INFO] [stdout] 7 | pub trait State: 'static { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/loader/mtl.rs:150:12 [INFO] [stdout] | [INFO] [stdout] 134 | impl MtlMaterial { [INFO] [stdout] | ---------------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 150 | pub fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name` and `normals` are never read [INFO] [stdout] --> src/loader/glb.rs:8:9 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct Mesh { [INFO] [stdout] | ---- fields in this struct [INFO] [stdout] 8 | pub name: Option, [INFO] [stdout] | ^^^^ [INFO] [stdout] 9 | pub vertices: Vec>, [INFO] [stdout] 10 | pub normals: Vec>, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `UNSIGNED_INT` is never used [INFO] [stdout] --> src/resource/vertex_index.rs:4:7 [INFO] [stdout] | [INFO] [stdout] 4 | const UNSIGNED_INT: u32 = 0x1405; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `to_trimesh`, `recompute_normals`, `faces`, `normals`, `coords`, and `uvs` are never used [INFO] [stdout] --> src/resource/mesh.rs:88:12 [INFO] [stdout] | [INFO] [stdout] 20 | impl Mesh { [INFO] [stdout] | --------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 88 | pub fn to_trimesh(&self) -> Option> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 232 | pub fn recompute_normals(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 240 | pub fn faces(&self) -> &Arc>>> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 244 | pub fn normals(&self) -> &Arc>>> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 248 | pub fn coords(&self) -> &Arc>>> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 252 | pub fn uvs(&self) -> &Arc>>> { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `is_on_ram`, `unload_from_gpu`, and `unload_from_ram` are never used [INFO] [stdout] --> src/resource/gpu_vector.rs:61:12 [INFO] [stdout] | [INFO] [stdout] 14 | impl GPUVec { [INFO] [stdout] | ------------------------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 61 | pub fn is_on_ram(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 105 | pub fn unload_from_gpu(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 116 | pub fn unload_from_ram(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `to_owned` is never used [INFO] [stdout] --> src/resource/gpu_vector.rs:127:12 [INFO] [stdout] | [INFO] [stdout] 125 | impl GPUVec { [INFO] [stdout] | -------------------------------------- method in this implementation [INFO] [stdout] 126 | #[inline] [INFO] [stdout] 127 | pub fn to_owned(&self) -> Option> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `flatten` is never used [INFO] [stdout] --> src/resource/gl_primitive.rs:22:8 [INFO] [stdout] | [INFO] [stdout] 14 | pub unsafe trait GLPrimitive: Copy { [INFO] [stdout] | ----------- associated function in this trait [INFO] [stdout] ... [INFO] [stdout] 22 | fn flatten(array: &[Self]) -> &[Self::Element] { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/resource/effect.rs:22:12 [INFO] [stdout] | [INFO] [stdout] 21 | impl Effect { [INFO] [stdout] | ----------- associated function in this implementation [INFO] [stdout] 22 | pub fn new(vshader_path: &Path, fshader_path: &Path) -> Option { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `set_wrapping_s` and `set_wrapping_t` are never used [INFO] [stdout] --> src/resource/texture_manager.rs:39:12 [INFO] [stdout] | [INFO] [stdout] 31 | impl Texture { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 39 | pub fn set_wrapping_s(&mut self, wrapping: TextureWrapping) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 46 | pub fn set_wrapping_t(&mut self, wrapping: TextureWrapping) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get`, `get_with_size`, `add_empty`, `add_image`, `add_image_from_memory`, and `set_generate_mipmaps` are never used [INFO] [stdout] --> src/resource/texture_manager.rs:129:12 [INFO] [stdout] | [INFO] [stdout] 72 | impl TextureManager { [INFO] [stdout] | ------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 129 | pub fn get(&mut self, name: &str) -> Option> { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 133 | pub fn get_with_size(&mut self, name: &str) -> Option<(Rc, (u32, u32))> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 139 | pub fn add_empty(&mut self, name: &str) -> Rc { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 146 | pub fn add_image(&mut self, image: DynamicImage, name: &str) -> Rc { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 157 | pub fn add_image_from_memory(&mut self, image_data: &[u8], name: &str) -> Rc { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 261 | pub fn set_generate_mipmaps(&mut self, enabled: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `remove` is never used [INFO] [stdout] --> src/resource/mesh_manager.rs:59:12 [INFO] [stdout] | [INFO] [stdout] 18 | impl MeshManager { [INFO] [stdout] | ---------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 59 | pub fn remove(&mut self, name: &str) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `materials` is never read [INFO] [stdout] --> src/resource/material_manager.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct MaterialManager { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] 10 | default_material: Rc>>, [INFO] [stdout] 11 | materials: HashMap>>>, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `get`, `add`, and `remove` are never used [INFO] [stdout] --> src/resource/material_manager.rs:48:12 [INFO] [stdout] | [INFO] [stdout] 14 | impl MaterialManager { [INFO] [stdout] | -------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 48 | pub fn get(&mut self, name: &str) -> Option>>> { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 52 | pub fn add(&mut self, material: Rc>>, name: &str) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 56 | pub fn remove(&mut self, name: &str) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `texture_id` and `depth_id` are never used [INFO] [stdout] --> src/resource/framebuffer_manager.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 17 | impl RenderTarget { [INFO] [stdout] | ----------------- methods in this implementation [INFO] [stdout] 18 | pub fn texture_id(&self) -> Option<&Texture> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 26 | pub fn depth_id(&self) -> Option<&Either> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `coords`, `faces`, `uvs`, and `edges` are never read [INFO] [stdout] --> src/resource/planar_mesh.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct PlanarMesh { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] 11 | coords: Arc>>>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 12 | faces: Arc>>>, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 13 | uvs: Arc>>>, [INFO] [stdout] | ^^^ [INFO] [stdout] 14 | edges: Option>>>>, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/resource/planar_mesh.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 17 | impl PlanarMesh { [INFO] [stdout] | --------------- associated items in this implementation [INFO] [stdout] 18 | pub fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 49 | pub fn new_with_gpu_vectors( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 62 | pub fn bind_coords(&mut self, coords: &mut ShaderAttribute>) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 66 | pub fn bind_uvs(&mut self, uvs: &mut ShaderAttribute>) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 70 | pub fn bind_faces(&mut self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 74 | pub fn bind( [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 84 | pub fn bind_edges(&mut self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 100 | pub fn unbind(&self) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 106 | pub fn num_pts(&self) -> usize { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 110 | pub fn faces(&self) -> &Arc>>> { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 114 | pub fn coords(&self) -> &Arc>>> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 118 | pub fn uvs(&self) -> &Arc>>> { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PlanarMeshManager` is never constructed [INFO] [stdout] --> src/resource/planar_mesh_manager.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct PlanarMeshManager { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `get_global_manager`, `get`, `add`, and `remove` are never used [INFO] [stdout] --> src/resource/planar_mesh_manager.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 17 | impl PlanarMeshManager { [INFO] [stdout] | ---------------------- associated items in this implementation [INFO] [stdout] 18 | pub fn new() -> PlanarMeshManager { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 61 | pub fn get_global_manager T>(mut f: F) -> T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 65 | pub fn get(&mut self, name: &str) -> Option>> { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 69 | pub fn add(&mut self, mesh: Rc>, name: &str) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | pub fn remove(&mut self, name: &str) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PlanarMaterialManager` is never constructed [INFO] [stdout] --> src/resource/planar_material_manager.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct PlanarMaterialManager { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `get_global_manager`, `get_default`, `get`, `add`, and `remove` are never used [INFO] [stdout] --> src/resource/planar_material_manager.rs:15:12 [INFO] [stdout] | [INFO] [stdout] 14 | impl PlanarMaterialManager { [INFO] [stdout] | -------------------------- associated items in this implementation [INFO] [stdout] 15 | pub fn new() -> PlanarMaterialManager { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 29 | pub fn get_global_manager T>(mut f: F) -> T { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 33 | pub fn get_default(&self) -> Rc>> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 37 | pub fn get(&mut self, name: &str) -> Option>>> { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 41 | pub fn add(&mut self, material: Rc>>, name: &str) { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 45 | pub fn remove(&mut self, name: &str) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `GLsizeiptr` is never used [INFO] [stdout] --> src/context/context.rs:12:10 [INFO] [stdout] | [INFO] [stdout] 12 | pub type GLsizeiptr = isize; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/context/context.rs:55:15 [INFO] [stdout] | [INFO] [stdout] 41 | impl Context { [INFO] [stdout] | ------------ associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 55 | pub const RENDERBUFFER: u32 = ContextImpl::RENDERBUFFER; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 61 | pub const UNSIGNED_BYTE: u32 = ContextImpl::UNSIGNED_BYTE; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 67 | pub const NEAREST: u32 = ContextImpl::NEAREST; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 84 | pub const TRIANGLE_STRIP: u32 = ContextImpl::TRIANGLE_STRIP; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 93 | pub const PACK_ALIGNMENT: u32 = ContextImpl::PACK_ALIGNMENT; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 99 | pub const ALPHA: u32 = ContextImpl::ALPHA; [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 187 | pub fn delete_vertex_array(&self, vertex_array: Option<&VertexArray>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 211 | pub fn buffer_data_uninitialized(&self, target: GLenum, len: usize, usage: GLenum) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 510 | pub fn read_pixels( [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constants `NEAREST`, `TRIANGLE_STRIP`, `PACK_ALIGNMENT`, and `ALPHA` are never used [INFO] [stdout] --> src/context/context.rs:564:11 [INFO] [stdout] | [INFO] [stdout] 538 | pub(crate) trait AbstractContextConst { [INFO] [stdout] | -------------------- associated constants in this trait [INFO] [stdout] ... [INFO] [stdout] 564 | const NEAREST: u32; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 581 | const TRIANGLE_STRIP: u32; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 590 | const PACK_ALIGNMENT: u32; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 596 | const ALPHA: u32; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `delete_vertex_array`, `buffer_data_uninitialized`, and `read_pixels` are never used [INFO] [stdout] --> src/context/context.rs:638:8 [INFO] [stdout] | [INFO] [stdout] 600 | pub(crate) trait AbstractContext { [INFO] [stdout] | --------------- methods in this trait [INFO] [stdout] ... [INFO] [stdout] 638 | fn delete_vertex_array(&self, vertex_array: Option<&Self::VertexArray>); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 644 | fn buffer_data_uninitialized(&self, target: GLenum, len: usize, usage: GLenum); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 764 | fn read_pixels( [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/event/event_manager.rs:25:8 [INFO] [stdout] | [INFO] [stdout] 23 | impl<'a> Event<'a> { [INFO] [stdout] | ------------------ associated function in this implementation [INFO] [stdout] 24 | #[inline] [INFO] [stdout] 25 | fn new(value: WindowEvent, inhibitor: &RefCell>) -> Event { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Events` is never constructed [INFO] [stdout] --> src/event/event_manager.rs:34:12 [INFO] [stdout] | [INFO] [stdout] 34 | pub struct Events<'a> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/event/event_manager.rs:41:8 [INFO] [stdout] | [INFO] [stdout] 39 | impl<'a> Events<'a> { [INFO] [stdout] | ------------------- associated function in this implementation [INFO] [stdout] 40 | #[inline] [INFO] [stdout] 41 | fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `EventManager` is never constructed [INFO] [stdout] --> src/event/event_manager.rs:61:12 [INFO] [stdout] | [INFO] [stdout] 61 | pub struct EventManager { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new` and `iter` are never used [INFO] [stdout] --> src/event/event_manager.rs:68:12 [INFO] [stdout] | [INFO] [stdout] 66 | impl EventManager { [INFO] [stdout] | ----------------- associated items in this implementation [INFO] [stdout] 67 | #[inline] [INFO] [stdout] 68 | pub fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 76 | pub fn iter(&mut self) -> Events { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `is_keyboard_event`, `is_mouse_event`, and `is_touch_event` are never used [INFO] [stdout] --> src/event/window_event.rs:24:12 [INFO] [stdout] | [INFO] [stdout] 23 | impl WindowEvent { [INFO] [stdout] | ---------------- methods in this implementation [INFO] [stdout] 24 | pub fn is_keyboard_event(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 28 | pub fn is_mouse_event(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 35 | pub fn is_touch_event(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new`, `from_bytes`, and `default` are never used [INFO] [stdout] --> src/text/font.rs:15:12 [INFO] [stdout] | [INFO] [stdout] 14 | impl Font { [INFO] [stdout] | --------- associated functions in this implementation [INFO] [stdout] 15 | pub fn new(path: &Path) -> Option> { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 22 | pub fn from_bytes(memory: &[u8]) -> Option> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 27 | pub fn default() -> Rc { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Glyph` is never constructed [INFO] [stdout] --> src/text/glyph.rs:3:12 [INFO] [stdout] | [INFO] [stdout] 3 | pub struct Glyph { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/text/glyph.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 11 | impl Glyph { [INFO] [stdout] | ---------- associated function in this implementation [INFO] [stdout] 12 | pub fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `draw_text` is never used [INFO] [stdout] --> src/text/renderer.rs:103:12 [INFO] [stdout] | [INFO] [stdout] 35 | impl TextRenderer { [INFO] [stdout] | ----------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 103 | pub fn draw_text( [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/camera/arc_ball.rs:81:12 [INFO] [stdout] | [INFO] [stdout] 37 | impl ArcBall { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 81 | pub fn at(&self) -> Point3 { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 85 | pub fn set_at(&mut self, at: Point3) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 90 | pub fn yaw(&self) -> f32 { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 94 | pub fn set_yaw(&mut self, yaw: f32) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 101 | pub fn pitch(&self) -> f32 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 105 | pub fn set_pitch(&mut self, pitch: f32) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 112 | pub fn min_pitch(&self) -> f32 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 116 | pub fn set_min_pitch(&mut self, min_pitch: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 120 | pub fn max_pitch(&self) -> f32 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 124 | pub fn set_max_pitch(&mut self, max_pitch: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 128 | pub fn dist(&self) -> f32 { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 132 | pub fn set_dist(&mut self, dist: f32) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 139 | pub fn min_dist(&self) -> f32 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 143 | pub fn set_min_dist(&mut self, min_dist: f32) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 147 | pub fn max_dist(&self) -> f32 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 151 | pub fn set_max_dist(&mut self, max_dist: f32) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 155 | pub fn set_dist_step(&mut self, dist_step: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 194 | pub fn rotate_button(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 198 | pub fn rebind_rotate_button(&mut self, new_button: Option) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 202 | pub fn rotate_modifiers(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 206 | pub fn set_rotate_modifiers(&mut self, modifiers: Option) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 210 | pub fn drag_modifiers(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 214 | pub fn set_drag_modifiers(&mut self, modifiers: Option) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 218 | pub fn drag_button(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 222 | pub fn rebind_drag_button(&mut self, new_button: Option) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 226 | pub fn reset_key(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 230 | pub fn rebind_reset_key(&mut self, new_key: Option) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 275 | pub fn set_up_axis(&mut self, up_axis: Vector3) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 280 | pub fn set_up_axis_dir(&mut self, up_axis: Unit>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `transformation`, `inverse_transformation`, `project`, and `unproject` are never used [INFO] [stdout] --> src/camera/camera.rs:10:8 [INFO] [stdout] | [INFO] [stdout] 6 | pub trait Camera { [INFO] [stdout] | ------ methods in this trait [INFO] [stdout] ... [INFO] [stdout] 10 | fn transformation(&self) -> Matrix4; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] 11 | fn inverse_transformation(&self) -> Matrix4; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 34 | fn project(&self, world_coord: &Point3, size: &Vector2) -> Vector2 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 46 | fn unproject( [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `FirstPerson` is never constructed [INFO] [stdout] --> src/camera/first_person.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct FirstPerson { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FirstPerson` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/camera/first_person.rs:38:12 [INFO] [stdout] | [INFO] [stdout] 37 | impl FirstPerson { [INFO] [stdout] | ---------------- associated items in this implementation [INFO] [stdout] 38 | pub fn new(eye: Point3, at: Point3) -> FirstPerson { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 42 | pub fn new_with_frustrum( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 77 | pub fn set_move_step(&mut self, step: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 82 | pub fn set_pitch_step(&mut self, step: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 87 | pub fn set_yaw_step(&mut self, step: f32) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 92 | pub fn move_step(&self) -> f32 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 97 | pub fn pitch_step(&self) -> f32 { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 102 | pub fn yaw_step(&self) -> f32 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 106 | pub fn look_at(&mut self, eye: Point3, at: Point3) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 120 | pub fn at(&self) -> Point3 { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 128 | fn update_restrictions(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 139 | pub fn rotate_button(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 143 | pub fn rebind_rotate_button(&mut self, new_button: Option) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 147 | pub fn drag_button(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 151 | pub fn rebind_drag_button(&mut self, new_button: Option) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 155 | pub fn up_key(&self) -> Option { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 159 | pub fn down_key(&self) -> Option { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 163 | pub fn left_key(&self) -> Option { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 167 | pub fn right_key(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 171 | pub fn rebind_up_key(&mut self, new_key: Option) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 175 | pub fn rebind_down_key(&mut self, new_key: Option) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 179 | pub fn rebind_left_key(&mut self, new_key: Option) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 183 | pub fn rebind_right_key(&mut self, new_key: Option) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 187 | pub fn unbind_movement_keys(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 195 | pub fn handle_left_button_displacement(&mut self, dpos: &Vector2) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 204 | pub fn handle_right_button_displacement(&mut self, dpos: &Vector2) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | pub fn handle_scroll(&mut self, yoff: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 225 | fn update_projviews(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 235 | pub fn eye_dir(&self) -> Vector3 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 239 | pub fn move_dir(&self, up: bool, down: bool, right: bool, left: bool) -> Vector3 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 270 | pub fn translate_mut(&mut self, t: &Translation3) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 277 | pub fn translate(&self, t: &Translation3) -> FirstPerson { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 284 | fn set_eye(&mut self, eye: Point3) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 291 | pub fn set_up_axis(&mut self, up_axis: Vector3) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 296 | pub fn set_up_axis_dir(&mut self, up_axis: Unit>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 305 | fn observer_frame(&self) -> Isometry3 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check_optional_key_state` is never used [INFO] [stdout] --> src/camera/first_person.rs:384:4 [INFO] [stdout] | [INFO] [stdout] 384 | fn check_optional_key_state(canvas: &Canvas, key: Option, key_state: Action) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `CoordSystemRh` is never constructed [INFO] [stdout] --> src/camera/first_person.rs:393:8 [INFO] [stdout] | [INFO] [stdout] 393 | struct CoordSystemRh { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `CoordSystemRh` 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: associated function `from_up_axis` is never used [INFO] [stdout] --> src/camera/first_person.rs:400:8 [INFO] [stdout] | [INFO] [stdout] 398 | impl CoordSystemRh { [INFO] [stdout] | ------------------ associated function in this implementation [INFO] [stdout] 399 | #[inline] [INFO] [stdout] 400 | fn from_up_axis(up_axis: Unit>) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `FirstPersonStereo` is never constructed [INFO] [stdout] --> src/camera/first_person_stereo.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct FirstPersonStereo { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FirstPersonStereo` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/camera/first_person_stereo.rs:33:12 [INFO] [stdout] | [INFO] [stdout] 32 | impl FirstPersonStereo { [INFO] [stdout] | ---------------------- associated items in this implementation [INFO] [stdout] 33 | pub fn new(eye: Point3, at: Point3, ipd: f32) -> FirstPersonStereo { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 37 | pub fn new_with_frustrum( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 69 | pub fn look_at(&mut self, eye: Point3, at: Point3) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 81 | pub fn at(&self) -> Point3 { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 89 | fn update_restrictions(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 101 | pub fn handle_left_button_displacement(&mut self, dpos: &Vector2) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 109 | fn update_eyes_location(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 117 | pub fn handle_right_button_displacement(&mut self, dpos: &Vector2) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 130 | pub fn handle_scroll(&mut self, yoff: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 140 | fn update_projviews(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 148 | fn view_eye(&self, eye: usize) -> Matrix4 { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 156 | fn view_transform_left(&self) -> Isometry3 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 160 | fn view_transform_right(&self) -> Isometry3 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 164 | pub fn ipd(&self) -> f32 { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 168 | pub fn set_ipd(&mut self, ipd: f32) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `FixedView` is never constructed [INFO] [stdout] --> src/camera/fixed_view.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct FixedView { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FixedView` 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: associated items `new`, `new_with_frustrum`, and `update_projviews` are never used [INFO] [stdout] --> src/camera/fixed_view.rs:16:12 [INFO] [stdout] | [INFO] [stdout] 15 | impl FixedView { [INFO] [stdout] | -------------- associated items in this implementation [INFO] [stdout] 16 | pub fn new() -> FixedView { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 20 | pub fn new_with_frustrum(fov: f32, znear: f32, zfar: f32) -> FixedView { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 28 | fn update_projviews(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `user_data` is never read [INFO] [stdout] --> src/scene/object.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct ObjectData { [INFO] [stdout] | ---------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 23 | user_data: Box, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `user_data` is never used [INFO] [stdout] --> src/scene/object.rs:63:12 [INFO] [stdout] | [INFO] [stdout] 26 | impl ObjectData { [INFO] [stdout] | --------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 63 | pub fn user_data(&self) -> &dyn Any { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/scene/object.rs:120:12 [INFO] [stdout] | [INFO] [stdout] 73 | impl Object { [INFO] [stdout] | ----------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 120 | pub fn data(&self) -> &ObjectData { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 125 | pub fn data_mut(&mut self) -> &mut ObjectData { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 130 | pub fn enable_backface_culling(&mut self, active: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 135 | pub fn set_user_data(&mut self, user_data: Box) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 140 | pub fn material(&self) -> Rc>> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 145 | pub fn set_material(&mut self, material: Rc>>) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 150 | pub fn set_lines_width(&mut self, width: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 155 | pub fn lines_width(&self) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 160 | pub fn set_lines_color(&mut self, color: Option>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 165 | pub fn lines_color(&self) -> Option> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 170 | pub fn set_points_size(&mut self, size: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 175 | pub fn points_size(&self) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 180 | pub fn set_surface_rendering_activation(&mut self, active: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 185 | pub fn surface_rendering_activation(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 190 | pub fn mesh(&self) -> &Rc> { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 195 | pub fn modify_vertices>)>(&mut self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 207 | pub fn read_vertices])>(&self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 219 | pub fn recompute_normals(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 224 | pub fn modify_normals>)>(&mut self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 236 | pub fn read_normals])>(&self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 248 | pub fn modify_faces>)>(&mut self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 260 | pub fn read_faces])>(&self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 272 | pub fn modify_uvs>)>(&mut self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 284 | pub fn read_uvs])>(&self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 310 | pub fn set_texture_with_name(&mut self, name: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple fields are never read [INFO] [stdout] --> src/scene/planar_object.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 15 | pub struct PlanarObjectData { [INFO] [stdout] | ---------------- fields in this struct [INFO] [stdout] 16 | material: Rc>>, [INFO] [stdout] 17 | texture: Rc, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 18 | color: Point3, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 19 | lines_color: Option>, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 20 | wlines: f32, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 21 | wpoints: f32, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 22 | draw_surface: bool, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 23 | cull: bool, [INFO] [stdout] | ^^^^ [INFO] [stdout] 24 | user_data: Box, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/scene/planar_object.rs:29:12 [INFO] [stdout] | [INFO] [stdout] 27 | impl PlanarObjectData { [INFO] [stdout] | --------------------- methods in this implementation [INFO] [stdout] 28 | #[inline] [INFO] [stdout] 29 | pub fn texture(&self) -> &Rc { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 34 | pub fn color(&self) -> &Point3 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 39 | pub fn lines_width(&self) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 44 | pub fn lines_color(&self) -> Option<&Point3> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 49 | pub fn points_size(&self) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 54 | pub fn surface_rendering_active(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 59 | pub fn backface_culling_enabled(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 64 | pub fn user_data(&self) -> &dyn Any { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/scene/planar_object.rs:76:12 [INFO] [stdout] | [INFO] [stdout] 74 | impl PlanarObject { [INFO] [stdout] | ----------------- associated items in this implementation [INFO] [stdout] 75 | #[doc(hidden)] [INFO] [stdout] 76 | pub fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 117 | pub fn data(&self) -> &PlanarObjectData { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 122 | pub fn data_mut(&mut self) -> &mut PlanarObjectData { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 127 | pub fn enable_backface_culling(&mut self, active: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 132 | pub fn set_user_data(&mut self, user_data: Box) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 137 | pub fn material(&self) -> Rc>> { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 142 | pub fn set_material(&mut self, material: Rc>>) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 147 | pub fn set_lines_width(&mut self, width: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 152 | pub fn lines_width(&self) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 157 | pub fn set_lines_color(&mut self, color: Option>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 162 | pub fn lines_color(&self) -> Option<&Point3> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 167 | pub fn set_points_size(&mut self, size: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 172 | pub fn points_size(&self) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 177 | pub fn set_surface_rendering_activation(&mut self, active: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 182 | pub fn surface_rendering_activation(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 187 | pub fn mesh(&self) -> &Rc> { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 192 | pub fn modify_vertices>)>(&mut self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 204 | pub fn read_vertices])>(&self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | pub fn modify_faces>)>(&mut self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 228 | pub fn read_faces])>(&self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 240 | pub fn modify_uvs>)>(&mut self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 252 | pub fn read_uvs])>(&self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 264 | pub fn set_color(&mut self, r: f32, g: f32, b: f32) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 271 | pub fn set_texture_from_file(&mut self, path: &Path, name: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 278 | pub fn set_texture_with_name(&mut self, name: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 289 | pub fn set_texture(&mut self, texture: Rc) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/scene/scene_node.rs:45:8 [INFO] [stdout] | [INFO] [stdout] 40 | impl SceneNodeData { [INFO] [stdout] | ------------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 45 | fn remove_from_parent(&mut self, to_remove: &SceneNode) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 53 | fn remove(&mut self, o: &SceneNode) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 64 | pub fn has_object(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 123 | pub fn object(&self) -> Option<&Object> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 128 | pub fn object_mut(&mut self) -> Option<&mut Object> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 133 | pub fn get_object(&self) -> &Object { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 139 | pub fn get_object_mut(&mut self) -> &mut Object { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 145 | pub fn set_material(&mut self, material: Rc>>) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 150 | pub fn set_material_with_name(&mut self, name: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 161 | pub fn set_lines_width(&mut self, width: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 166 | pub fn set_lines_color(&mut self, color: Option>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 171 | pub fn set_points_size(&mut self, size: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 176 | pub fn set_surface_rendering_activation(&mut self, active: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 181 | pub fn enable_backface_culling(&mut self, active: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 186 | pub fn modify_vertices>)>(&mut self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 191 | pub fn read_vertices])>(&self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 196 | pub fn recompute_normals(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 201 | pub fn modify_normals>)>(&mut self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 206 | pub fn read_normals])>(&self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 211 | pub fn modify_faces>)>(&mut self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 216 | pub fn read_faces])>(&self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 221 | pub fn modify_uvs>)>(&mut self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 226 | pub fn read_uvs])>(&self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 231 | pub fn is_visible(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 236 | pub fn set_visible(&mut self, visible: bool) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 246 | pub fn set_texture_from_file(&mut self, path: &Path, name: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 253 | pub fn set_texture_from_memory(&mut self, image_data: &[u8], name: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 261 | pub fn set_texture_with_name(&mut self, name: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 271 | pub fn set_texture(&mut self, texture: Rc) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 287 | pub fn apply_to_objects(&self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 298 | pub fn set_local_scale(&mut self, sx: f32, sy: f32, sz: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 304 | pub fn local_scale(&self) -> Vector3 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 309 | pub fn reorient(&mut self, eye: &Point3, at: &Point3, up: &Vector3) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 315 | pub fn local_transformation(&self) -> Isometry3 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 320 | pub fn inverse_local_transformation(&self) -> Isometry3 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 326 | pub fn world_transformation(&self) -> Isometry3 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 336 | pub fn inverse_world_transformation(&self) -> Isometry3 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 345 | pub fn append_transformation(&mut self, t: &Isometry3) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 351 | pub fn prepend_to_local_transformation(&mut self, t: &Isometry3) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 357 | pub fn set_local_transformation(&mut self, t: Isometry3) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 363 | pub fn local_translation(&self) -> Translation3 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 368 | pub fn inverse_local_translation(&self) -> Translation3 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 379 | pub fn prepend_to_local_translation(&mut self, t: &Translation3) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 391 | pub fn local_rotation(&self) -> UnitQuaternion { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 396 | pub fn inverse_local_rotation(&self) -> UnitQuaternion { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 401 | pub fn append_rotation(&mut self, r: &UnitQuaternion) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 407 | pub fn append_rotation_wrt_center(&mut self, r: &UnitQuaternion) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 419 | pub fn set_local_rotation(&mut self, r: UnitQuaternion) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 436 | fn update(&mut self) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 464 | pub fn is_fixed(&self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/scene/scene_node.rs:507:12 [INFO] [stdout] | [INFO] [stdout] 475 | impl SceneNode { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 507 | pub fn is_fixed(&self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 511 | pub fn unlink(&mut self) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 525 | pub fn add_group(&mut self) -> SceneNode { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 564 | pub fn add_sphere(&mut self, r: f32) -> SceneNode { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 570 | pub fn add_cone(&mut self, r: f32, h: f32) -> SceneNode { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 576 | pub fn add_cylinder(&mut self, r: f32, h: f32) -> SceneNode { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 582 | pub fn add_capsule(&mut self, r: f32, h: f32) -> SceneNode { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 589 | pub fn add_quad(&mut self, w: f32, h: f32, usubdivs: usize, vsubdivs: usize) -> SceneNode { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 599 | pub fn add_quad_with_vertices( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 629 | pub fn add_trimesh(&mut self, descr: TriMesh, scale: Vector3) -> SceneNode { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 761 | pub fn apply_to_scene_nodes_mut(&mut self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 770 | pub fn apply_to_scene_nodes(&self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 778 | pub fn render(&mut self, pass: usize, camera: &mut dyn Camera, light: &Light) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 783 | pub fn set_material(&mut self, material: Rc>>) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 788 | pub fn set_material_with_name(&mut self, name: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 793 | pub fn set_lines_width(&mut self, width: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 798 | pub fn set_lines_color(&mut self, color: Option>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 803 | pub fn set_points_size(&mut self, size: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 808 | pub fn set_surface_rendering_activation(&mut self, active: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 813 | pub fn enable_backface_culling(&mut self, active: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 818 | pub fn modify_vertices>)>(&mut self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 823 | pub fn read_vertices])>(&self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 828 | pub fn recompute_normals(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 833 | pub fn modify_normals>)>(&mut self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 838 | pub fn read_normals])>(&self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 843 | pub fn modify_faces>)>(&mut self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 848 | pub fn read_faces])>(&self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 853 | pub fn modify_uvs>)>(&mut self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 858 | pub fn read_uvs])>(&self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 863 | pub fn is_visible(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 868 | pub fn set_visible(&mut self, visible: bool) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 878 | pub fn set_texture_from_file(&mut self, path: &Path, name: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 882 | pub fn set_texture_from_memory(&mut self, image_data: &[u8], name: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 887 | pub fn set_texture_with_name(&mut self, name: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 891 | pub fn set_texture(&mut self, texture: Rc) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 896 | pub fn set_local_scale(&mut self, sx: f32, sy: f32, sz: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 901 | pub fn reorient(&mut self, eye: &Point3, at: &Point3, up: &Vector3) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 906 | pub fn append_transformation(&mut self, t: &Isometry3) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 911 | pub fn prepend_to_local_transformation(&mut self, t: &Isometry3) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 916 | pub fn set_local_transformation(&mut self, t: Isometry3) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 926 | pub fn prepend_to_local_translation(&mut self, t: &Translation3) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 936 | pub fn append_rotation(&mut self, r: &UnitQuaternion) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 941 | pub fn append_rotation_wrt_center(&mut self, r: &UnitQuaternion) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 951 | pub fn set_local_rotation(&mut self, r: UnitQuaternion) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `parent` is never read [INFO] [stdout] --> src/scene/planar_scene_node.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 18 | pub struct PlanarSceneNodeData { [INFO] [stdout] | ------------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 27 | parent: Option<*const RefCell>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/scene/planar_scene_node.rs:36:8 [INFO] [stdout] | [INFO] [stdout] 35 | impl PlanarSceneNodeData { [INFO] [stdout] | ------------------------ methods in this implementation [INFO] [stdout] 36 | fn set_parent(&mut self, parent: *const RefCell) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 40 | fn remove_from_parent(&mut self, to_remove: &PlanarSceneNode) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 47 | fn remove(&mut self, o: &PlanarSceneNode) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 58 | pub fn has_object(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 63 | pub fn is_root(&self) -> bool { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 98 | pub fn object(&self) -> Option<&PlanarObject> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 103 | pub fn object_mut(&mut self) -> Option<&mut PlanarObject> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 108 | pub fn get_object(&self) -> &PlanarObject { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 114 | pub fn get_object_mut(&mut self) -> &mut PlanarObject { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 120 | pub fn set_material(&mut self, material: Rc>>) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 125 | pub fn set_material_with_name(&mut self, name: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 136 | pub fn set_lines_width(&mut self, width: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 141 | pub fn set_lines_color(&mut self, color: Option>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 146 | pub fn set_points_size(&mut self, size: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 151 | pub fn set_surface_rendering_activation(&mut self, active: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 156 | pub fn enable_backface_culling(&mut self, active: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 161 | pub fn modify_vertices>)>(&mut self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 166 | pub fn read_vertices])>(&self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 171 | pub fn modify_faces>)>(&mut self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 176 | pub fn read_faces])>(&self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 181 | pub fn modify_uvs>)>(&mut self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 186 | pub fn read_uvs])>(&self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 191 | pub fn is_visible(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 196 | pub fn set_visible(&mut self, visible: bool) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 201 | pub fn set_color(&mut self, r: f32, g: f32, b: f32) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 206 | pub fn set_texture_from_file(&mut self, path: &Path, name: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 213 | pub fn set_texture_from_memory(&mut self, image_data: &[u8], name: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 221 | pub fn set_texture_with_name(&mut self, name: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 231 | pub fn set_texture(&mut self, texture: Rc) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 236 | pub fn apply_to_objects_mut(&mut self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 247 | pub fn apply_to_objects(&self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 258 | pub fn set_local_scale(&mut self, sx: f32, sy: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 264 | pub fn local_scale(&self) -> Vector2 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 269 | pub fn local_transformation(&self) -> Isometry2 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 274 | pub fn inverse_local_transformation(&self) -> Isometry2 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 280 | pub fn world_transformation(&self) -> Isometry2 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 290 | pub fn inverse_world_transformation(&self) -> Isometry2 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 299 | pub fn append_transformation(&mut self, t: &Isometry2) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 305 | pub fn prepend_to_local_transformation(&mut self, t: &Isometry2) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 311 | pub fn set_local_transformation(&mut self, t: Isometry2) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 317 | pub fn local_translation(&self) -> Translation2 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 322 | pub fn inverse_local_translation(&self) -> Translation2 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 327 | pub fn append_translation(&mut self, t: &Translation2) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 333 | pub fn prepend_to_local_translation(&mut self, t: &Translation2) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 339 | pub fn set_local_translation(&mut self, t: Translation2) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 345 | pub fn local_rotation(&self) -> UnitComplex { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 350 | pub fn inverse_local_rotation(&self) -> UnitComplex { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 355 | pub fn append_rotation(&mut self, r: &UnitComplex) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 361 | pub fn append_rotation_wrt_center(&mut self, r: &UnitComplex) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 367 | pub fn prepend_to_local_rotation(&mut self, r: &UnitComplex) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 373 | pub fn set_local_rotation(&mut self, r: UnitComplex) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 378 | fn invalidate(&mut self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 390 | fn update(&mut self) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple methods are never used [INFO] [stdout] --> src/scene/planar_scene_node.rs:439:12 [INFO] [stdout] | [INFO] [stdout] 412 | impl PlanarSceneNode { [INFO] [stdout] | -------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 439 | pub fn unlink(&mut self) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 445 | pub fn data(&self) -> Ref { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 453 | pub fn add_group(&mut self) -> PlanarSceneNode { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 461 | pub fn add_child(&mut self, node: PlanarSceneNode) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 472 | pub fn add_object( [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 485 | pub fn add_rectangle(&mut self, wx: f32, wy: f32) -> PlanarSceneNode { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 491 | pub fn add_circle(&mut self, r: f32) -> PlanarSceneNode { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 497 | pub fn add_capsule(&mut self, r: f32, h: f32) -> PlanarSceneNode { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 540 | pub fn add_geom_with_name( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 549 | pub fn add_mesh( [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 561 | pub fn add_convex_polygon( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 581 | pub fn apply_to_scene_nodes_mut(&mut self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 590 | pub fn apply_to_scene_nodes(&self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 598 | pub fn render(&mut self, camera: &mut dyn PlanarCamera) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 603 | pub fn set_material(&mut self, material: Rc>>) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 608 | pub fn set_material_with_name(&mut self, name: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 613 | pub fn set_lines_width(&mut self, width: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 618 | pub fn set_lines_color(&mut self, color: Option>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 623 | pub fn set_points_size(&mut self, size: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 628 | pub fn set_surface_rendering_activation(&mut self, active: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 633 | pub fn enable_backface_culling(&mut self, active: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 638 | pub fn modify_vertices>)>(&mut self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 643 | pub fn read_vertices])>(&self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 648 | pub fn modify_faces>)>(&mut self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 653 | pub fn read_faces])>(&self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 658 | pub fn modify_uvs>)>(&mut self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 663 | pub fn read_uvs])>(&self, f: &mut F) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 668 | pub fn is_visible(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 673 | pub fn set_visible(&mut self, visible: bool) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 678 | pub fn set_color(&mut self, r: f32, g: f32, b: f32) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 683 | pub fn set_texture_from_file(&mut self, path: &Path, name: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 687 | pub fn set_texture_from_memory(&mut self, image_data: &[u8], name: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 692 | pub fn set_texture_with_name(&mut self, name: &str) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 696 | pub fn set_texture(&mut self, texture: Rc) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 701 | pub fn set_local_scale(&mut self, sx: f32, sy: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 706 | pub fn append_transformation(&mut self, t: &Isometry2) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 711 | pub fn prepend_to_local_transformation(&mut self, t: &Isometry2) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 716 | pub fn set_local_transformation(&mut self, t: Isometry2) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 721 | pub fn append_translation(&mut self, t: &Translation2) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 726 | pub fn prepend_to_local_translation(&mut self, t: &Translation2) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 731 | pub fn set_local_translation(&mut self, t: Translation2) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 736 | pub fn append_rotation(&mut self, r: &UnitComplex) { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 741 | pub fn append_rotation_wrt_center(&mut self, r: &UnitComplex) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 746 | pub fn prepend_to_local_rotation(&mut self, r: &UnitComplex) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 751 | pub fn set_local_rotation(&mut self, r: UnitComplex) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `PlanarObjectMaterial` is never constructed [INFO] [stdout] --> src/builtin/planar_object_material.rs:11:12 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct PlanarObjectMaterial { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `activate`, and `deactivate` are never used [INFO] [stdout] --> src/builtin/planar_object_material.rs:23:12 [INFO] [stdout] | [INFO] [stdout] 22 | impl PlanarObjectMaterial { [INFO] [stdout] | ------------------------- associated items in this implementation [INFO] [stdout] 23 | pub fn new() -> PlanarObjectMaterial { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 40 | fn activate(&mut self) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 46 | fn deactivate(&mut self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `OBJECT_VERTEX_SRC` is never used [INFO] [stdout] --> src/builtin/planar_object_material.rs:148:8 [INFO] [stdout] | [INFO] [stdout] 148 | static OBJECT_VERTEX_SRC: &str = A_VERY_LONG_STRING; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `OBJECT_FRAGMENT_SRC` is never used [INFO] [stdout] --> src/builtin/planar_object_material.rs:149:8 [INFO] [stdout] | [INFO] [stdout] 149 | static OBJECT_FRAGMENT_SRC: &str = ANOTHER_VERY_LONG_STRING; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `A_VERY_LONG_STRING` is never used [INFO] [stdout] --> src/builtin/planar_object_material.rs:151:7 [INFO] [stdout] | [INFO] [stdout] 151 | const A_VERY_LONG_STRING: &str = "#version 100 [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ANOTHER_VERY_LONG_STRING` is never used [INFO] [stdout] --> src/builtin/planar_object_material.rs:168:7 [INFO] [stdout] | [INFO] [stdout] 168 | const ANOTHER_VERY_LONG_STRING: &str = "#version 100 [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `needs_rendering` and `set_line_width` are never used [INFO] [stdout] --> src/renderer/line_renderer.rs:44:12 [INFO] [stdout] | [INFO] [stdout] 19 | impl LineRenderer { [INFO] [stdout] | ----------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 44 | pub fn needs_rendering(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 57 | pub fn set_line_width(&mut self, line_width: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `needs_rendering`, `set_point_size`, and `draw_point` are never used [INFO] [stdout] --> src/renderer/point_renderer.rs:36:12 [INFO] [stdout] | [INFO] [stdout] 19 | impl PointRenderer { [INFO] [stdout] | ------------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 36 | pub fn needs_rendering(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 40 | pub fn set_point_size(&mut self, pt_size: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 44 | pub fn draw_point(&mut self, pt: Point3, color: Point3) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `unproject` is never used [INFO] [stdout] --> src/planar_camera/planar_camera.rs:17:8 [INFO] [stdout] | [INFO] [stdout] 6 | pub trait PlanarCamera { [INFO] [stdout] | ------------ method in this trait [INFO] [stdout] ... [INFO] [stdout] 17 | fn unproject(&self, window_coord: &Point2, window_size: &Vector2) -> Point2; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Sidescroll` is never constructed [INFO] [stdout] --> src/planar_camera/sidescroll.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct Sidescroll { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Sidescroll` 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: multiple associated items are never used [INFO] [stdout] --> src/planar_camera/sidescroll.rs:25:12 [INFO] [stdout] | [INFO] [stdout] 24 | impl Sidescroll { [INFO] [stdout] | --------------- associated items in this implementation [INFO] [stdout] 25 | pub fn new() -> Sidescroll { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 43 | pub fn at(&self) -> Point2 { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 47 | pub fn set_at(&mut self, at: Point2) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 52 | pub fn zoom(&self) -> f32 { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 56 | pub fn set_zoom(&mut self, zoom: f32) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 63 | pub fn look_at(&mut self, at: Point2, zoom: f32) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 69 | fn update_restrictions(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 75 | pub fn drag_button(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 79 | pub fn rebind_drag_button(&mut self, new_button: Option) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 83 | fn handle_right_button_displacement(&mut self, dpos: &Vector2) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 89 | fn handle_scroll(&mut self, off: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 95 | fn update_projviews(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Grayscales` is never constructed [INFO] [stdout] --> src/post_processing/grayscales.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct Grayscales { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/post_processing/grayscales.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 17 | impl Grayscales { [INFO] [stdout] | --------------- associated function in this implementation [INFO] [stdout] 18 | pub fn new() -> Grayscales { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `VERTEX_SHADER` is never used [INFO] [stdout] --> src/post_processing/grayscales.rs:65:8 [INFO] [stdout] | [INFO] [stdout] 65 | static VERTEX_SHADER: &str = "#version 100 [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `FRAGMENT_SHADER` is never used [INFO] [stdout] --> src/post_processing/grayscales.rs:75:8 [INFO] [stdout] | [INFO] [stdout] 75 | static FRAGMENT_SHADER: &str = "#version 100 [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `OculusStereo` is never constructed [INFO] [stdout] --> src/post_processing/oculus_stereo.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct OculusStereo { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/post_processing/oculus_stereo.rs:26:12 [INFO] [stdout] | [INFO] [stdout] 25 | impl OculusStereo { [INFO] [stdout] | ----------------- associated function in this implementation [INFO] [stdout] 26 | pub fn new() -> OculusStereo { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `VERTEX_SHADER` is never used [INFO] [stdout] --> src/post_processing/oculus_stereo.rs:101:8 [INFO] [stdout] | [INFO] [stdout] 101 | static VERTEX_SHADER: &str = " [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `FRAGMENT_SHADER` is never used [INFO] [stdout] --> src/post_processing/oculus_stereo.rs:113:8 [INFO] [stdout] | [INFO] [stdout] 113 | static FRAGMENT_SHADER: &str = " [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SobelEdgeHighlight` is never constructed [INFO] [stdout] --> src/post_processing/sobel_edge_highlight.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct SobelEdgeHighlight { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/post_processing/sobel_edge_highlight.rs:29:12 [INFO] [stdout] | [INFO] [stdout] 28 | impl SobelEdgeHighlight { [INFO] [stdout] | ----------------------- associated function in this implementation [INFO] [stdout] 29 | pub fn new(threshold: f32) -> SobelEdgeHighlight { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `VERTEX_SHADER` is never used [INFO] [stdout] --> src/post_processing/sobel_edge_highlight.rs:109:8 [INFO] [stdout] | [INFO] [stdout] 109 | static VERTEX_SHADER: &str = "#version 100 [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `FRAGMENT_SHADER` is never used [INFO] [stdout] --> src/post_processing/sobel_edge_highlight.rs:125:8 [INFO] [stdout] | [INFO] [stdout] 125 | static FRAGMENT_SHADER: &str = "#version 100 [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Waves` is never constructed [INFO] [stdout] --> src/post_processing/waves.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 12 | pub struct Waves { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/post_processing/waves.rs:22:12 [INFO] [stdout] | [INFO] [stdout] 21 | impl Waves { [INFO] [stdout] | ---------- associated function in this implementation [INFO] [stdout] 22 | pub fn new() -> Waves { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `VERTEX_SHADER` is never used [INFO] [stdout] --> src/post_processing/waves.rs:78:8 [INFO] [stdout] | [INFO] [stdout] 78 | static VERTEX_SHADER: &str = "#version 100 [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static `FRAGMENT_SHADER` is never used [INFO] [stdout] --> src/post_processing/waves.rs:88:8 [INFO] [stdout] | [INFO] [stdout] 88 | static FRAGMENT_SHADER: &str = "#version 100 [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `draw_line` and `set_line_width` are never used [INFO] [stdout] --> src/planar_line_renderer.rs:50:12 [INFO] [stdout] | [INFO] [stdout] 20 | impl PlanarLineRenderer { [INFO] [stdout] | ----------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 50 | pub fn draw_line(&mut self, a: Point2, b: Point2, color: Point3) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 91 | pub fn set_line_width(&mut self, line_width: f32) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/loader/obj.rs:28:23 [INFO] [stdout] | [INFO] [stdout] 28 | pub fn split_words(s: &str) -> Words { [INFO] [stdout] | ^^^^ ----- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 28 | pub fn split_words(s: &str) -> Words<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/context/context.rs:115:13 [INFO] [stdout] | [INFO] [stdout] 115 | / CONTEXT_SINGLETON [INFO] [stdout] 116 | | .clone() [INFO] [stdout] | |________________________^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] = note: `#[warn(static_mut_refs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/event/event_manager.rs:25:43 [INFO] [stdout] | [INFO] [stdout] 25 | fn new(value: WindowEvent, inhibitor: &RefCell>) -> Event { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ ----- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 25 | fn new(value: WindowEvent, inhibitor: &RefCell>) -> Event<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/event/event_manager.rs:76:17 [INFO] [stdout] | [INFO] [stdout] 76 | pub fn iter(&mut self) -> Events { [INFO] [stdout] | ^^^^^^^^^ ------ the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 76 | pub fn iter(&mut self) -> Events<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant `Shift` should have an upper case name [INFO] [stdout] --> src/event/window_event.rs:235:15 [INFO] [stdout] | [INFO] [stdout] 235 | const Shift = 0b0001; [INFO] [stdout] | ^^^^^ help: convert the identifier to upper case: `SHIFT` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_upper_case_globals)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant `Control` should have an upper case name [INFO] [stdout] --> src/event/window_event.rs:236:15 [INFO] [stdout] | [INFO] [stdout] 236 | const Control = 0b0010; [INFO] [stdout] | ^^^^^^^ help: convert the identifier to upper case: `CONTROL` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant `Alt` should have an upper case name [INFO] [stdout] --> src/event/window_event.rs:237:15 [INFO] [stdout] | [INFO] [stdout] 237 | const Alt = 0b0100; [INFO] [stdout] | ^^^ help: convert the identifier to upper case: `ALT` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant `Super` should have an upper case name [INFO] [stdout] --> src/event/window_event.rs:238:15 [INFO] [stdout] | [INFO] [stdout] 238 | const Super = 0b1000; [INFO] [stdout] | ^^^^^ help: convert the identifier to upper case: `SUPER` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/text/font.rs:38:13 [INFO] [stdout] | [INFO] [stdout] 38 | DEFAULT_FONT_SINGLETON.clone().unwrap() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/scene/scene_node.rs:517:17 [INFO] [stdout] | [INFO] [stdout] 517 | pub fn data(&self) -> Ref { [INFO] [stdout] | ^^^^^ ------------------ the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 517 | pub fn data(&self) -> Ref<'_, SceneNodeData> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/scene/scene_node.rs:521:21 [INFO] [stdout] | [INFO] [stdout] 521 | pub fn data_mut(&mut self) -> RefMut { [INFO] [stdout] | ^^^^^^^^^ --------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 521 | pub fn data_mut(&mut self) -> RefMut<'_, SceneNodeData> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/scene/planar_scene_node.rs:445:17 [INFO] [stdout] | [INFO] [stdout] 445 | pub fn data(&self) -> Ref { [INFO] [stdout] | ^^^^^ ------------------------ the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 445 | pub fn data(&self) -> Ref<'_, PlanarSceneNodeData> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/scene/planar_scene_node.rs:449:21 [INFO] [stdout] | [INFO] [stdout] 449 | pub fn data_mut(&mut self) -> RefMut { [INFO] [stdout] | ^^^^^^^^^ --------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 449 | pub fn data_mut(&mut self) -> RefMut<'_, PlanarSceneNodeData> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 3.72s [INFO] running `Command { std: "docker" "inspect" "f9583fec4951f746dc030628382dada1e5f445bf4f94dab95e298c3011b50d98", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f9583fec4951f746dc030628382dada1e5f445bf4f94dab95e298c3011b50d98", kill_on_drop: false }` [INFO] [stdout] f9583fec4951f746dc030628382dada1e5f445bf4f94dab95e298c3011b50d98