diff --git a/Cargo.toml b/Cargo.toml index 18045db..e9d5c0a 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -9,7 +9,12 @@ repository = "https://github.com/elituf/haxor" keywords = ["memory", "game", "hacking", "process"] [dependencies] -derive_more = { version = "2", features = ["debug", "display", "from"] } +derive_more = { version = "2", features = [ + "debug", + "deref", + "display", + "from", +] } log = "0.4" thiserror = "2" windows = { version = "0.62", features = [ diff --git a/src/sys/handle.rs b/src/sys/handle.rs index a7f401c..84f2aa0 100644 --- a/src/sys/handle.rs +++ b/src/sys/handle.rs @@ -1,24 +1,16 @@ use crate::error::Error; -use std::ops::Deref; +use derive_more::Deref; use windows::Win32::{ Foundation::{CloseHandle, HANDLE, INVALID_HANDLE_VALUE}, System::Threading::{OpenProcess, PROCESS_ALL_ACCESS, PROCESS_VM_READ, PROCESS_VM_WRITE}, }; -#[derive(Debug, Default, Clone)] +#[derive(Debug, Default, Deref, Clone)] pub struct Handle(pub HANDLE); unsafe impl Send for Handle {} unsafe impl Sync for Handle {} -impl Deref for Handle { - type Target = HANDLE; - - fn deref(&self) -> &Self::Target { - &self.0 - } -} - impl Drop for Handle { fn drop(&mut self) { if let Err(why) = unsafe { CloseHandle(**self) } {