Struct wasmtime_wasi::sync::Dir [−]
pub struct Dir { /* fields omitted */ }
Expand description
A reference to an open directory on a filesystem.
This does not directly correspond to anything in std
, however its methods
correspond to the functions in std::fs
and the constructor methods for
std::fs::File
.
Unlike std::fs
, this API’s canonicalize
returns a relative path since
absolute paths don’t interoperate well with the capability model.
Implementations
impl Dir
impl Dir
pub unsafe fn from_std_file(std_file: File) -> Dir
pub unsafe fn from_std_file(std_file: File) -> Dir
Constructs a new instance of Self
from the given std::fs::File
.
To prevent race conditions on Windows, the file must be opened without
FILE_SHARE_DELETE
.
Safety
std::fs::File
is not sandboxed and may access any path that the host
process has access to.
pub fn into_std_file(self) -> File
pub fn into_std_file(self) -> File
Consumes self
and returns a std::fs::File
.
pub fn open<P>(&self, path: P) -> Result<File, Error> where
P: AsRef<Path>,
pub fn open<P>(&self, path: P) -> Result<File, Error> where
P: AsRef<Path>,
Attempts to open a file in read-only mode.
This corresponds to std::fs::File::open
, but only accesses paths
relative to self
.
pub fn open_with<P>(
&self,
path: P,
options: &OpenOptions
) -> Result<File, Error> where
P: AsRef<Path>,
pub fn open_with<P>(
&self,
path: P,
options: &OpenOptions
) -> Result<File, Error> where
P: AsRef<Path>,
Opens a file at path
with the options specified by self
.
This corresponds to std::fs::OpenOptions::open
.
Instead of being a method on OpenOptions
, this is a method on Dir
,
and it only accesses paths relative to self
.
pub fn open_dir<P>(&self, path: P) -> Result<Dir, Error> where
P: AsRef<Path>,
pub fn open_dir<P>(&self, path: P) -> Result<Dir, Error> where
P: AsRef<Path>,
Attempts to open a directory.
pub fn create_dir<P>(&self, path: P) -> Result<(), Error> where
P: AsRef<Path>,
pub fn create_dir<P>(&self, path: P) -> Result<(), Error> where
P: AsRef<Path>,
Creates a new, empty directory at the provided path.
This corresponds to std::fs::create_dir
, but only accesses paths
relative to self
.
pub fn create_dir_all<P>(&self, path: P) -> Result<(), Error> where
P: AsRef<Path>,
pub fn create_dir_all<P>(&self, path: P) -> Result<(), Error> where
P: AsRef<Path>,
Recursively create a directory and all of its parent components if they are missing.
This corresponds to std::fs::create_dir_all
, but only accesses paths
relative to self
.
pub fn create_dir_with<P>(
&self,
path: P,
dir_builder: &DirBuilder
) -> Result<(), Error> where
P: AsRef<Path>,
pub fn create_dir_with<P>(
&self,
path: P,
dir_builder: &DirBuilder
) -> Result<(), Error> where
P: AsRef<Path>,
Creates the specified directory with the options configured in this builder.
This corresponds to std::fs::DirBuilder::create
.
pub fn create<P>(&self, path: P) -> Result<File, Error> where
P: AsRef<Path>,
pub fn create<P>(&self, path: P) -> Result<File, Error> where
P: AsRef<Path>,
Opens a file in write-only mode.
This corresponds to std::fs::File::create
, but only accesses paths
relative to self
.
pub fn canonicalize<P>(&self, path: P) -> Result<PathBuf, Error> where
P: AsRef<Path>,
pub fn canonicalize<P>(&self, path: P) -> Result<PathBuf, Error> where
P: AsRef<Path>,
Returns the canonical form of a path with all intermediate components normalized and symbolic links resolved.
This corresponds to std::fs::canonicalize
, but instead of returning an
absolute path, returns a path relative to the directory represented by self
.
pub fn copy<P, Q>(&self, from: P, to_dir: &Dir, to: Q) -> Result<u64, Error> where
P: AsRef<Path>,
Q: AsRef<Path>,
pub fn copy<P, Q>(&self, from: P, to_dir: &Dir, to: Q) -> Result<u64, Error> where
P: AsRef<Path>,
Q: AsRef<Path>,
Copies the contents of one file to another. This function will also copy the permission bits of the original file to the destination file.
This corresponds to std::fs::copy
, but only accesses paths
relative to self
.
pub fn hard_link<P, Q>(
&self,
src: P,
dst_dir: &Dir,
dst: Q
) -> Result<(), Error> where
P: AsRef<Path>,
Q: AsRef<Path>,
pub fn hard_link<P, Q>(
&self,
src: P,
dst_dir: &Dir,
dst: Q
) -> Result<(), Error> where
P: AsRef<Path>,
Q: AsRef<Path>,
Creates a new hard link on a filesystem.
This corresponds to std::fs::hard_link
, but only accesses paths
relative to self
.
pub fn metadata<P>(&self, path: P) -> Result<Metadata, Error> where
P: AsRef<Path>,
pub fn metadata<P>(&self, path: P) -> Result<Metadata, Error> where
P: AsRef<Path>,
Given a path, query the file system to get information about a file, directory, etc.
This corresponds to std::fs::metadata
, but only accesses paths
relative to self
.
pub fn dir_metadata(&self) -> Result<Metadata, Error>
pub fn dir_metadata(&self) -> Result<Metadata, Error>
Queries metadata about the underlying directory.
This is similar to std::fs::File::metadata
, but for Dir
rather
than for File
.
pub fn read_dir<P>(&self, path: P) -> Result<ReadDir, Error> where
P: AsRef<Path>,
pub fn read_dir<P>(&self, path: P) -> Result<ReadDir, Error> where
P: AsRef<Path>,
Returns an iterator over the entries within a directory.
This corresponds to std::fs::read_dir
, but only accesses paths
relative to self
.
pub fn read<P>(&self, path: P) -> Result<Vec<u8, Global>, Error> where
P: AsRef<Path>,
pub fn read<P>(&self, path: P) -> Result<Vec<u8, Global>, Error> where
P: AsRef<Path>,
Read the entire contents of a file into a bytes vector.
This corresponds to std::fs::read
, but only accesses paths
relative to self
.
pub fn read_link<P>(&self, path: P) -> Result<PathBuf, Error> where
P: AsRef<Path>,
pub fn read_link<P>(&self, path: P) -> Result<PathBuf, Error> where
P: AsRef<Path>,
Reads a symbolic link, returning the file that the link points to.
This corresponds to std::fs::read_link
, but only accesses paths
relative to self
.
pub fn read_to_string<P>(&self, path: P) -> Result<String, Error> where
P: AsRef<Path>,
pub fn read_to_string<P>(&self, path: P) -> Result<String, Error> where
P: AsRef<Path>,
Read the entire contents of a file into a string.
This corresponds to std::fs::read_to_string
, but only accesses paths
relative to self
.
pub fn remove_dir<P>(&self, path: P) -> Result<(), Error> where
P: AsRef<Path>,
pub fn remove_dir<P>(&self, path: P) -> Result<(), Error> where
P: AsRef<Path>,
Removes an empty directory.
This corresponds to std::fs::remove_dir
, but only accesses paths
relative to self
.
pub fn remove_dir_all<P>(&self, path: P) -> Result<(), Error> where
P: AsRef<Path>,
pub fn remove_dir_all<P>(&self, path: P) -> Result<(), Error> where
P: AsRef<Path>,
Removes a directory at this path, after removing all its contents. Use carefully!
This corresponds to std::fs::remove_dir_all
, but only accesses paths
relative to self
.
pub fn remove_open_dir(self) -> Result<(), Error>
pub fn remove_open_dir(self) -> Result<(), Error>
Remove the directory referenced by self
and consume self
.
Note that even though this implementation works in terms of handles as much as possible, removal is not guaranteed to be atomic with respect to a concurrent rename of the directory.
pub fn remove_open_dir_all(self) -> Result<(), Error>
pub fn remove_open_dir_all(self) -> Result<(), Error>
Removes the directory referenced by self
, after removing all its contents, and
consume self
. Use carefully!
Note that even though this implementation works in terms of handles as much as possible, removal is not guaranteed to be atomic with respect to a concurrent rename of the directory.
pub fn remove_file<P>(&self, path: P) -> Result<(), Error> where
P: AsRef<Path>,
pub fn remove_file<P>(&self, path: P) -> Result<(), Error> where
P: AsRef<Path>,
Removes a file from a filesystem.
This corresponds to std::fs::remove_file
, but only accesses paths
relative to self
.
pub fn rename<P, Q>(&self, from: P, to_dir: &Dir, to: Q) -> Result<(), Error> where
P: AsRef<Path>,
Q: AsRef<Path>,
pub fn rename<P, Q>(&self, from: P, to_dir: &Dir, to: Q) -> Result<(), Error> where
P: AsRef<Path>,
Q: AsRef<Path>,
Rename a file or directory to a new name, replacing the original file if to already exists.
This corresponds to std::fs::rename
, but only accesses paths
relative to self
.
pub fn set_permissions<P>(
&self,
path: P,
perm: Permissions
) -> Result<(), Error> where
P: AsRef<Path>,
pub fn set_permissions<P>(
&self,
path: P,
perm: Permissions
) -> Result<(), Error> where
P: AsRef<Path>,
Changes the permissions found on a file or a directory.
This corresponds to std::fs::set_permissions
, but only accesses paths
relative to self
. Also, on some platforms, this function may fail if the
file or directory cannot be opened for reading or writing first.
pub fn symlink_metadata<P>(&self, path: P) -> Result<Metadata, Error> where
P: AsRef<Path>,
pub fn symlink_metadata<P>(&self, path: P) -> Result<Metadata, Error> where
P: AsRef<Path>,
Query the metadata about a file without following symlinks.
This corresponds to std::fs::symlink_metadata
, but only accesses paths
relative to self
.
pub fn write<P, C>(&self, path: P, contents: C) -> Result<(), Error> where
C: AsRef<[u8]>,
P: AsRef<Path>,
pub fn write<P, C>(&self, path: P, contents: C) -> Result<(), Error> where
C: AsRef<[u8]>,
P: AsRef<Path>,
Write a slice as the entire contents of a file.
This corresponds to std::fs::write
, but only accesses paths
relative to self
.
pub fn symlink<P, Q>(&self, src: P, dst: Q) -> Result<(), Error> where
P: AsRef<Path>,
Q: AsRef<Path>,
pub fn symlink<P, Q>(&self, src: P, dst: Q) -> Result<(), Error> where
P: AsRef<Path>,
Q: AsRef<Path>,
Creates a new symbolic link on a filesystem.
This corresponds to std::os::unix::fs::symlink
, but only accesses paths
relative to self
.
pub fn bind_unix_listener<P>(&self, path: P) -> Result<UnixListener, Error> where
P: AsRef<Path>,
pub fn bind_unix_listener<P>(&self, path: P) -> Result<UnixListener, Error> where
P: AsRef<Path>,
Creates a new UnixListener
bound to the specified socket.
This corresponds to std::os::unix::net::UnixListener::bind
, but only
accesses paths relative to self
.
XXX: This function is not yet implemented.
pub fn connect_unix_stream<P>(&self, path: P) -> Result<UnixStream, Error> where
P: AsRef<Path>,
pub fn connect_unix_stream<P>(&self, path: P) -> Result<UnixStream, Error> where
P: AsRef<Path>,
Connects to the socket named by path.
This corresponds to std::os::unix::net::UnixStream::connect
, but only
accesses paths relative to self
.
XXX: This function is not yet implemented.
pub fn bind_unix_datagram<P>(&self, path: P) -> Result<UnixDatagram, Error> where
P: AsRef<Path>,
pub fn bind_unix_datagram<P>(&self, path: P) -> Result<UnixDatagram, Error> where
P: AsRef<Path>,
Creates a Unix datagram socket bound to the given path.
This corresponds to std::os::unix::net::UnixDatagram::bind
, but only
accesses paths relative to self
.
XXX: This function is not yet implemented.
pub fn connect_unix_datagram<P>(
&self,
_unix_datagram: &UnixDatagram,
path: P
) -> Result<(), Error> where
P: AsRef<Path>,
pub fn connect_unix_datagram<P>(
&self,
_unix_datagram: &UnixDatagram,
path: P
) -> Result<(), Error> where
P: AsRef<Path>,
Connects the socket to the specified address.
This corresponds to std::os::unix::net::UnixDatagram::connect
, but only
accesses paths relative to self
.
XXX: This function is not yet implemented.
pub fn send_to_unix_datagram_addr<P>(
&self,
_unix_datagram: &UnixDatagram,
buf: &[u8],
path: P
) -> Result<usize, Error> where
P: AsRef<Path>,
pub fn send_to_unix_datagram_addr<P>(
&self,
_unix_datagram: &UnixDatagram,
buf: &[u8],
path: P
) -> Result<usize, Error> where
P: AsRef<Path>,
Sends data on the socket to the specified address.
This corresponds to std::os::unix::net::UnixDatagram::send_to
, but only
accesses paths relative to self
.
XXX: This function is not yet implemented.
pub fn try_clone(&self) -> Result<Dir, Error>
pub fn try_clone(&self) -> Result<Dir, Error>
Creates a new Dir
instance that shares the same underlying file handle as the existing
Dir
instance.
pub fn exists<P>(&self, path: P) -> bool where
P: AsRef<Path>,
pub fn exists<P>(&self, path: P) -> bool where
P: AsRef<Path>,
Returns true
if the path points at an existing entity.
This corresponds to std::path::Path::exists
, but only
accesses paths relative to self
.
pub fn is_file<P>(&self, path: P) -> bool where
P: AsRef<Path>,
pub fn is_file<P>(&self, path: P) -> bool where
P: AsRef<Path>,
Returns true
if the path exists on disk and is pointing at a regular file.
This corresponds to std::path::Path::is_file
, but only
accesses paths relative to self
.
pub fn is_dir<P>(&self, path: P) -> bool where
P: AsRef<Path>,
pub fn is_dir<P>(&self, path: P) -> bool where
P: AsRef<Path>,
Checks if path
is a directory.
This is similar to std::path::Path::is_dir
in that it checks if path
relative to
Dir
is a directory. This function will traverse symbolic links to query information about
the destination file. In case of broken symbolic links, this will return false
.
pub unsafe fn open_ambient_dir<P>(path: P) -> Result<Dir, Error> where
P: AsRef<Path>,
pub unsafe fn open_ambient_dir<P>(path: P) -> Result<Dir, Error> where
P: AsRef<Path>,
Constructs a new instance of Self
by opening the given path as a
directory using the host process’ ambient authority.
Safety
This function is not sandboxed and may access any path that the host process has access to.
Trait Implementations
impl DirExt for Dir
impl DirExt for Dir
pub fn set_atime<P>(&self, path: P, atime: SystemTimeSpec) -> Result<(), Error> where
P: AsRef<Path>,
pub fn set_atime<P>(&self, path: P, atime: SystemTimeSpec) -> Result<(), Error> where
P: AsRef<Path>,
Set the last access time for a file on a filesystem. Read more
pub fn set_mtime<P>(&self, path: P, mtime: SystemTimeSpec) -> Result<(), Error> where
P: AsRef<Path>,
pub fn set_mtime<P>(&self, path: P, mtime: SystemTimeSpec) -> Result<(), Error> where
P: AsRef<Path>,
Set the last modification time for a file on a filesystem. Read more
pub fn set_times<P>(
&self,
path: P,
atime: Option<SystemTimeSpec>,
mtime: Option<SystemTimeSpec>
) -> Result<(), Error> where
P: AsRef<Path>,
pub fn set_times<P>(
&self,
path: P,
atime: Option<SystemTimeSpec>,
mtime: Option<SystemTimeSpec>
) -> Result<(), Error> where
P: AsRef<Path>,
Set the last access and modification times for a file on a filesystem. Read more
pub fn set_symlink_times<P>(
&self,
path: P,
atime: Option<SystemTimeSpec>,
mtime: Option<SystemTimeSpec>
) -> Result<(), Error> where
P: AsRef<Path>,
pub fn set_symlink_times<P>(
&self,
path: P,
atime: Option<SystemTimeSpec>,
mtime: Option<SystemTimeSpec>
) -> Result<(), Error> where
P: AsRef<Path>,
Set the last access and modification times for a file on a filesystem. This function does not follow symlink. Read more
pub fn symlink<P, Q>(&self, src: P, dst: Q) -> Result<(), Error> where
P: AsRef<Path>,
Q: AsRef<Path>,
pub fn symlink<P, Q>(&self, src: P, dst: Q) -> Result<(), Error> where
P: AsRef<Path>,
Q: AsRef<Path>,
Creates a new symbolic link on a filesystem. Read more
pub fn symlink_file<P, Q>(&self, src: P, dst: Q) -> Result<(), Error> where
P: AsRef<Path>,
Q: AsRef<Path>,
pub fn symlink_file<P, Q>(&self, src: P, dst: Q) -> Result<(), Error> where
P: AsRef<Path>,
Q: AsRef<Path>,
Creates a new file symbolic link on a filesystem. Read more
pub fn symlink_dir<P, Q>(&self, src: P, dst: Q) -> Result<(), Error> where
P: AsRef<Path>,
Q: AsRef<Path>,
pub fn symlink_dir<P, Q>(&self, src: P, dst: Q) -> Result<(), Error> where
P: AsRef<Path>,
Q: AsRef<Path>,
Creates a new directory symbolic link on a filesystem. Read more
impl FromRawFd for Dir
impl FromRawFd for Dir
pub unsafe fn from_raw_fd(fd: i32) -> Dir
pub unsafe fn from_raw_fd(fd: i32) -> Dir
Constructs a new instance of Self
from the given raw file
descriptor. Read more
impl IntoRawFd for Dir
impl IntoRawFd for Dir
pub fn into_raw_fd(self) -> i32
pub fn into_raw_fd(self) -> i32
Consumes this object, returning the raw underlying file descriptor. Read more
impl OwnsRaw for Dir
Auto Trait Implementations
impl RefUnwindSafe for Dir
impl Send for Dir
impl Sync for Dir
impl Unpin for Dir
impl UnwindSafe for Dir
Blanket Implementations
impl<T> AsUnsafeFile for T where
T: AsRawFd + OwnsRaw,
impl<T> AsUnsafeFile for T where
T: AsRawFd + OwnsRaw,
pub fn as_unsafe_file(&self) -> UnsafeFile
pub fn as_unsafe_file(&self) -> UnsafeFile
Return the contained unsafe file.
fn as_file_view(&self) -> View<'_, File>
fn as_file_view(&self) -> View<'_, File>
Utility for returning a value which dereferences to a &File
or
&mut File
. Read more
unsafe fn as_unscoped_file_view(&self) -> View<'static, File>
unsafe fn as_unscoped_file_view(&self) -> View<'static, File>
Like as_file_view
, but returns a value which is not explicitly tied
to the lifetime of self
. Read more
impl<T> AsUnsafeHandle for T where
T: AsRawFd + OwnsRaw,
impl<T> AsUnsafeHandle for T where
T: AsRawFd + OwnsRaw,
pub fn as_unsafe_handle(&self) -> UnsafeHandle
pub fn as_unsafe_handle(&self) -> UnsafeHandle
Return the contained unsafe handle.
impl<T> AsUnsafeSocket for T where
T: AsRawFd + OwnsRaw,
impl<T> AsUnsafeSocket for T where
T: AsRawFd + OwnsRaw,
pub fn as_unsafe_socket(&self) -> UnsafeSocket
pub fn as_unsafe_socket(&self) -> UnsafeSocket
Return the contained unsafe socket.
fn as_tcp_stream_view(&self) -> View<'_, TcpStream>
fn as_tcp_stream_view(&self) -> View<'_, TcpStream>
Utility for returning a value which dereferences to a &TcpStream
or
&mut TcpStream
. Read more
unsafe fn as_unscoped_tcp_stream_view(&self) -> View<'static, TcpStream>
unsafe fn as_unscoped_tcp_stream_view(&self) -> View<'static, TcpStream>
Like as_tcp_stream_view
, but returns a value which is not explicitly
tied to the lifetime of self
. Read more
fn as_tcp_listener_view(&self) -> View<'_, TcpListener>
fn as_tcp_listener_view(&self) -> View<'_, TcpListener>
Utility for returning a value which dereferences to a &TcpListener
or
&mut TcpListener
. Read more
unsafe fn as_unscoped_tcp_listener_view(&self) -> View<'static, TcpListener>
unsafe fn as_unscoped_tcp_listener_view(&self) -> View<'static, TcpListener>
Like as_tcp_listener_view
, but returns a value which is not
explicitly tied to the lifetime of self
. Read more
fn as_udp_socket_view(&self) -> View<'_, UdpSocket>
fn as_udp_socket_view(&self) -> View<'_, UdpSocket>
Utility for returning a value which dereferences to a &UdpSocket
or
&mut UdpSocket
. Read more
unsafe fn as_unscoped_udp_socket_view(&self) -> View<'static, UdpSocket>
unsafe fn as_unscoped_udp_socket_view(&self) -> View<'static, UdpSocket>
Like as_udp_socket_view
, but returns a value which is not explicitly
tied to the lifetime of self
. Read more
fn as_unix_stream_view(&self) -> View<'_, UnixStream>
fn as_unix_stream_view(&self) -> View<'_, UnixStream>
Utility for returning a value which dereferences to a &UnixStream
or
&mut UnixStream
. Read more
unsafe fn as_unscoped_unix_stream_view(&self) -> View<'static, UnixStream>
unsafe fn as_unscoped_unix_stream_view(&self) -> View<'static, UnixStream>
Like as_unix_stream_view
, but returns a value which is not explicitly
tied to the lifetime of self
. Read more
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]pub fn borrow_mut(&mut self) -> &mut T
[src]
pub fn borrow_mut(&mut self) -> &mut T
[src]Mutably borrows from an owned value. Read more
impl<T> FileIoExt for T where
T: AsUnsafeFile,
impl<T> FileIoExt for T where
T: AsUnsafeFile,
pub fn advise(&self, offset: u64, len: u64, advice: Advice) -> Result<(), Error>
pub fn advise(&self, offset: u64, len: u64, advice: Advice) -> Result<(), Error>
Announce the expected access pattern of the data at the given offset.
pub fn allocate(&self, offset: u64, len: u64) -> Result<(), Error>
pub fn allocate(&self, offset: u64, len: u64) -> Result<(), Error>
Allocate space in the file, increasing the file size as needed, and ensuring that there are no holes under the given range. Read more
pub fn read(&self, buf: &mut [u8]) -> Result<usize, Error>
pub fn read(&self, buf: &mut [u8]) -> Result<usize, Error>
Pull some bytes from this source into the specified buffer, returning how many bytes were read. Read more
pub fn read_exact(&self, buf: &mut [u8]) -> Result<(), Error>
pub fn read_exact(&self, buf: &mut [u8]) -> Result<(), Error>
Read the exact number of bytes required to fill buf
. Read more
pub fn read_at(&self, buf: &mut [u8], offset: u64) -> Result<usize, Error>
pub fn read_at(&self, buf: &mut [u8], offset: u64) -> Result<usize, Error>
Reads a number of bytes starting from a given offset. Read more
pub fn read_exact_at(&self, buf: &mut [u8], offset: u64) -> Result<(), Error>
pub fn read_exact_at(&self, buf: &mut [u8], offset: u64) -> Result<(), Error>
Reads the exact number of byte required to fill buf from the given offset. Read more
pub fn read_vectored(&self, bufs: &mut [IoSliceMut<'_>]) -> Result<usize, Error>
pub fn read_vectored(&self, bufs: &mut [IoSliceMut<'_>]) -> Result<usize, Error>
Like read
, except that it reads into a slice of buffers. Read more
pub fn read_vectored_at(
&self,
bufs: &mut [IoSliceMut<'_>],
offset: u64
) -> Result<usize, Error>
pub fn read_vectored_at(
&self,
bufs: &mut [IoSliceMut<'_>],
offset: u64
) -> Result<usize, Error>
Is to read_vectored
what read_at
is to read
.
pub fn is_read_vectored_at(&self) -> bool
pub fn is_read_vectored_at(&self) -> bool
Determines if this Read
er has an efficient read_vectored_at
implementation.
pub fn read_to_end(&self, buf: &mut Vec<u8, Global>) -> Result<usize, Error>
pub fn read_to_end(&self, buf: &mut Vec<u8, Global>) -> Result<usize, Error>
Read all bytes until EOF in this source, placing them into buf
. Read more
pub fn read_to_end_at(
&self,
buf: &mut Vec<u8, Global>,
offset: u64
) -> Result<usize, Error>
pub fn read_to_end_at(
&self,
buf: &mut Vec<u8, Global>,
offset: u64
) -> Result<usize, Error>
Read all bytes, starting at offset
, until EOF in this source, placing
them into buf
. Read more
pub fn read_to_string(&self, buf: &mut String) -> Result<usize, Error>
pub fn read_to_string(&self, buf: &mut String) -> Result<usize, Error>
Read all bytes until EOF in this source, appending them to buf
. Read more
pub fn read_to_string_at(
&self,
buf: &mut String,
offset: u64
) -> Result<usize, Error>
pub fn read_to_string_at(
&self,
buf: &mut String,
offset: u64
) -> Result<usize, Error>
Read all bytes, starting at offset
, until EOF in this source,
appending them to buf
. Read more
pub fn peek(&self, buf: &mut [u8]) -> Result<usize, Error>
pub fn peek(&self, buf: &mut [u8]) -> Result<usize, Error>
Read bytes from the current position without advancing the current position. Read more
pub fn write(&self, buf: &[u8]) -> Result<usize, Error>
pub fn write(&self, buf: &[u8]) -> Result<usize, Error>
Write a buffer into this writer, returning how many bytes were written. Read more
pub fn write_all(&self, buf: &[u8]) -> Result<(), Error>
pub fn write_all(&self, buf: &[u8]) -> Result<(), Error>
Attempts to write an entire buffer into this writer. Read more
pub fn write_at(&self, buf: &[u8], offset: u64) -> Result<usize, Error>
pub fn write_at(&self, buf: &[u8], offset: u64) -> Result<usize, Error>
Writes a number of bytes starting from a given offset. Read more
pub fn write_all_at(&self, buf: &[u8], offset: u64) -> Result<(), Error>
pub fn write_all_at(&self, buf: &[u8], offset: u64) -> Result<(), Error>
Attempts to write an entire buffer starting from a given offset. Read more
pub fn write_vectored(&self, bufs: &[IoSlice<'_>]) -> Result<usize, Error>
pub fn write_vectored(&self, bufs: &[IoSlice<'_>]) -> Result<usize, Error>
Like write
, except that it writes from a slice of buffers. Read more
pub fn write_vectored_at(
&self,
bufs: &[IoSlice<'_>],
offset: u64
) -> Result<usize, Error>
pub fn write_vectored_at(
&self,
bufs: &[IoSlice<'_>],
offset: u64
) -> Result<usize, Error>
Is to write_vectored
what write_at
is to write
.
pub fn is_write_vectored_at(&self) -> bool
pub fn is_write_vectored_at(&self) -> bool
Determines if this Write
r has an efficient write_vectored_at
implementation.
pub fn flush(&self) -> Result<(), Error>
pub fn flush(&self) -> Result<(), Error>
Flush this output stream, ensuring that all intermediately buffered contents reach their destination. Read more
pub fn write_fmt(&self, fmt: Arguments<'_>) -> Result<(), Error>
pub fn write_fmt(&self, fmt: Arguments<'_>) -> Result<(), Error>
Writes a formatted string into this writer, returning any error encountered. Read more
pub fn seek(&self, pos: SeekFrom) -> Result<u64, Error>
pub fn seek(&self, pos: SeekFrom) -> Result<u64, Error>
Seek to an offset, in bytes, in a stream. Read more
pub fn stream_position(&self) -> Result<u64, Error>
pub fn stream_position(&self) -> Result<u64, Error>
Returns the current seek position from the start of the stream. Read more
fn read_exact_vectored(&self, bufs: &mut [IoSliceMut<'_>]) -> Result<(), Error>
fn read_exact_vectored(&self, bufs: &mut [IoSliceMut<'_>]) -> Result<(), Error>
Is to read_vectored
what read_exact
is to read
.
fn read_exact_vectored_at(
&self,
bufs: &mut [IoSliceMut<'_>],
offset: u64
) -> Result<(), Error>
fn read_exact_vectored_at(
&self,
bufs: &mut [IoSliceMut<'_>],
offset: u64
) -> Result<(), Error>
Is to read_exact_vectored
what read_exact_at
is to read_exact
.
impl<T> FromUnsafeFile for T where
T: FromRawFd + OwnsRaw,
impl<T> FromUnsafeFile for T where
T: FromRawFd + OwnsRaw,
pub unsafe fn from_unsafe_file(unsafe_file: UnsafeFile) -> T
pub unsafe fn from_unsafe_file(unsafe_file: UnsafeFile) -> T
Convert an unsafe file into a Self
. Read more
fn from_filelike<Filelike>(filelike: Filelike) -> Self where
Filelike: IntoUnsafeFile,
fn from_filelike<Filelike>(filelike: Filelike) -> Self where
Filelike: IntoUnsafeFile,
Convert from a type which implements IntoUnsafeFile
into a type that
implements FromUnsafeFile
. Read more
impl<T> FromUnsafeSocket for T where
T: FromRawFd + OwnsRaw,
impl<T> FromUnsafeSocket for T where
T: FromRawFd + OwnsRaw,
pub unsafe fn from_unsafe_socket(unsafe_socket: UnsafeSocket) -> T
pub unsafe fn from_unsafe_socket(unsafe_socket: UnsafeSocket) -> T
Convert an unsafe socket into a Self
. Read more
fn from_socketlike<Socketlike>(socketlike: Socketlike) -> Self where
Socketlike: IntoUnsafeSocket,
fn from_socketlike<Socketlike>(socketlike: Socketlike) -> Self where
Socketlike: IntoUnsafeSocket,
Convert from a type which implements IntoUnsafeSocket
into a type
that implements FromUnsafeSocket
. Read more
impl<T> GetSetFdFlags for T where
T: AsUnsafeFile,
impl<T> GetSetFdFlags for T where
T: AsUnsafeFile,
pub fn get_fd_flags(&self) -> Result<FdFlags, Error>
pub fn get_fd_flags(&self) -> Result<FdFlags, Error>
Query the “status” flags for the self
file descriptor.
pub fn set_fd_flags(&mut self, fd_flags: FdFlags) -> Result<(), Error>
pub fn set_fd_flags(&mut self, fd_flags: FdFlags) -> Result<(), Error>
Set the “status” flags for the self
file descriptor. On some
platforms, this may close the file descriptor and produce a new
one. Read more
impl<T> Instrument for T
[src]
impl<T> Instrument for T
[src]fn instrument(self, span: Span) -> Instrumented<Self>
[src]
fn instrument(self, span: Span) -> Instrumented<Self>
[src]Instruments this type with the provided Span
, returning an
Instrumented
wrapper. Read more
fn in_current_span(self) -> Instrumented<Self>
[src]
fn in_current_span(self) -> Instrumented<Self>
[src]impl<T> IntoUnsafeFile for T where
T: IntoRawFd + OwnsRaw,
impl<T> IntoUnsafeFile for T where
T: IntoRawFd + OwnsRaw,
pub fn into_unsafe_file(self) -> UnsafeFile
pub fn into_unsafe_file(self) -> UnsafeFile
Convert self
into an unsafe file.
impl<T> IntoUnsafeHandle for T where
T: IntoRawFd + OwnsRaw,
impl<T> IntoUnsafeHandle for T where
T: IntoRawFd + OwnsRaw,
pub fn into_unsafe_handle(self) -> UnsafeHandle
pub fn into_unsafe_handle(self) -> UnsafeHandle
Convert self
into an unsafe handle.
impl<T> IntoUnsafeSocket for T where
T: IntoRawFd + OwnsRaw,
impl<T> IntoUnsafeSocket for T where
T: IntoRawFd + OwnsRaw,
pub fn into_unsafe_socket(self) -> UnsafeSocket
pub fn into_unsafe_socket(self) -> UnsafeSocket
Convert self
into an unsafe socket.
impl<T> IsTerminal for T where
T: AsUnsafeHandle,
impl<T> IsTerminal for T where
T: AsUnsafeHandle,
pub fn is_terminal(&self) -> bool
pub fn is_terminal(&self) -> bool
Test whether this output stream is attached to a terminal. Read more
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,