[INFO] fetching crate willhook 0.6.3... [INFO] testing willhook-0.6.3 against master#cdb45c87e2cd43495379f7e867e3cc15dcee9f93 for pr-145838-1 [INFO] extracting crate willhook 0.6.3 into /workspace/builds/worker-5-tc1/source [INFO] started tweaking crates.io crate willhook 0.6.3 [INFO] removed 0 missing examples [INFO] finished tweaking crates.io crate willhook 0.6.3 [INFO] tweaked toml for crates.io crate willhook 0.6.3 written to /workspace/builds/worker-5-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate willhook 0.6.3 on toolchain cdb45c87e2cd43495379f7e867e3cc15dcee9f93 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate willhook 0.6.3 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" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded ioctl-sys v0.5.2 [INFO] [stderr] Downloaded mki v0.2.3 [INFO] [stderr] Downloaded enum_derive v0.1.7 [INFO] [stderr] Downloaded input v0.7.1 [INFO] [stderr] Downloaded udev v0.6.3 [INFO] [stderr] Downloaded uinput-sys v0.1.7 [INFO] [stderr] Downloaded ctrlc v3.2.4 [INFO] [stderr] Downloaded uinput v0.1.3 [INFO] [stderr] Downloaded nix v0.10.0 [INFO] [stderr] Downloaded input-sys v1.17.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] a942e2b5c3ab81afa9d045dd81bfe51d06b9d84e0b6017522ce35d881c324881 [INFO] running `Command { std: "docker" "start" "-a" "a942e2b5c3ab81afa9d045dd81bfe51d06b9d84e0b6017522ce35d881c324881", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "a942e2b5c3ab81afa9d045dd81bfe51d06b9d84e0b6017522ce35d881c324881", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a942e2b5c3ab81afa9d045dd81bfe51d06b9d84e0b6017522ce35d881c324881", kill_on_drop: false }` [INFO] [stdout] a942e2b5c3ab81afa9d045dd81bfe51d06b9d84e0b6017522ce35d881c324881 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] df3cd803545cbaf0efa6c63f26370e3c831f5ee12f385fbed4c1af29b35917e0 [INFO] running `Command { std: "docker" "start" "-a" "df3cd803545cbaf0efa6c63f26370e3c831f5ee12f385fbed4c1af29b35917e0", kill_on_drop: false }` [INFO] [stderr] Compiling once_cell v1.17.0 [INFO] [stderr] Compiling willhook v0.6.3 (/opt/rustwide/workdir) [INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `winapi` [INFO] [stdout] --> src/hook/inner/raw.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use winapi::shared::minwindef::DWORD; [INFO] [stdout] | ^^^^^^ use of unresolved module or unlinked crate `winapi` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `winapi`, use `cargo add winapi` to add it to your `Cargo.toml` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `winapi` [INFO] [stdout] --> src/hook/inner/raw.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use winapi::shared::windef::HHOOK; [INFO] [stdout] | ^^^^^^ use of unresolved module or unlinked crate `winapi` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `winapi`, use `cargo add winapi` to add it to your `Cargo.toml` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `winapi` [INFO] [stdout] --> src/hook/inner/raw.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use winapi::shared::ntdef::NULL; [INFO] [stdout] | ^^^^^^ use of unresolved module or unlinked crate `winapi` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `winapi`, use `cargo add winapi` to add it to your `Cargo.toml` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `winapi` [INFO] [stdout] --> src/hook/inner/low_level.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use winapi::{shared::{minwindef::*, windef::*}, um::winuser::{CallNextHookEx, KBDLLHOOKSTRUCT, MSLLHOOKSTRUCT, HC_ACTION}}; [INFO] [stdout] | ^^^^^^ use of unresolved module or unlinked crate `winapi` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `winapi`, use `cargo add winapi` to add it to your `Cargo.toml` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `winapi` [INFO] [stdout] --> src/hook/inner.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use winapi::{shared::{ [INFO] [stdout] | ^^^^^^ use of unresolved module or unlinked crate `winapi` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `winapi`, use `cargo add winapi` to add it to your `Cargo.toml` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `winapi` [INFO] [stdout] --> src/hook/inner.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 20 | use winapi::um::{ [INFO] [stdout] | ^^^^^^ use of unresolved module or unlinked crate `winapi` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `winapi`, use `cargo add winapi` to add it to your `Cargo.toml` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `winapi` [INFO] [stdout] --> src/event/details.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use winapi::shared::windef::*; [INFO] [stdout] | ^^^^^^ use of unresolved module or unlinked crate `winapi` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `winapi`, use `cargo add winapi` to add it to your `Cargo.toml` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `winapi` [INFO] [stdout] --> src/event/details.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use winapi::shared::minwindef::*; [INFO] [stdout] | ^^^^^^ use of unresolved module or unlinked crate `winapi` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `winapi`, use `cargo add winapi` to add it to your `Cargo.toml` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `winapi` [INFO] [stdout] --> src/event/details.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use winapi::um::winuser::*; [INFO] [stdout] | ^^^^^^ use of unresolved module or unlinked crate `winapi` [INFO] [stdout] | [INFO] [stdout] = help: if you wanted to use a crate named `winapi`, use `cargo add winapi` to add it to your `Cargo.toml` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0432]: unresolved imports `crate::hook::inner::GLOBAL_CHANNEL`, `winapi::shared::minwindef::*`, `winapi::shared::windef::*`, `winapi::um::winuser::CallNextHookEx`, `winapi::um::winuser::KBDLLHOOKSTRUCT`, `winapi::um::winuser::MSLLHOOKSTRUCT`, `winapi::um::winuser::HC_ACTION`, `winapi::shared::ntdef::NULL`, `winapi::shared::minwindef::*`, `winapi::shared::windef::*`, `winapi::um::processthreadsapi::GetCurrentThreadId`, `winapi::um::winuser::HOOKPROC`, `winapi::um::winuser::LPMSG`, `winapi::um::winuser::SetWindowsHookExA`, `winapi::um::winuser::UnhookWindowsHookEx`, `winapi::um::winuser::GetMessageA`, `winapi::um::winuser::PostThreadMessageA`, `winapi::um::winuser::WM_QUIT`, `winapi::um::winuser::WH_KEYBOARD_LL`, `winapi::um::winuser::WH_MOUSE_LL`, `winapi::shared::windef::*`, `winapi::shared::minwindef::*`, `winapi::um::winuser::*` [INFO] [stdout] --> src/hook/inner.rs:16:5 [INFO] [stdout] | [INFO] [stdout] 16 | ntdef::NULL, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 17 | minwindef::*, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] 18 | windef::* [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 21 | processthreadsapi::GetCurrentThreadId, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 22 | winuser::{ [INFO] [stdout] 23 | HOOKPROC, LPMSG, [INFO] [stdout] | ^^^^^^^^ ^^^^^ [INFO] [stdout] 24 | SetWindowsHookExA, UnhookWindowsHookEx, GetMessageA, PostThreadMessageA, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 25 | WM_QUIT, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 26 | WH_KEYBOARD_LL, WH_MOUSE_LL, [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/hook/inner/low_level.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::hook::inner::GLOBAL_CHANNEL; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 7 | use winapi::{shared::{minwindef::*, windef::*}, um::winuser::{CallNextHookEx, KBDLLHOOKSTRUCT, MSLLHOOKSTRUCT, HC_ACTION}}; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^^ ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/event/details.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use winapi::shared::windef::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 5 | use winapi::shared::minwindef::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] 6 | use winapi::um::winuser::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0408]: variable `WM_LBUTTONUP` is not bound in all patterns [INFO] [stdout] --> src/event/details.rs:238:17 [INFO] [stdout] | [INFO] [stdout] 238 | WM_LBUTTONDOWN | WM_LBUTTONUP | WM_LBUTTONDBLCLK => Press(MousePressEvent::new(wm_mouse_param, ms_ll_hook_struct)), [INFO] [stdout] | ^^^^^^^^^^^^^^ ------------ ^^^^^^^^^^^^^^^^ pattern doesn't bind `WM_LBUTTONUP` [INFO] [stdout] | | | [INFO] [stdout] | | variable not in all patterns [INFO] [stdout] | pattern doesn't bind `WM_LBUTTONUP` [INFO] [stdout] | [INFO] [stdout] help: if you meant to match on a variant or a `const` item, consider making the path in the pattern qualified: `path::to::ModOrType::WM_LBUTTONUP` [INFO] [stdout] --> src/event/details.rs:238:34 [INFO] [stdout] | [INFO] [stdout] 238 | WM_LBUTTONDOWN | WM_LBUTTONUP | WM_LBUTTONDBLCLK => Press(MousePressEvent::new(wm_mouse_param, ms_ll_hook_struct)), [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0408]: variable `WM_LBUTTONDBLCLK` is not bound in all patterns [INFO] [stdout] --> src/event/details.rs:238:17 [INFO] [stdout] | [INFO] [stdout] 238 | WM_LBUTTONDOWN | WM_LBUTTONUP | WM_LBUTTONDBLCLK => Press(MousePressEvent::new(wm_mouse_param, ms_ll_hook_struct)), [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^ ---------------- variable not in all patterns [INFO] [stdout] | | | [INFO] [stdout] | | pattern doesn't bind `WM_LBUTTONDBLCLK` [INFO] [stdout] | pattern doesn't bind `WM_LBUTTONDBLCLK` [INFO] [stdout] | [INFO] [stdout] help: if you meant to match on a variant or a `const` item, consider making the path in the pattern qualified: `path::to::ModOrType::WM_LBUTTONDBLCLK` [INFO] [stdout] --> src/event/details.rs:238:49 [INFO] [stdout] | [INFO] [stdout] 238 | WM_LBUTTONDOWN | WM_LBUTTONUP | WM_LBUTTONDBLCLK => Press(MousePressEvent::new(wm_mouse_param, ms_ll_hook_struct)), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0408]: variable `WM_LBUTTONDOWN` is not bound in all patterns [INFO] [stdout] --> src/event/details.rs:238:34 [INFO] [stdout] | [INFO] [stdout] 238 | WM_LBUTTONDOWN | WM_LBUTTONUP | WM_LBUTTONDBLCLK => Press(MousePressEvent::new(wm_mouse_param, ms_ll_hook_struct)), [INFO] [stdout] | -------------- ^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ pattern doesn't bind `WM_LBUTTONDOWN` [INFO] [stdout] | | | [INFO] [stdout] | | pattern doesn't bind `WM_LBUTTONDOWN` [INFO] [stdout] | variable not in all patterns [INFO] [stdout] | [INFO] [stdout] help: if you meant to match on a variant or a `const` item, consider making the path in the pattern qualified: `path::to::ModOrType::WM_LBUTTONDOWN` [INFO] [stdout] --> src/event/details.rs:238:17 [INFO] [stdout] | [INFO] [stdout] 238 | WM_LBUTTONDOWN | WM_LBUTTONUP | WM_LBUTTONDBLCLK => Press(MousePressEvent::new(wm_mouse_param, ms_ll_hook_struct)), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0408]: variable `WM_RBUTTONUP` is not bound in all patterns [INFO] [stdout] --> src/event/details.rs:239:17 [INFO] [stdout] | [INFO] [stdout] 239 | WM_RBUTTONDOWN | WM_RBUTTONUP | WM_RBUTTONDBLCLK => Press(MousePressEvent::new(wm_mouse_param, ms_ll_hook_struct)), [INFO] [stdout] | ^^^^^^^^^^^^^^ ------------ ^^^^^^^^^^^^^^^^ pattern doesn't bind `WM_RBUTTONUP` [INFO] [stdout] | | | [INFO] [stdout] | | variable not in all patterns [INFO] [stdout] | pattern doesn't bind `WM_RBUTTONUP` [INFO] [stdout] | [INFO] [stdout] help: if you meant to match on a variant or a `const` item, consider making the path in the pattern qualified: `path::to::ModOrType::WM_RBUTTONUP` [INFO] [stdout] --> src/event/details.rs:239:34 [INFO] [stdout] | [INFO] [stdout] 239 | WM_RBUTTONDOWN | WM_RBUTTONUP | WM_RBUTTONDBLCLK => Press(MousePressEvent::new(wm_mouse_param, ms_ll_hook_struct)), [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0408]: variable `WM_RBUTTONDBLCLK` is not bound in all patterns [INFO] [stdout] --> src/event/details.rs:239:17 [INFO] [stdout] | [INFO] [stdout] 239 | WM_RBUTTONDOWN | WM_RBUTTONUP | WM_RBUTTONDBLCLK => Press(MousePressEvent::new(wm_mouse_param, ms_ll_hook_struct)), [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^ ---------------- variable not in all patterns [INFO] [stdout] | | | [INFO] [stdout] | | pattern doesn't bind `WM_RBUTTONDBLCLK` [INFO] [stdout] | pattern doesn't bind `WM_RBUTTONDBLCLK` [INFO] [stdout] | [INFO] [stdout] help: if you meant to match on a variant or a `const` item, consider making the path in the pattern qualified: `path::to::ModOrType::WM_RBUTTONDBLCLK` [INFO] [stdout] --> src/event/details.rs:239:49 [INFO] [stdout] | [INFO] [stdout] 239 | WM_RBUTTONDOWN | WM_RBUTTONUP | WM_RBUTTONDBLCLK => Press(MousePressEvent::new(wm_mouse_param, ms_ll_hook_struct)), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0408]: variable `WM_RBUTTONDOWN` is not bound in all patterns [INFO] [stdout] --> src/event/details.rs:239:34 [INFO] [stdout] | [INFO] [stdout] 239 | WM_RBUTTONDOWN | WM_RBUTTONUP | WM_RBUTTONDBLCLK => Press(MousePressEvent::new(wm_mouse_param, ms_ll_hook_struct)), [INFO] [stdout] | -------------- ^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ pattern doesn't bind `WM_RBUTTONDOWN` [INFO] [stdout] | | | [INFO] [stdout] | | pattern doesn't bind `WM_RBUTTONDOWN` [INFO] [stdout] | variable not in all patterns [INFO] [stdout] | [INFO] [stdout] help: if you meant to match on a variant or a `const` item, consider making the path in the pattern qualified: `path::to::ModOrType::WM_RBUTTONDOWN` [INFO] [stdout] --> src/event/details.rs:239:17 [INFO] [stdout] | [INFO] [stdout] 239 | WM_RBUTTONDOWN | WM_RBUTTONUP | WM_RBUTTONDBLCLK => Press(MousePressEvent::new(wm_mouse_param, ms_ll_hook_struct)), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0408]: variable `WM_MBUTTONUP` is not bound in all patterns [INFO] [stdout] --> src/event/details.rs:240:17 [INFO] [stdout] | [INFO] [stdout] 240 | WM_MBUTTONDOWN | WM_MBUTTONUP | WM_MBUTTONDBLCLK => Press(MousePressEvent::new(wm_mouse_param, ms_ll_hook_struct)), [INFO] [stdout] | ^^^^^^^^^^^^^^ ------------ ^^^^^^^^^^^^^^^^ pattern doesn't bind `WM_MBUTTONUP` [INFO] [stdout] | | | [INFO] [stdout] | | variable not in all patterns [INFO] [stdout] | pattern doesn't bind `WM_MBUTTONUP` [INFO] [stdout] | [INFO] [stdout] help: if you meant to match on a variant or a `const` item, consider making the path in the pattern qualified: `path::to::ModOrType::WM_MBUTTONUP` [INFO] [stdout] --> src/event/details.rs:240:34 [INFO] [stdout] | [INFO] [stdout] 240 | WM_MBUTTONDOWN | WM_MBUTTONUP | WM_MBUTTONDBLCLK => Press(MousePressEvent::new(wm_mouse_param, ms_ll_hook_struct)), [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0408]: variable `WM_MBUTTONDBLCLK` is not bound in all patterns [INFO] [stdout] --> src/event/details.rs:240:17 [INFO] [stdout] | [INFO] [stdout] 240 | WM_MBUTTONDOWN | WM_MBUTTONUP | WM_MBUTTONDBLCLK => Press(MousePressEvent::new(wm_mouse_param, ms_ll_hook_struct)), [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^ ---------------- variable not in all patterns [INFO] [stdout] | | | [INFO] [stdout] | | pattern doesn't bind `WM_MBUTTONDBLCLK` [INFO] [stdout] | pattern doesn't bind `WM_MBUTTONDBLCLK` [INFO] [stdout] | [INFO] [stdout] help: if you meant to match on a variant or a `const` item, consider making the path in the pattern qualified: `path::to::ModOrType::WM_MBUTTONDBLCLK` [INFO] [stdout] --> src/event/details.rs:240:49 [INFO] [stdout] | [INFO] [stdout] 240 | WM_MBUTTONDOWN | WM_MBUTTONUP | WM_MBUTTONDBLCLK => Press(MousePressEvent::new(wm_mouse_param, ms_ll_hook_struct)), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0408]: variable `WM_MBUTTONDOWN` is not bound in all patterns [INFO] [stdout] --> src/event/details.rs:240:34 [INFO] [stdout] | [INFO] [stdout] 240 | WM_MBUTTONDOWN | WM_MBUTTONUP | WM_MBUTTONDBLCLK => Press(MousePressEvent::new(wm_mouse_param, ms_ll_hook_struct)), [INFO] [stdout] | -------------- ^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ pattern doesn't bind `WM_MBUTTONDOWN` [INFO] [stdout] | | | [INFO] [stdout] | | pattern doesn't bind `WM_MBUTTONDOWN` [INFO] [stdout] | variable not in all patterns [INFO] [stdout] | [INFO] [stdout] help: if you meant to match on a variant or a `const` item, consider making the path in the pattern qualified: `path::to::ModOrType::WM_MBUTTONDOWN` [INFO] [stdout] --> src/event/details.rs:240:17 [INFO] [stdout] | [INFO] [stdout] 240 | WM_MBUTTONDOWN | WM_MBUTTONUP | WM_MBUTTONDBLCLK => Press(MousePressEvent::new(wm_mouse_param, ms_ll_hook_struct)), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0408]: variable `WM_XBUTTONUP` is not bound in all patterns [INFO] [stdout] --> src/event/details.rs:241:17 [INFO] [stdout] | [INFO] [stdout] 241 | WM_XBUTTONDOWN | WM_XBUTTONUP | WM_XBUTTONDBLCLK => Press(MousePressEvent::new(wm_mouse_param, ms_ll_hook_struct)), [INFO] [stdout] | ^^^^^^^^^^^^^^ ------------ ^^^^^^^^^^^^^^^^ pattern doesn't bind `WM_XBUTTONUP` [INFO] [stdout] | | | [INFO] [stdout] | | variable not in all patterns [INFO] [stdout] | pattern doesn't bind `WM_XBUTTONUP` [INFO] [stdout] | [INFO] [stdout] help: if you meant to match on a variant or a `const` item, consider making the path in the pattern qualified: `path::to::ModOrType::WM_XBUTTONUP` [INFO] [stdout] --> src/event/details.rs:241:34 [INFO] [stdout] | [INFO] [stdout] 241 | WM_XBUTTONDOWN | WM_XBUTTONUP | WM_XBUTTONDBLCLK => Press(MousePressEvent::new(wm_mouse_param, ms_ll_hook_struct)), [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0408]: variable `WM_XBUTTONDBLCLK` is not bound in all patterns [INFO] [stdout] --> src/event/details.rs:241:17 [INFO] [stdout] | [INFO] [stdout] 241 | WM_XBUTTONDOWN | WM_XBUTTONUP | WM_XBUTTONDBLCLK => Press(MousePressEvent::new(wm_mouse_param, ms_ll_hook_struct)), [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^ ---------------- variable not in all patterns [INFO] [stdout] | | | [INFO] [stdout] | | pattern doesn't bind `WM_XBUTTONDBLCLK` [INFO] [stdout] | pattern doesn't bind `WM_XBUTTONDBLCLK` [INFO] [stdout] | [INFO] [stdout] help: if you meant to match on a variant or a `const` item, consider making the path in the pattern qualified: `path::to::ModOrType::WM_XBUTTONDBLCLK` [INFO] [stdout] --> src/event/details.rs:241:49 [INFO] [stdout] | [INFO] [stdout] 241 | WM_XBUTTONDOWN | WM_XBUTTONUP | WM_XBUTTONDBLCLK => Press(MousePressEvent::new(wm_mouse_param, ms_ll_hook_struct)), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0408]: variable `WM_XBUTTONDOWN` is not bound in all patterns [INFO] [stdout] --> src/event/details.rs:241:34 [INFO] [stdout] | [INFO] [stdout] 241 | WM_XBUTTONDOWN | WM_XBUTTONUP | WM_XBUTTONDBLCLK => Press(MousePressEvent::new(wm_mouse_param, ms_ll_hook_struct)), [INFO] [stdout] | -------------- ^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ pattern doesn't bind `WM_XBUTTONDOWN` [INFO] [stdout] | | | [INFO] [stdout] | | pattern doesn't bind `WM_XBUTTONDOWN` [INFO] [stdout] | variable not in all patterns [INFO] [stdout] | [INFO] [stdout] help: if you meant to match on a variant or a `const` item, consider making the path in the pattern qualified: `path::to::ModOrType::WM_XBUTTONDOWN` [INFO] [stdout] --> src/event/details.rs:241:17 [INFO] [stdout] | [INFO] [stdout] 241 | WM_XBUTTONDOWN | WM_XBUTTONUP | WM_XBUTTONDBLCLK => Press(MousePressEvent::new(wm_mouse_param, ms_ll_hook_struct)), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0408]: variable `WM_MOUSEHWHEEL` is not bound in all patterns [INFO] [stdout] --> src/event/details.rs:247:17 [INFO] [stdout] | [INFO] [stdout] 247 | WM_MOUSEWHEEL | WM_MOUSEHWHEEL => Wheel(MouseWheelEvent::new(wm_mouse_param, ms_ll_hook_struct)), [INFO] [stdout] | ^^^^^^^^^^^^^ -------------- variable not in all patterns [INFO] [stdout] | | [INFO] [stdout] | pattern doesn't bind `WM_MOUSEHWHEEL` [INFO] [stdout] | [INFO] [stdout] help: if you meant to match on a variant or a `const` item, consider making the path in the pattern qualified: `path::to::ModOrType::WM_MOUSEHWHEEL` [INFO] [stdout] --> src/event/details.rs:247:33 [INFO] [stdout] | [INFO] [stdout] 247 | WM_MOUSEWHEEL | WM_MOUSEHWHEEL => Wheel(MouseWheelEvent::new(wm_mouse_param, ms_ll_hook_struct)), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0408]: variable `WM_MOUSEWHEEL` is not bound in all patterns [INFO] [stdout] --> src/event/details.rs:247:33 [INFO] [stdout] | [INFO] [stdout] 247 | WM_MOUSEWHEEL | WM_MOUSEHWHEEL => Wheel(MouseWheelEvent::new(wm_mouse_param, ms_ll_hook_struct)), [INFO] [stdout] | ------------- ^^^^^^^^^^^^^^ pattern doesn't bind `WM_MOUSEWHEEL` [INFO] [stdout] | | [INFO] [stdout] | variable not in all patterns [INFO] [stdout] | [INFO] [stdout] help: if you meant to match on a variant or a `const` item, consider making the path in the pattern qualified: `path::to::ModOrType::WM_MOUSEWHEEL` [INFO] [stdout] --> src/event/details.rs:247:17 [INFO] [stdout] | [INFO] [stdout] 247 | WM_MOUSEWHEEL | WM_MOUSEHWHEEL => Wheel(MouseWheelEvent::new(wm_mouse_param, ms_ll_hook_struct)), [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0408]: variable `WM_RBUTTONDOWN` is not bound in all patterns [INFO] [stdout] --> src/event/details.rs:334:21 [INFO] [stdout] | [INFO] [stdout] 334 | WM_LBUTTONDOWN| WM_RBUTTONDOWN| WM_MBUTTONDOWN | WM_XBUTTONDOWN => Down, [INFO] [stdout] | ^^^^^^^^^^^^^^ -------------- ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ pattern doesn't bind `WM_RBUTTONDOWN` [INFO] [stdout] | | | | [INFO] [stdout] | | | pattern doesn't bind `WM_RBUTTONDOWN` [INFO] [stdout] | | variable not in all patterns [INFO] [stdout] | pattern doesn't bind `WM_RBUTTONDOWN` [INFO] [stdout] | [INFO] [stdout] help: if you meant to match on a variant or a `const` item, consider making the path in the pattern qualified: `path::to::ModOrType::WM_RBUTTONDOWN` [INFO] [stdout] --> src/event/details.rs:334:37 [INFO] [stdout] | [INFO] [stdout] 334 | WM_LBUTTONDOWN| WM_RBUTTONDOWN| WM_MBUTTONDOWN | WM_XBUTTONDOWN => Down, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0408]: variable `WM_MBUTTONDOWN` is not bound in all patterns [INFO] [stdout] --> src/event/details.rs:334:21 [INFO] [stdout] | [INFO] [stdout] 334 | WM_LBUTTONDOWN| WM_RBUTTONDOWN| WM_MBUTTONDOWN | WM_XBUTTONDOWN => Down, [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ -------------- ^^^^^^^^^^^^^^ pattern doesn't bind `WM_MBUTTONDOWN` [INFO] [stdout] | | | | [INFO] [stdout] | | | variable not in all patterns [INFO] [stdout] | | pattern doesn't bind `WM_MBUTTONDOWN` [INFO] [stdout] | pattern doesn't bind `WM_MBUTTONDOWN` [INFO] [stdout] | [INFO] [stdout] help: if you meant to match on a variant or a `const` item, consider making the path in the pattern qualified: `path::to::ModOrType::WM_MBUTTONDOWN` [INFO] [stdout] --> src/event/details.rs:334:53 [INFO] [stdout] | [INFO] [stdout] 334 | WM_LBUTTONDOWN| WM_RBUTTONDOWN| WM_MBUTTONDOWN | WM_XBUTTONDOWN => Down, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0408]: variable `WM_XBUTTONDOWN` is not bound in all patterns [INFO] [stdout] --> src/event/details.rs:334:21 [INFO] [stdout] | [INFO] [stdout] 334 | WM_LBUTTONDOWN| WM_RBUTTONDOWN| WM_MBUTTONDOWN | WM_XBUTTONDOWN => Down, [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ -------------- variable not in all patterns [INFO] [stdout] | | | | [INFO] [stdout] | | | pattern doesn't bind `WM_XBUTTONDOWN` [INFO] [stdout] | | pattern doesn't bind `WM_XBUTTONDOWN` [INFO] [stdout] | pattern doesn't bind `WM_XBUTTONDOWN` [INFO] [stdout] | [INFO] [stdout] help: if you meant to match on a variant or a `const` item, consider making the path in the pattern qualified: `path::to::ModOrType::WM_XBUTTONDOWN` [INFO] [stdout] --> src/event/details.rs:334:70 [INFO] [stdout] | [INFO] [stdout] 334 | WM_LBUTTONDOWN| WM_RBUTTONDOWN| WM_MBUTTONDOWN | WM_XBUTTONDOWN => Down, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0408]: variable `WM_LBUTTONDOWN` is not bound in all patterns [INFO] [stdout] --> src/event/details.rs:334:37 [INFO] [stdout] | [INFO] [stdout] 334 | WM_LBUTTONDOWN| WM_RBUTTONDOWN| WM_MBUTTONDOWN | WM_XBUTTONDOWN => Down, [INFO] [stdout] | -------------- ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ pattern doesn't bind `WM_LBUTTONDOWN` [INFO] [stdout] | | | | [INFO] [stdout] | | | pattern doesn't bind `WM_LBUTTONDOWN` [INFO] [stdout] | | pattern doesn't bind `WM_LBUTTONDOWN` [INFO] [stdout] | variable not in all patterns [INFO] [stdout] | [INFO] [stdout] help: if you meant to match on a variant or a `const` item, consider making the path in the pattern qualified: `path::to::ModOrType::WM_LBUTTONDOWN` [INFO] [stdout] --> src/event/details.rs:334:21 [INFO] [stdout] | [INFO] [stdout] 334 | WM_LBUTTONDOWN| WM_RBUTTONDOWN| WM_MBUTTONDOWN | WM_XBUTTONDOWN => Down, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0408]: variable `WM_LBUTTONUP` is not bound in all patterns [INFO] [stdout] --> src/event/details.rs:335:21 [INFO] [stdout] | [INFO] [stdout] 335 | WM_RBUTTONUP | WM_LBUTTONUP | WM_MBUTTONUP | WM_XBUTTONUP => Up, [INFO] [stdout] | ^^^^^^^^^^^^ ------------ ^^^^^^^^^^^^ ^^^^^^^^^^^^ pattern doesn't bind `WM_LBUTTONUP` [INFO] [stdout] | | | | [INFO] [stdout] | | | pattern doesn't bind `WM_LBUTTONUP` [INFO] [stdout] | | variable not in all patterns [INFO] [stdout] | pattern doesn't bind `WM_LBUTTONUP` [INFO] [stdout] | [INFO] [stdout] help: if you meant to match on a variant or a `const` item, consider making the path in the pattern qualified: `path::to::ModOrType::WM_LBUTTONUP` [INFO] [stdout] --> src/event/details.rs:335:36 [INFO] [stdout] | [INFO] [stdout] 335 | WM_RBUTTONUP | WM_LBUTTONUP | WM_MBUTTONUP | WM_XBUTTONUP => Up, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0408]: variable `WM_MBUTTONUP` is not bound in all patterns [INFO] [stdout] --> src/event/details.rs:335:21 [INFO] [stdout] | [INFO] [stdout] 335 | WM_RBUTTONUP | WM_LBUTTONUP | WM_MBUTTONUP | WM_XBUTTONUP => Up, [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^^^^^ ------------ ^^^^^^^^^^^^ pattern doesn't bind `WM_MBUTTONUP` [INFO] [stdout] | | | | [INFO] [stdout] | | | variable not in all patterns [INFO] [stdout] | | pattern doesn't bind `WM_MBUTTONUP` [INFO] [stdout] | pattern doesn't bind `WM_MBUTTONUP` [INFO] [stdout] | [INFO] [stdout] help: if you meant to match on a variant or a `const` item, consider making the path in the pattern qualified: `path::to::ModOrType::WM_MBUTTONUP` [INFO] [stdout] --> src/event/details.rs:335:51 [INFO] [stdout] | [INFO] [stdout] 335 | WM_RBUTTONUP | WM_LBUTTONUP | WM_MBUTTONUP | WM_XBUTTONUP => Up, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0408]: variable `WM_XBUTTONUP` is not bound in all patterns [INFO] [stdout] --> src/event/details.rs:335:21 [INFO] [stdout] | [INFO] [stdout] 335 | WM_RBUTTONUP | WM_LBUTTONUP | WM_MBUTTONUP | WM_XBUTTONUP => Up, [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^^^ ------------ variable not in all patterns [INFO] [stdout] | | | | [INFO] [stdout] | | | pattern doesn't bind `WM_XBUTTONUP` [INFO] [stdout] | | pattern doesn't bind `WM_XBUTTONUP` [INFO] [stdout] | pattern doesn't bind `WM_XBUTTONUP` [INFO] [stdout] | [INFO] [stdout] help: if you meant to match on a variant or a `const` item, consider making the path in the pattern qualified: `path::to::ModOrType::WM_XBUTTONUP` [INFO] [stdout] --> src/event/details.rs:335:66 [INFO] [stdout] | [INFO] [stdout] 335 | WM_RBUTTONUP | WM_LBUTTONUP | WM_MBUTTONUP | WM_XBUTTONUP => Up, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0408]: variable `WM_RBUTTONUP` is not bound in all patterns [INFO] [stdout] --> src/event/details.rs:335:36 [INFO] [stdout] | [INFO] [stdout] 335 | WM_RBUTTONUP | WM_LBUTTONUP | WM_MBUTTONUP | WM_XBUTTONUP => Up, [INFO] [stdout] | ------------ ^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^^^ pattern doesn't bind `WM_RBUTTONUP` [INFO] [stdout] | | | | [INFO] [stdout] | | | pattern doesn't bind `WM_RBUTTONUP` [INFO] [stdout] | | pattern doesn't bind `WM_RBUTTONUP` [INFO] [stdout] | variable not in all patterns [INFO] [stdout] | [INFO] [stdout] help: if you meant to match on a variant or a `const` item, consider making the path in the pattern qualified: `path::to::ModOrType::WM_RBUTTONUP` [INFO] [stdout] --> src/event/details.rs:335:21 [INFO] [stdout] | [INFO] [stdout] 335 | WM_RBUTTONUP | WM_LBUTTONUP | WM_MBUTTONUP | WM_XBUTTONUP => Up, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0408]: variable `WM_RBUTTONDOWN` is not bound in all patterns [INFO] [stdout] --> src/event/details.rs:350:21 [INFO] [stdout] | [INFO] [stdout] 350 | WM_LBUTTONDOWN | WM_RBUTTONDOWN | WM_MBUTTONDOWN | WM_XBUTTONDOWN => SingleClick, [INFO] [stdout] | ^^^^^^^^^^^^^^ -------------- ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ pattern doesn't bind `WM_RBUTTONDOWN` [INFO] [stdout] | | | | [INFO] [stdout] | | | pattern doesn't bind `WM_RBUTTONDOWN` [INFO] [stdout] | | variable not in all patterns [INFO] [stdout] | pattern doesn't bind `WM_RBUTTONDOWN` [INFO] [stdout] | [INFO] [stdout] help: if you meant to match on a variant or a `const` item, consider making the path in the pattern qualified: `path::to::ModOrType::WM_RBUTTONDOWN` [INFO] [stdout] --> src/event/details.rs:350:38 [INFO] [stdout] | [INFO] [stdout] 350 | WM_LBUTTONDOWN | WM_RBUTTONDOWN | WM_MBUTTONDOWN | WM_XBUTTONDOWN => SingleClick, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0408]: variable `WM_MBUTTONDOWN` is not bound in all patterns [INFO] [stdout] --> src/event/details.rs:350:21 [INFO] [stdout] | [INFO] [stdout] 350 | WM_LBUTTONDOWN | WM_RBUTTONDOWN | WM_MBUTTONDOWN | WM_XBUTTONDOWN => SingleClick, [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ -------------- ^^^^^^^^^^^^^^ pattern doesn't bind `WM_MBUTTONDOWN` [INFO] [stdout] | | | | [INFO] [stdout] | | | variable not in all patterns [INFO] [stdout] | | pattern doesn't bind `WM_MBUTTONDOWN` [INFO] [stdout] | pattern doesn't bind `WM_MBUTTONDOWN` [INFO] [stdout] | [INFO] [stdout] help: if you meant to match on a variant or a `const` item, consider making the path in the pattern qualified: `path::to::ModOrType::WM_MBUTTONDOWN` [INFO] [stdout] --> src/event/details.rs:350:55 [INFO] [stdout] | [INFO] [stdout] 350 | WM_LBUTTONDOWN | WM_RBUTTONDOWN | WM_MBUTTONDOWN | WM_XBUTTONDOWN => SingleClick, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0408]: variable `WM_XBUTTONDOWN` is not bound in all patterns [INFO] [stdout] --> src/event/details.rs:350:21 [INFO] [stdout] | [INFO] [stdout] 350 | WM_LBUTTONDOWN | WM_RBUTTONDOWN | WM_MBUTTONDOWN | WM_XBUTTONDOWN => SingleClick, [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ -------------- variable not in all patterns [INFO] [stdout] | | | | [INFO] [stdout] | | | pattern doesn't bind `WM_XBUTTONDOWN` [INFO] [stdout] | | pattern doesn't bind `WM_XBUTTONDOWN` [INFO] [stdout] | pattern doesn't bind `WM_XBUTTONDOWN` [INFO] [stdout] | [INFO] [stdout] help: if you meant to match on a variant or a `const` item, consider making the path in the pattern qualified: `path::to::ModOrType::WM_XBUTTONDOWN` [INFO] [stdout] --> src/event/details.rs:350:72 [INFO] [stdout] | [INFO] [stdout] 350 | WM_LBUTTONDOWN | WM_RBUTTONDOWN | WM_MBUTTONDOWN | WM_XBUTTONDOWN => SingleClick, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0408]: variable `WM_LBUTTONDOWN` is not bound in all patterns [INFO] [stdout] --> src/event/details.rs:350:38 [INFO] [stdout] | [INFO] [stdout] 350 | WM_LBUTTONDOWN | WM_RBUTTONDOWN | WM_MBUTTONDOWN | WM_XBUTTONDOWN => SingleClick, [INFO] [stdout] | -------------- ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ pattern doesn't bind `WM_LBUTTONDOWN` [INFO] [stdout] | | | | [INFO] [stdout] | | | pattern doesn't bind `WM_LBUTTONDOWN` [INFO] [stdout] | | pattern doesn't bind `WM_LBUTTONDOWN` [INFO] [stdout] | variable not in all patterns [INFO] [stdout] | [INFO] [stdout] help: if you meant to match on a variant or a `const` item, consider making the path in the pattern qualified: `path::to::ModOrType::WM_LBUTTONDOWN` [INFO] [stdout] --> src/event/details.rs:350:21 [INFO] [stdout] | [INFO] [stdout] 350 | WM_LBUTTONDOWN | WM_RBUTTONDOWN | WM_MBUTTONDOWN | WM_XBUTTONDOWN => SingleClick, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0408]: variable `WM_RBUTTONUP` is not bound in all patterns [INFO] [stdout] --> src/event/details.rs:351:21 [INFO] [stdout] | [INFO] [stdout] 351 | WM_LBUTTONUP | WM_RBUTTONUP | WM_MBUTTONUP | WM_XBUTTONUP => SingleClick, [INFO] [stdout] | ^^^^^^^^^^^^ ------------ ^^^^^^^^^^^^ ^^^^^^^^^^^^ pattern doesn't bind `WM_RBUTTONUP` [INFO] [stdout] | | | | [INFO] [stdout] | | | pattern doesn't bind `WM_RBUTTONUP` [INFO] [stdout] | | variable not in all patterns [INFO] [stdout] | pattern doesn't bind `WM_RBUTTONUP` [INFO] [stdout] | [INFO] [stdout] help: if you meant to match on a variant or a `const` item, consider making the path in the pattern qualified: `path::to::ModOrType::WM_RBUTTONUP` [INFO] [stdout] --> src/event/details.rs:351:36 [INFO] [stdout] | [INFO] [stdout] 351 | WM_LBUTTONUP | WM_RBUTTONUP | WM_MBUTTONUP | WM_XBUTTONUP => SingleClick, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0408]: variable `WM_MBUTTONUP` is not bound in all patterns [INFO] [stdout] --> src/event/details.rs:351:21 [INFO] [stdout] | [INFO] [stdout] 351 | WM_LBUTTONUP | WM_RBUTTONUP | WM_MBUTTONUP | WM_XBUTTONUP => SingleClick, [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^^^^^ ------------ ^^^^^^^^^^^^ pattern doesn't bind `WM_MBUTTONUP` [INFO] [stdout] | | | | [INFO] [stdout] | | | variable not in all patterns [INFO] [stdout] | | pattern doesn't bind `WM_MBUTTONUP` [INFO] [stdout] | pattern doesn't bind `WM_MBUTTONUP` [INFO] [stdout] | [INFO] [stdout] help: if you meant to match on a variant or a `const` item, consider making the path in the pattern qualified: `path::to::ModOrType::WM_MBUTTONUP` [INFO] [stdout] --> src/event/details.rs:351:51 [INFO] [stdout] | [INFO] [stdout] 351 | WM_LBUTTONUP | WM_RBUTTONUP | WM_MBUTTONUP | WM_XBUTTONUP => SingleClick, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0408]: variable `WM_XBUTTONUP` is not bound in all patterns [INFO] [stdout] --> src/event/details.rs:351:21 [INFO] [stdout] | [INFO] [stdout] 351 | WM_LBUTTONUP | WM_RBUTTONUP | WM_MBUTTONUP | WM_XBUTTONUP => SingleClick, [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^^^ ------------ variable not in all patterns [INFO] [stdout] | | | | [INFO] [stdout] | | | pattern doesn't bind `WM_XBUTTONUP` [INFO] [stdout] | | pattern doesn't bind `WM_XBUTTONUP` [INFO] [stdout] | pattern doesn't bind `WM_XBUTTONUP` [INFO] [stdout] | [INFO] [stdout] help: if you meant to match on a variant or a `const` item, consider making the path in the pattern qualified: `path::to::ModOrType::WM_XBUTTONUP` [INFO] [stdout] --> src/event/details.rs:351:66 [INFO] [stdout] | [INFO] [stdout] 351 | WM_LBUTTONUP | WM_RBUTTONUP | WM_MBUTTONUP | WM_XBUTTONUP => SingleClick, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0408]: variable `WM_LBUTTONUP` is not bound in all patterns [INFO] [stdout] --> src/event/details.rs:351:36 [INFO] [stdout] | [INFO] [stdout] 351 | WM_LBUTTONUP | WM_RBUTTONUP | WM_MBUTTONUP | WM_XBUTTONUP => SingleClick, [INFO] [stdout] | ------------ ^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^^^ pattern doesn't bind `WM_LBUTTONUP` [INFO] [stdout] | | | | [INFO] [stdout] | | | pattern doesn't bind `WM_LBUTTONUP` [INFO] [stdout] | | pattern doesn't bind `WM_LBUTTONUP` [INFO] [stdout] | variable not in all patterns [INFO] [stdout] | [INFO] [stdout] help: if you meant to match on a variant or a `const` item, consider making the path in the pattern qualified: `path::to::ModOrType::WM_LBUTTONUP` [INFO] [stdout] --> src/event/details.rs:351:21 [INFO] [stdout] | [INFO] [stdout] 351 | WM_LBUTTONUP | WM_RBUTTONUP | WM_MBUTTONUP | WM_XBUTTONUP => SingleClick, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0408]: variable `WM_RBUTTONDBLCLK` is not bound in all patterns [INFO] [stdout] --> src/event/details.rs:352:21 [INFO] [stdout] | [INFO] [stdout] 352 | WM_LBUTTONDBLCLK | WM_RBUTTONDBLCLK | WM_MBUTTONDBLCLK | WM_XBUTTONDBLCLK => DoubleClick, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ ---------------- ^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ pattern doesn't bind `WM_RBUTTONDBLCLK` [INFO] [stdout] | | | | [INFO] [stdout] | | | pattern doesn't bind `WM_RBUTTONDBLCLK` [INFO] [stdout] | | variable not in all patterns [INFO] [stdout] | pattern doesn't bind `WM_RBUTTONDBLCLK` [INFO] [stdout] | [INFO] [stdout] help: if you meant to match on a variant or a `const` item, consider making the path in the pattern qualified: `path::to::ModOrType::WM_RBUTTONDBLCLK` [INFO] [stdout] --> src/event/details.rs:352:40 [INFO] [stdout] | [INFO] [stdout] 352 | WM_LBUTTONDBLCLK | WM_RBUTTONDBLCLK | WM_MBUTTONDBLCLK | WM_XBUTTONDBLCLK => DoubleClick, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0408]: variable `WM_MBUTTONDBLCLK` is not bound in all patterns [INFO] [stdout] --> src/event/details.rs:352:21 [INFO] [stdout] | [INFO] [stdout] 352 | WM_LBUTTONDBLCLK | WM_RBUTTONDBLCLK | WM_MBUTTONDBLCLK | WM_XBUTTONDBLCLK => DoubleClick, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ ---------------- ^^^^^^^^^^^^^^^^ pattern doesn't bind `WM_MBUTTONDBLCLK` [INFO] [stdout] | | | | [INFO] [stdout] | | | variable not in all patterns [INFO] [stdout] | | pattern doesn't bind `WM_MBUTTONDBLCLK` [INFO] [stdout] | pattern doesn't bind `WM_MBUTTONDBLCLK` [INFO] [stdout] | [INFO] [stdout] help: if you meant to match on a variant or a `const` item, consider making the path in the pattern qualified: `path::to::ModOrType::WM_MBUTTONDBLCLK` [INFO] [stdout] --> src/event/details.rs:352:59 [INFO] [stdout] | [INFO] [stdout] 352 | WM_LBUTTONDBLCLK | WM_RBUTTONDBLCLK | WM_MBUTTONDBLCLK | WM_XBUTTONDBLCLK => DoubleClick, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0408]: variable `WM_XBUTTONDBLCLK` is not bound in all patterns [INFO] [stdout] --> src/event/details.rs:352:21 [INFO] [stdout] | [INFO] [stdout] 352 | WM_LBUTTONDBLCLK | WM_RBUTTONDBLCLK | WM_MBUTTONDBLCLK | WM_XBUTTONDBLCLK => DoubleClick, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ ---------------- variable not in all patterns [INFO] [stdout] | | | | [INFO] [stdout] | | | pattern doesn't bind `WM_XBUTTONDBLCLK` [INFO] [stdout] | | pattern doesn't bind `WM_XBUTTONDBLCLK` [INFO] [stdout] | pattern doesn't bind `WM_XBUTTONDBLCLK` [INFO] [stdout] | [INFO] [stdout] help: if you meant to match on a variant or a `const` item, consider making the path in the pattern qualified: `path::to::ModOrType::WM_XBUTTONDBLCLK` [INFO] [stdout] --> src/event/details.rs:352:78 [INFO] [stdout] | [INFO] [stdout] 352 | WM_LBUTTONDBLCLK | WM_RBUTTONDBLCLK | WM_MBUTTONDBLCLK | WM_XBUTTONDBLCLK => DoubleClick, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0408]: variable `WM_LBUTTONDBLCLK` is not bound in all patterns [INFO] [stdout] --> src/event/details.rs:352:40 [INFO] [stdout] | [INFO] [stdout] 352 | WM_LBUTTONDBLCLK | WM_RBUTTONDBLCLK | WM_MBUTTONDBLCLK | WM_XBUTTONDBLCLK => DoubleClick, [INFO] [stdout] | ---------------- ^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ pattern doesn't bind `WM_LBUTTONDBLCLK` [INFO] [stdout] | | | | [INFO] [stdout] | | | pattern doesn't bind `WM_LBUTTONDBLCLK` [INFO] [stdout] | | pattern doesn't bind `WM_LBUTTONDBLCLK` [INFO] [stdout] | variable not in all patterns [INFO] [stdout] | [INFO] [stdout] help: if you meant to match on a variant or a `const` item, consider making the path in the pattern qualified: `path::to::ModOrType::WM_LBUTTONDBLCLK` [INFO] [stdout] --> src/event/details.rs:352:21 [INFO] [stdout] | [INFO] [stdout] 352 | WM_LBUTTONDBLCLK | WM_RBUTTONDBLCLK | WM_MBUTTONDBLCLK | WM_XBUTTONDBLCLK => DoubleClick, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0408]: variable `WM_LBUTTONUP` is not bound in all patterns [INFO] [stdout] --> src/event/details.rs:370:21 [INFO] [stdout] | [INFO] [stdout] 370 | WM_LBUTTONDOWN | WM_LBUTTONUP | WM_LBUTTONDBLCLK => Left(click), [INFO] [stdout] | ^^^^^^^^^^^^^^ ------------ ^^^^^^^^^^^^^^^^ pattern doesn't bind `WM_LBUTTONUP` [INFO] [stdout] | | | [INFO] [stdout] | | variable not in all patterns [INFO] [stdout] | pattern doesn't bind `WM_LBUTTONUP` [INFO] [stdout] | [INFO] [stdout] help: if you meant to match on a variant or a `const` item, consider making the path in the pattern qualified: `path::to::ModOrType::WM_LBUTTONUP` [INFO] [stdout] --> src/event/details.rs:370:38 [INFO] [stdout] | [INFO] [stdout] 370 | WM_LBUTTONDOWN | WM_LBUTTONUP | WM_LBUTTONDBLCLK => Left(click), [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0408]: variable `WM_LBUTTONDBLCLK` is not bound in all patterns [INFO] [stdout] --> src/event/details.rs:370:21 [INFO] [stdout] | [INFO] [stdout] 370 | WM_LBUTTONDOWN | WM_LBUTTONUP | WM_LBUTTONDBLCLK => Left(click), [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^ ---------------- variable not in all patterns [INFO] [stdout] | | | [INFO] [stdout] | | pattern doesn't bind `WM_LBUTTONDBLCLK` [INFO] [stdout] | pattern doesn't bind `WM_LBUTTONDBLCLK` [INFO] [stdout] | [INFO] [stdout] help: if you meant to match on a variant or a `const` item, consider making the path in the pattern qualified: `path::to::ModOrType::WM_LBUTTONDBLCLK` [INFO] [stdout] --> src/event/details.rs:370:53 [INFO] [stdout] | [INFO] [stdout] 370 | WM_LBUTTONDOWN | WM_LBUTTONUP | WM_LBUTTONDBLCLK => Left(click), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0408]: variable `WM_LBUTTONDOWN` is not bound in all patterns [INFO] [stdout] --> src/event/details.rs:370:38 [INFO] [stdout] | [INFO] [stdout] 370 | WM_LBUTTONDOWN | WM_LBUTTONUP | WM_LBUTTONDBLCLK => Left(click), [INFO] [stdout] | -------------- ^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ pattern doesn't bind `WM_LBUTTONDOWN` [INFO] [stdout] | | | [INFO] [stdout] | | pattern doesn't bind `WM_LBUTTONDOWN` [INFO] [stdout] | variable not in all patterns [INFO] [stdout] | [INFO] [stdout] help: if you meant to match on a variant or a `const` item, consider making the path in the pattern qualified: `path::to::ModOrType::WM_LBUTTONDOWN` [INFO] [stdout] --> src/event/details.rs:370:21 [INFO] [stdout] | [INFO] [stdout] 370 | WM_LBUTTONDOWN | WM_LBUTTONUP | WM_LBUTTONDBLCLK => Left(click), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0408]: variable `WM_RBUTTONUP` is not bound in all patterns [INFO] [stdout] --> src/event/details.rs:371:21 [INFO] [stdout] | [INFO] [stdout] 371 | WM_RBUTTONDOWN | WM_RBUTTONUP | WM_RBUTTONDBLCLK => Right(click), [INFO] [stdout] | ^^^^^^^^^^^^^^ ------------ ^^^^^^^^^^^^^^^^ pattern doesn't bind `WM_RBUTTONUP` [INFO] [stdout] | | | [INFO] [stdout] | | variable not in all patterns [INFO] [stdout] | pattern doesn't bind `WM_RBUTTONUP` [INFO] [stdout] | [INFO] [stdout] help: if you meant to match on a variant or a `const` item, consider making the path in the pattern qualified: `path::to::ModOrType::WM_RBUTTONUP` [INFO] [stdout] --> src/event/details.rs:371:38 [INFO] [stdout] | [INFO] [stdout] 371 | WM_RBUTTONDOWN | WM_RBUTTONUP | WM_RBUTTONDBLCLK => Right(click), [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0408]: variable `WM_RBUTTONDBLCLK` is not bound in all patterns [INFO] [stdout] --> src/event/details.rs:371:21 [INFO] [stdout] | [INFO] [stdout] 371 | WM_RBUTTONDOWN | WM_RBUTTONUP | WM_RBUTTONDBLCLK => Right(click), [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^ ---------------- variable not in all patterns [INFO] [stdout] | | | [INFO] [stdout] | | pattern doesn't bind `WM_RBUTTONDBLCLK` [INFO] [stdout] | pattern doesn't bind `WM_RBUTTONDBLCLK` [INFO] [stdout] | [INFO] [stdout] help: if you meant to match on a variant or a `const` item, consider making the path in the pattern qualified: `path::to::ModOrType::WM_RBUTTONDBLCLK` [INFO] [stdout] --> src/event/details.rs:371:53 [INFO] [stdout] | [INFO] [stdout] 371 | WM_RBUTTONDOWN | WM_RBUTTONUP | WM_RBUTTONDBLCLK => Right(click), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0408]: variable `WM_RBUTTONDOWN` is not bound in all patterns [INFO] [stdout] --> src/event/details.rs:371:38 [INFO] [stdout] | [INFO] [stdout] 371 | WM_RBUTTONDOWN | WM_RBUTTONUP | WM_RBUTTONDBLCLK => Right(click), [INFO] [stdout] | -------------- ^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ pattern doesn't bind `WM_RBUTTONDOWN` [INFO] [stdout] | | | [INFO] [stdout] | | pattern doesn't bind `WM_RBUTTONDOWN` [INFO] [stdout] | variable not in all patterns [INFO] [stdout] | [INFO] [stdout] help: if you meant to match on a variant or a `const` item, consider making the path in the pattern qualified: `path::to::ModOrType::WM_RBUTTONDOWN` [INFO] [stdout] --> src/event/details.rs:371:21 [INFO] [stdout] | [INFO] [stdout] 371 | WM_RBUTTONDOWN | WM_RBUTTONUP | WM_RBUTTONDBLCLK => Right(click), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0408]: variable `WM_MBUTTONUP` is not bound in all patterns [INFO] [stdout] --> src/event/details.rs:372:21 [INFO] [stdout] | [INFO] [stdout] 372 | WM_MBUTTONDOWN | WM_MBUTTONUP | WM_MBUTTONDBLCLK=> Middle(click), [INFO] [stdout] | ^^^^^^^^^^^^^^ ------------ ^^^^^^^^^^^^^^^^ pattern doesn't bind `WM_MBUTTONUP` [INFO] [stdout] | | | [INFO] [stdout] | | variable not in all patterns [INFO] [stdout] | pattern doesn't bind `WM_MBUTTONUP` [INFO] [stdout] | [INFO] [stdout] help: if you meant to match on a variant or a `const` item, consider making the path in the pattern qualified: `path::to::ModOrType::WM_MBUTTONUP` [INFO] [stdout] --> src/event/details.rs:372:38 [INFO] [stdout] | [INFO] [stdout] 372 | WM_MBUTTONDOWN | WM_MBUTTONUP | WM_MBUTTONDBLCLK=> Middle(click), [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0408]: variable `WM_MBUTTONDBLCLK` is not bound in all patterns [INFO] [stdout] --> src/event/details.rs:372:21 [INFO] [stdout] | [INFO] [stdout] 372 | WM_MBUTTONDOWN | WM_MBUTTONUP | WM_MBUTTONDBLCLK=> Middle(click), [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^ ---------------- variable not in all patterns [INFO] [stdout] | | | [INFO] [stdout] | | pattern doesn't bind `WM_MBUTTONDBLCLK` [INFO] [stdout] | pattern doesn't bind `WM_MBUTTONDBLCLK` [INFO] [stdout] | [INFO] [stdout] help: if you meant to match on a variant or a `const` item, consider making the path in the pattern qualified: `path::to::ModOrType::WM_MBUTTONDBLCLK` [INFO] [stdout] --> src/event/details.rs:372:53 [INFO] [stdout] | [INFO] [stdout] 372 | WM_MBUTTONDOWN | WM_MBUTTONUP | WM_MBUTTONDBLCLK=> Middle(click), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0408]: variable `WM_MBUTTONDOWN` is not bound in all patterns [INFO] [stdout] --> src/event/details.rs:372:38 [INFO] [stdout] | [INFO] [stdout] 372 | WM_MBUTTONDOWN | WM_MBUTTONUP | WM_MBUTTONDBLCLK=> Middle(click), [INFO] [stdout] | -------------- ^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ pattern doesn't bind `WM_MBUTTONDOWN` [INFO] [stdout] | | | [INFO] [stdout] | | pattern doesn't bind `WM_MBUTTONDOWN` [INFO] [stdout] | variable not in all patterns [INFO] [stdout] | [INFO] [stdout] help: if you meant to match on a variant or a `const` item, consider making the path in the pattern qualified: `path::to::ModOrType::WM_MBUTTONDOWN` [INFO] [stdout] --> src/event/details.rs:372:21 [INFO] [stdout] | [INFO] [stdout] 372 | WM_MBUTTONDOWN | WM_MBUTTONUP | WM_MBUTTONDBLCLK=> Middle(click), [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0408]: variable `WM_XBUTTONUP` is not bound in all patterns [INFO] [stdout] --> src/event/details.rs:373:21 [INFO] [stdout] | [INFO] [stdout] 373 | WM_XBUTTONDOWN | WM_XBUTTONUP | WM_XBUTTONDBLCLK => { [INFO] [stdout] | ^^^^^^^^^^^^^^ ------------ ^^^^^^^^^^^^^^^^ pattern doesn't bind `WM_XBUTTONUP` [INFO] [stdout] | | | [INFO] [stdout] | | variable not in all patterns [INFO] [stdout] | pattern doesn't bind `WM_XBUTTONUP` [INFO] [stdout] | [INFO] [stdout] help: if you meant to match on a variant or a `const` item, consider making the path in the pattern qualified: `path::to::ModOrType::WM_XBUTTONUP` [INFO] [stdout] --> src/event/details.rs:373:38 [INFO] [stdout] | [INFO] [stdout] 373 | WM_XBUTTONDOWN | WM_XBUTTONUP | WM_XBUTTONDBLCLK => { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0408]: variable `WM_XBUTTONDBLCLK` is not bound in all patterns [INFO] [stdout] --> src/event/details.rs:373:21 [INFO] [stdout] | [INFO] [stdout] 373 | WM_XBUTTONDOWN | WM_XBUTTONUP | WM_XBUTTONDBLCLK => { [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^ ---------------- variable not in all patterns [INFO] [stdout] | | | [INFO] [stdout] | | pattern doesn't bind `WM_XBUTTONDBLCLK` [INFO] [stdout] | pattern doesn't bind `WM_XBUTTONDBLCLK` [INFO] [stdout] | [INFO] [stdout] help: if you meant to match on a variant or a `const` item, consider making the path in the pattern qualified: `path::to::ModOrType::WM_XBUTTONDBLCLK` [INFO] [stdout] --> src/event/details.rs:373:53 [INFO] [stdout] | [INFO] [stdout] 373 | WM_XBUTTONDOWN | WM_XBUTTONUP | WM_XBUTTONDBLCLK => { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0408]: variable `WM_XBUTTONDOWN` is not bound in all patterns [INFO] [stdout] --> src/event/details.rs:373:38 [INFO] [stdout] | [INFO] [stdout] 373 | WM_XBUTTONDOWN | WM_XBUTTONUP | WM_XBUTTONDBLCLK => { [INFO] [stdout] | -------------- ^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^ pattern doesn't bind `WM_XBUTTONDOWN` [INFO] [stdout] | | | [INFO] [stdout] | | pattern doesn't bind `WM_XBUTTONDOWN` [INFO] [stdout] | variable not in all patterns [INFO] [stdout] | [INFO] [stdout] help: if you meant to match on a variant or a `const` item, consider making the path in the pattern qualified: `path::to::ModOrType::WM_XBUTTONDOWN` [INFO] [stdout] --> src/event/details.rs:373:21 [INFO] [stdout] | [INFO] [stdout] 373 | WM_XBUTTONDOWN | WM_XBUTTONUP | WM_XBUTTONDBLCLK => { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `HHOOK` in this scope [INFO] [stdout] --> src/hook/inner/low_level.rs:11:31 [INFO] [stdout] | [INFO] [stdout] 11 | unsafe fn call_next_hook(hhk: HHOOK, n_code: INT, w_param: WPARAM, l_param: LPARAM) -> LRESULT { [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `INT` in this scope [INFO] [stdout] --> src/hook/inner/low_level.rs:11:46 [INFO] [stdout] | [INFO] [stdout] 11 | unsafe fn call_next_hook(hhk: HHOOK, n_code: INT, w_param: WPARAM, l_param: LPARAM) -> LRESULT { [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `WPARAM` in this scope [INFO] [stdout] --> src/hook/inner/low_level.rs:11:60 [INFO] [stdout] | [INFO] [stdout] 11 | unsafe fn call_next_hook(hhk: HHOOK, n_code: INT, w_param: WPARAM, l_param: LPARAM) -> LRESULT { [INFO] [stdout] | ^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `LPARAM` in this scope [INFO] [stdout] --> src/hook/inner/low_level.rs:11:77 [INFO] [stdout] | [INFO] [stdout] 11 | unsafe fn call_next_hook(hhk: HHOOK, n_code: INT, w_param: WPARAM, l_param: LPARAM) -> LRESULT { [INFO] [stdout] | ^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `LRESULT` in this scope [INFO] [stdout] --> src/hook/inner/low_level.rs:11:88 [INFO] [stdout] | [INFO] [stdout] 11 | unsafe fn call_next_hook(hhk: HHOOK, n_code: INT, w_param: WPARAM, l_param: LPARAM) -> LRESULT { [INFO] [stdout] | ^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `INT` in this scope [INFO] [stdout] --> src/hook/inner/low_level.rs:35:11 [INFO] [stdout] | [INFO] [stdout] 35 | code: INT, [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `WPARAM` in this scope [INFO] [stdout] --> src/hook/inner/low_level.rs:36:18 [INFO] [stdout] | [INFO] [stdout] 36 | wm_key_code: WPARAM, [INFO] [stdout] | ^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `LPARAM` in this scope [INFO] [stdout] --> src/hook/inner/low_level.rs:37:22 [INFO] [stdout] | [INFO] [stdout] 37 | win_hook_struct: LPARAM, [INFO] [stdout] | ^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `LRESULT` in this scope [INFO] [stdout] --> src/hook/inner/low_level.rs:38:6 [INFO] [stdout] | [INFO] [stdout] 38 | ) -> LRESULT { [INFO] [stdout] | ^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `HHOOK` in this scope [INFO] [stdout] --> src/hook/inner/low_level.rs:45:45 [INFO] [stdout] | [INFO] [stdout] 45 | return call_next_hook(null_mut() as HHOOK, code, wm_key_code, win_hook_struct); [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `HHOOK` in this scope [INFO] [stdout] --> src/hook/inner/low_level.rs:53:34 [INFO] [stdout] | [INFO] [stdout] 53 | call_next_hook(null_mut() as HHOOK, code, wm_key_code, win_hook_struct) [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `INT` in this scope [INFO] [stdout] --> src/hook/inner/low_level.rs:154:11 [INFO] [stdout] | [INFO] [stdout] 154 | code: INT, [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `WPARAM` in this scope [INFO] [stdout] --> src/hook/inner/low_level.rs:155:21 [INFO] [stdout] | [INFO] [stdout] 155 | wm_mouse_param: WPARAM, [INFO] [stdout] | ^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `LPARAM` in this scope [INFO] [stdout] --> src/hook/inner/low_level.rs:156:22 [INFO] [stdout] | [INFO] [stdout] 156 | win_hook_struct: LPARAM, [INFO] [stdout] | ^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `LRESULT` in this scope [INFO] [stdout] --> src/hook/inner/low_level.rs:157:6 [INFO] [stdout] | [INFO] [stdout] 157 | ) -> LRESULT { [INFO] [stdout] | ^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `HHOOK` in this scope [INFO] [stdout] --> src/hook/inner/low_level.rs:163:49 [INFO] [stdout] | [INFO] [stdout] 163 | return CallNextHookEx(null_mut() as HHOOK, code, wm_mouse_param, win_hook_struct); [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `HHOOK` in this scope [INFO] [stdout] --> src/hook/inner/low_level.rs:171:34 [INFO] [stdout] | [INFO] [stdout] 171 | CallNextHookEx(null_mut() as HHOOK, code, wm_mouse_param, win_hook_struct) [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `HHOOK` in this scope [INFO] [stdout] --> src/hook/inner.rs:73:37 [INFO] [stdout] | [INFO] [stdout] 73 | if winapi_handle == NULL as HHOOK || thread_id == NULL as DWORD { [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `DWORD` in this scope [INFO] [stdout] --> src/hook/inner.rs:73:67 [INFO] [stdout] | [INFO] [stdout] 73 | if winapi_handle == NULL as HHOOK || thread_id == NULL as DWORD { [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `WPARAM` in this scope [INFO] [stdout] --> src/hook/inner.rs:87:68 [INFO] [stdout] | [INFO] [stdout] 87 | if 0 == PostThreadMessageA(thread_id, WM_QUIT, NULL as WPARAM, NULL as LPARAM) { [INFO] [stdout] | ^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `LPARAM` in this scope [INFO] [stdout] --> src/hook/inner.rs:87:84 [INFO] [stdout] | [INFO] [stdout] 87 | if 0 == PostThreadMessageA(thread_id, WM_QUIT, NULL as WPARAM, NULL as LPARAM) { [INFO] [stdout] | ^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `INT` in this scope [INFO] [stdout] --> src/hook/inner.rs:103:25 [INFO] [stdout] | [INFO] [stdout] 103 | pub fn new(hook_id: INT, handler: HOOKPROC) -> InnerHook { [INFO] [stdout] | ^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `HINSTANCE` in this scope [INFO] [stdout] --> src/hook/inner.rs:120:69 [INFO] [stdout] | [INFO] [stdout] 120 | hhook = SetWindowsHookExA(hook_id, handler, NULL as HINSTANCE, NULL as DWORD); [INFO] [stdout] | ^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `DWORD` in this scope [INFO] [stdout] --> src/hook/inner.rs:120:88 [INFO] [stdout] | [INFO] [stdout] 120 | hhook = SetWindowsHookExA(hook_id, handler, NULL as HINSTANCE, NULL as DWORD); [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `HHOOK` in this scope [INFO] [stdout] --> src/hook/inner.rs:124:33 [INFO] [stdout] | [INFO] [stdout] 124 | if hhook != NULL as HHOOK { [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `HWND` in this scope [INFO] [stdout] --> src/hook/inner.rs:148:32 [INFO] [stdout] | [INFO] [stdout] 148 | -1isize as HWND, // -1 => Wait only for message to this thread specifically [INFO] [stdout] | ^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `UINT` in this scope [INFO] [stdout] --> src/hook/inner.rs:149:29 [INFO] [stdout] | [INFO] [stdout] 149 | NULL as UINT, [INFO] [stdout] | ^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `UINT` in this scope [INFO] [stdout] --> src/hook/inner.rs:150:29 [INFO] [stdout] | [INFO] [stdout] 150 | NULL as UINT, [INFO] [stdout] | ^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `WPARAM` in this scope [INFO] [stdout] --> src/event/details.rs:11:36 [INFO] [stdout] | [INFO] [stdout] 11 | pub unsafe fn new(wm_key_code: WPARAM, kbd_hook_struct: *const KBDLLHOOKSTRUCT) -> Self { [INFO] [stdout] | ^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `KBDLLHOOKSTRUCT` in this scope [INFO] [stdout] --> src/event/details.rs:11:68 [INFO] [stdout] | [INFO] [stdout] 11 | pub unsafe fn new(wm_key_code: WPARAM, kbd_hook_struct: *const KBDLLHOOKSTRUCT) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `KBDLLHOOKSTRUCT` in this scope [INFO] [stdout] --> src/event/details.rs:21:54 [INFO] [stdout] | [INFO] [stdout] 21 | unsafe fn optionally_from_keyboard(value: *const KBDLLHOOKSTRUCT) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `MSLLHOOKSTRUCT` in this scope [INFO] [stdout] --> src/event/details.rs:29:51 [INFO] [stdout] | [INFO] [stdout] 29 | unsafe fn optionally_from_mouse(value: *const MSLLHOOKSTRUCT) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `DWORD` in this scope [INFO] [stdout] --> src/event/details.rs:37:32 [INFO] [stdout] | [INFO] [stdout] 37 | fn from_mouse_flags(value: DWORD) -> Self { [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `LLMHF_INJECTED` in this scope [INFO] [stdout] --> src/event/details.rs:38:31 [INFO] [stdout] | [INFO] [stdout] 38 | let i1 = 0 != value & LLMHF_INJECTED; [INFO] [stdout] | ^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `LLMHF_LOWER_IL_INJECTED` in this scope [INFO] [stdout] --> src/event/details.rs:39:31 [INFO] [stdout] | [INFO] [stdout] 39 | let i2 = 0 != value & LLMHF_LOWER_IL_INJECTED; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `DWORD` in this scope [INFO] [stdout] --> src/event/details.rs:47:35 [INFO] [stdout] | [INFO] [stdout] 47 | fn from_keyboard_flags(value: DWORD) -> Self { [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `LLKHF_INJECTED` in this scope [INFO] [stdout] --> src/event/details.rs:48:31 [INFO] [stdout] | [INFO] [stdout] 48 | let i1 = 0 != value & LLKHF_INJECTED; [INFO] [stdout] | ^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find value `LLKHF_LOWER_IL_INJECTED` in this scope [INFO] [stdout] --> src/event/details.rs:49:31 [INFO] [stdout] | [INFO] [stdout] 49 | let i2 = 0 != value & LLKHF_LOWER_IL_INJECTED; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `WPARAM` in this scope [INFO] [stdout] --> src/event/details.rs:58:11 [INFO] [stdout] | [INFO] [stdout] 58 | impl From for KeyPress { [INFO] [stdout] | ^^^^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: you might be missing a type parameter [INFO] [stdout] | [INFO] [stdout] 58 | impl From for KeyPress { [INFO] [stdout] | ++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `WPARAM` in this scope [INFO] [stdout] --> src/event/details.rs:59:19 [INFO] [stdout] | [INFO] [stdout] 59 | fn from(code: WPARAM) -> Self { [INFO] [stdout] | ^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `DWORD` in this scope [INFO] [stdout] --> src/event/details.rs:95:11 [INFO] [stdout] | [INFO] [stdout] 95 | impl From for KeyboardKey { [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: you might be missing a type parameter [INFO] [stdout] | [INFO] [stdout] 95 | impl From for KeyboardKey { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `DWORD` in this scope [INFO] [stdout] --> src/event/details.rs:96:19 [INFO] [stdout] | [INFO] [stdout] 96 | fn from(code: DWORD) -> Self { [INFO] [stdout] | ^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `KBDLLHOOKSTRUCT` in this scope [INFO] [stdout] --> src/event/details.rs:222:49 [INFO] [stdout] | [INFO] [stdout] 222 | pub unsafe fn optionally_from(value: *const KBDLLHOOKSTRUCT) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `WPARAM` in this scope [INFO] [stdout] --> src/event/details.rs:232:39 [INFO] [stdout] | [INFO] [stdout] 232 | pub unsafe fn new(wm_mouse_param: WPARAM, ms_ll_hook_struct: *const MSLLHOOKSTRUCT) -> Self { [INFO] [stdout] | ^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `MSLLHOOKSTRUCT` in this scope [INFO] [stdout] --> src/event/details.rs:232:73 [INFO] [stdout] | [INFO] [stdout] 232 | pub unsafe fn new(wm_mouse_param: WPARAM, ms_ll_hook_struct: *const MSLLHOOKSTRUCT) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `WPARAM` in this scope [INFO] [stdout] --> src/event/details.rs:256:39 [INFO] [stdout] | [INFO] [stdout] 256 | pub unsafe fn new(wm_mouse_param: WPARAM, ms_ll_hook_struct: *const MSLLHOOKSTRUCT) -> MousePressEvent { [INFO] [stdout] | ^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `MSLLHOOKSTRUCT` in this scope [INFO] [stdout] --> src/event/details.rs:256:73 [INFO] [stdout] | [INFO] [stdout] 256 | pub unsafe fn new(wm_mouse_param: WPARAM, ms_ll_hook_struct: *const MSLLHOOKSTRUCT) -> MousePressEvent { [INFO] [stdout] | ^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `POINT` in this scope [INFO] [stdout] --> src/event/details.rs:264:11 [INFO] [stdout] | [INFO] [stdout] 264 | impl From for Point { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/event.rs:291:1 [INFO] [stdout] | [INFO] [stdout] 291 | pub struct Point { [INFO] [stdout] | ---------------- similarly named struct `Point` defined here [INFO] [stdout] | [INFO] [stdout] help: a struct with a similar name exists [INFO] [stdout] | [INFO] [stdout] 264 - impl From for Point { [INFO] [stdout] 264 + impl From for Point { [INFO] [stdout] | [INFO] [stdout] help: you might be missing a type parameter [INFO] [stdout] | [INFO] [stdout] 264 | impl From for Point { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `POINT` in this scope [INFO] [stdout] --> src/event/details.rs:265:20 [INFO] [stdout] | [INFO] [stdout] 265 | fn from(value: POINT) -> Self { [INFO] [stdout] | ^^^^^ help: a struct with a similar name exists: `Point` [INFO] [stdout] | [INFO] [stdout] ::: src/event.rs:291:1 [INFO] [stdout] | [INFO] [stdout] 291 | pub struct Point { [INFO] [stdout] | ---------------- similarly named struct `Point` defined here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `WPARAM` in this scope [INFO] [stdout] --> src/event/details.rs:271:32 [INFO] [stdout] | [INFO] [stdout] 271 | pub fn new(wm_mouse_param: WPARAM) -> MouseWheel { [INFO] [stdout] | ^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `WPARAM` in this scope [INFO] [stdout] --> src/event/details.rs:287:39 [INFO] [stdout] | [INFO] [stdout] 287 | pub unsafe fn new(wm_mouse_param: WPARAM, ms_ll_hook_struct: *const MSLLHOOKSTRUCT) -> MouseWheelEvent { [INFO] [stdout] | ^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `MSLLHOOKSTRUCT` in this scope [INFO] [stdout] --> src/event/details.rs:287:73 [INFO] [stdout] | [INFO] [stdout] 287 | pub unsafe fn new(wm_mouse_param: WPARAM, ms_ll_hook_struct: *const MSLLHOOKSTRUCT) -> MouseWheelEvent { [INFO] [stdout] | ^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `MSLLHOOKSTRUCT` in this scope [INFO] [stdout] --> src/event/details.rs:297:61 [INFO] [stdout] | [INFO] [stdout] 297 | pub unsafe fn optionally_from(ms_ll_hook_struct: *const MSLLHOOKSTRUCT) -> Option{ [INFO] [stdout] | ^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `MSLLHOOKSTRUCT` in this scope [INFO] [stdout] --> src/event/details.rs:305:32 [INFO] [stdout] | [INFO] [stdout] 305 | fn new(ms_ll_hook_struct: &MSLLHOOKSTRUCT) -> MouseWheelDirection { [INFO] [stdout] | ^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `WPARAM` in this scope [INFO] [stdout] --> src/event/details.rs:307:75 [INFO] [stdout] | [INFO] [stdout] 307 | let delta = GET_WHEEL_DELTA_WPARAM(ms_ll_hook_struct.mouseData as WPARAM); [INFO] [stdout] | ^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `MSLLHOOKSTRUCT` in this scope [INFO] [stdout] --> src/event/details.rs:317:49 [INFO] [stdout] | [INFO] [stdout] 317 | pub unsafe fn new(ms_ll_hook_struct: *const MSLLHOOKSTRUCT) -> MouseMoveEvent { [INFO] [stdout] | ^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `WPARAM` in this scope [INFO] [stdout] --> src/event/details.rs:328:11 [INFO] [stdout] | [INFO] [stdout] 328 | impl From for MouseButtonPress { [INFO] [stdout] | ^^^^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: you might be missing a type parameter [INFO] [stdout] | [INFO] [stdout] 328 | impl From for MouseButtonPress { [INFO] [stdout] | ++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `WPARAM` in this scope [INFO] [stdout] --> src/event/details.rs:329:20 [INFO] [stdout] | [INFO] [stdout] 329 | fn from(value: WPARAM) -> Self { [INFO] [stdout] | ^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `WPARAM` in this scope [INFO] [stdout] --> src/event/details.rs:344:11 [INFO] [stdout] | [INFO] [stdout] 344 | impl From for MouseClick { [INFO] [stdout] | ^^^^^^ not found in this scope [INFO] [stdout] | [INFO] [stdout] help: you might be missing a type parameter [INFO] [stdout] | [INFO] [stdout] 344 | impl From for MouseClick { [INFO] [stdout] | ++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `WPARAM` in this scope [INFO] [stdout] --> src/event/details.rs:345:20 [INFO] [stdout] | [INFO] [stdout] 345 | fn from(value: WPARAM) -> Self { [INFO] [stdout] | ^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `WPARAM` in this scope [INFO] [stdout] --> src/event/details.rs:363:40 [INFO] [stdout] | [INFO] [stdout] 363 | pub unsafe fn from(wm_mouse_param: WPARAM, ms_ll_hook_struct: *const MSLLHOOKSTRUCT) -> Self { [INFO] [stdout] | ^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `MSLLHOOKSTRUCT` in this scope [INFO] [stdout] --> src/event/details.rs:363:74 [INFO] [stdout] | [INFO] [stdout] 363 | pub unsafe fn from(wm_mouse_param: WPARAM, ms_ll_hook_struct: *const MSLLHOOKSTRUCT) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0412]: cannot find type `MSLLHOOKSTRUCT` in this scope [INFO] [stdout] --> src/event/details.rs:389:58 [INFO] [stdout] | [INFO] [stdout] 389 | fn into_extra(click: MouseClick, ms_ll_hook_struct: &MSLLHOOKSTRUCT) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function, tuple struct or tuple variant `GET_WHEEL_DELTA_WPARAM` in this scope [INFO] [stdout] --> src/event/details.rs:307:21 [INFO] [stdout] | [INFO] [stdout] 307 | let delta = GET_WHEEL_DELTA_WPARAM(ms_ll_hook_struct.mouseData as WPARAM); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function, tuple struct or tuple variant `GET_XBUTTON_WPARAM` in this scope [INFO] [stdout] --> src/event/details.rs:391:15 [INFO] [stdout] | [INFO] [stdout] 391 | match GET_XBUTTON_WPARAM(ms_ll_hook_struct.mouseData.try_into().expect("")) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ not found in this scope [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0408, E0412, E0425, E0432, E0433. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0408`. [INFO] [stdout] [INFO] [stderr] error: could not compile `willhook` (lib) due to 121 previous errors [INFO] running `Command { std: "docker" "inspect" "df3cd803545cbaf0efa6c63f26370e3c831f5ee12f385fbed4c1af29b35917e0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "df3cd803545cbaf0efa6c63f26370e3c831f5ee12f385fbed4c1af29b35917e0", kill_on_drop: false }` [INFO] [stdout] df3cd803545cbaf0efa6c63f26370e3c831f5ee12f385fbed4c1af29b35917e0