A small crate for converting various failed value to result with corresponding error type
```rust use failedresult::*; use std::io::ErrorKind; use winapi::um::{processthreadsapi::*, winnt::PROCESSALL_ACCESS};
unsafe { let res = OpenProcess(PROCESSALLACCESS, 0, 0).lasterror(); asserteq!(res.unwrap_err().kind(), ErrorKind::InvalidInput);
let res = OpenProcess(PROCESS_ALL_ACCESS, 0, std::process::id()).last_error();
assert!(res.is_ok());
} ```