pub trait AsHandle {
// Required method
fn as_handle(&self) -> BorrowedHandle<'_>;
}
Expand description
A trait to borrow the handle from an underlying object.
Required Methods§
1.63.0 · Sourcefn as_handle(&self) -> BorrowedHandle<'_>
fn as_handle(&self) -> BorrowedHandle<'_>
Borrows the handle.
§Example
use std::fs::File;
use std::os::windows::io::{AsHandle, BorrowedHandle};
let mut f = File::open("foo.txt")?;
let borrowed_handle: BorrowedHandle<'_> = f.as_handle();
Implementors§
impl AsHandle for File
impl AsHandle for Stderr
impl AsHandle for Stdin
impl AsHandle for Stdout
impl AsHandle for PipeReader
impl AsHandle for PipeWriter
impl AsHandle for Child
impl AsHandle for ChildStderr
impl AsHandle for ChildStdin
impl AsHandle for ChildStdout
impl AsHandle for BorrowedHandle<'_>
impl AsHandle for OwnedHandle
impl<'a> AsHandle for StderrLock<'a>
impl<'a> AsHandle for StdinLock<'a>
impl<'a> AsHandle for StdoutLock<'a>
impl<T> AsHandle for &T
impl<T> AsHandle for &mut T
impl<T> AsHandle for Box<T>
impl<T> AsHandle for Rc<T>
impl<T> AsHandle for Arc<T>
This impl allows implementing traits that require AsHandle
on Arc.
use std::fs::File;
use std::sync::Arc;
trait MyTrait: AsHandle {}
impl MyTrait for Arc<File> {}
impl MyTrait for Box<File> {}