diff options
| author | Fuwn <[email protected]> | 2022-01-03 14:27:39 -0800 |
|---|---|---|
| committer | Fuwn <[email protected]> | 2022-01-03 14:27:39 -0800 |
| commit | 057a8eeb023ce07e971e9ed98111a269df8049bb (patch) | |
| tree | 50ee379be6d695ae7a788b3df8101f0f1a1207c2 /crates/windows-kernel-rs/src/request.rs | |
| parent | fix(windows-kernel-rs): traits (diff) | |
| download | driver-057a8eeb023ce07e971e9ed98111a269df8049bb.tar.xz driver-057a8eeb023ce07e971e9ed98111a269df8049bb.zip | |
fix(windows-kernel-rs): impl Into to impl From
Diffstat (limited to 'crates/windows-kernel-rs/src/request.rs')
| -rw-r--r-- | crates/windows-kernel-rs/src/request.rs | 29 |
1 files changed, 22 insertions, 7 deletions
diff --git a/crates/windows-kernel-rs/src/request.rs b/crates/windows-kernel-rs/src/request.rs index 7717071..af77fd7 100644 --- a/crates/windows-kernel-rs/src/request.rs +++ b/crates/windows-kernel-rs/src/request.rs @@ -64,7 +64,7 @@ impl IoRequest { pub fn irp_mut(&self) -> &mut IRP { unsafe { &mut *self.irp } } pub fn flags(&self) -> IrpFlags { - IrpFlags::from_bits(self.irp().Flags).unwrap_or(IrpFlags::empty()) + IrpFlags::from_bits(self.irp().Flags).unwrap_or_else(IrpFlags::empty) } pub fn stack_location(&self) -> &IO_STACK_LOCATION { @@ -142,8 +142,13 @@ impl ReadRequest { } } -impl Into<IoRequest> for ReadRequest { - fn into(self) -> IoRequest { self.inner } +// impl Into<IoRequest> for ReadRequest { +// fn into(self) -> IoRequest { self.inner } +// } +impl From<ReadRequest> for IoRequest { + fn from(r: ReadRequest) -> Self { + r.inner + } } pub struct WriteRequest { @@ -195,8 +200,13 @@ impl WriteRequest { } } -impl Into<IoRequest> for WriteRequest { - fn into(self) -> IoRequest { self.inner } +// impl Into<IoRequest> for WriteRequest { +// fn into(self) -> IoRequest { self.inner } +// } +impl From<WriteRequest> for IoRequest { + fn from(w: WriteRequest) -> Self { + w.inner + } } pub struct IoControlRequest { @@ -262,6 +272,11 @@ impl IoControlRequest { } } -impl Into<IoRequest> for IoControlRequest { - fn into(self) -> IoRequest { self.inner } +// impl Into<IoRequest> for IoControlRequest { +// fn into(self) -> IoRequest { self.inner } +// } +impl From<IoControlRequest> for IoRequest { + fn from(i: IoControlRequest) -> Self { + i.inner + } } |