[−][src]Struct cap_async_std::fs::Dir
A reference to an open directory on a filesystem.
TODO: Add OFlag::CLOEXEC to yanix and use it in open_file
and friends.
TODO: Windows support.
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
[src]
pub fn from_std_file(std_file: File) -> Self
[src]
Constructs a new instance of Self
from the given async_std::fs::File
.
pub fn open_file<P: AsRef<Path>>(&self, path: P) -> Result<File>
[src]
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_file_with<P: AsRef<Path>>(
&self,
path: P,
options: &OpenOptions
) -> Result<File>
[src]
&self,
path: P,
options: &OpenOptions
) -> Result<File>
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 functions relative to self
.
pub fn open_dir<P: AsRef<Path>>(&self, path: P) -> Result<Self>
[src]
Attempts to open a directory.
pub fn create_dir<P: AsRef<Path>>(&self, path: P) -> Result<()>
[src]
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: AsRef<Path>>(&self, path: P) -> Result<()>
[src]
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_file<P: AsRef<Path>>(&self, path: P) -> Result<File>
[src]
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: AsRef<Path>>(&self, path: P) -> Result<PathBuf>
[src]
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: AsRef<Path>, Q: AsRef<Path>>(
&self,
from: P,
to: Q
) -> Result<u64>
[src]
&self,
from: P,
to: Q
) -> Result<u64>
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: AsRef<Path>, Q: AsRef<Path>>(
&self,
src: P,
dst: Q
) -> Result<()>
[src]
&self,
src: P,
dst: Q
) -> Result<()>
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: AsRef<Path>>(&self, path: P) -> Result<Metadata>
[src]
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 read_dir<P: AsRef<Path>>(&self, path: P) -> Result<ReadDir>
[src]
Returns an iterator over the entries within a directory.
This corresponds to std::fs::read_dir
, but only accesses paths
relative to self
.
pub async fn read_file<'_, P: AsRef<Path>>(&'_ self, path: P) -> Result<Vec<u8>>
[src]
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: AsRef<Path>>(&self, path: P) -> Result<PathBuf>
[src]
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: AsRef<Path>>(&self, path: P) -> Result<String>
[src]
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: AsRef<Path>>(&self, path: P) -> Result<()>
[src]
Removes an existing, empty directory.
This corresponds to std::fs::remove_dir
, but only accesses paths
relative to self
.
pub fn remove_dir_all<P: AsRef<Path>>(&self, path: P) -> Result<()>
[src]
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_file<P: AsRef<Path>>(&self, path: P) -> Result<()>
[src]
Removes a file from a filesystem.
This corresponds to std::fs::remove_file
, but only accesses paths
relative to self
.
pub fn rename<P: AsRef<Path>, Q: AsRef<Path>>(
&self,
from: P,
to: Q
) -> Result<()>
[src]
&self,
from: P,
to: Q
) -> Result<()>
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: AsRef<Path>>(
&self,
path: P,
perm: Permissions
) -> Result<()>
[src]
&self,
path: P,
perm: Permissions
) -> Result<()>
Changes the permissions found on a file or a directory.
This corresponds to std::fs::set_permissions
, but only accesses paths
relative to self
.
pub fn symlink_metadata<P: AsRef<Path>>(&self, path: P) -> Result<Metadata>
[src]
Query the metadata about a file without following symlinks.
This corresponds to std::fs::symlink_metadata
, but only accesses paths
relative to self
.
pub async fn write_file<'_, P: AsRef<Path>, C: AsRef<[u8]>>(
&'_ self,
path: P,
contents: C
) -> Result<()>
[src]
&'_ self,
path: P,
contents: C
) -> Result<()>
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 create_with_dir_builder<P: AsRef<Path>>(
&self,
dir_builder: &DirBuilder,
path: P
) -> Result<()>
[src]
&self,
dir_builder: &DirBuilder,
path: P
) -> Result<()>
Creates the specified directory with the options configured in this builder.
This corresponds to std::fs::DirBuilder::create
.
pub fn symlink<P: AsRef<Path>, Q: AsRef<Path>>(
&self,
src: P,
dst: Q
) -> Result<()>
[src]
&self,
src: P,
dst: Q
) -> Result<()>
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: AsRef<Path>>(
&self,
path: P
) -> Result<UnixListener>
[src]
&self,
path: P
) -> Result<UnixListener>
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
.
pub fn connect_unix_stream<P: AsRef<Path>>(&self, path: P) -> Result<UnixStream>
[src]
Connects to the socket named by path.
This corresponds to std::os::unix::net::UnixStream::connect
, but only
accesses paths relative to self
.
pub fn bind_unix_datagram<P: AsRef<Path>>(
&self,
path: P
) -> Result<UnixDatagram>
[src]
&self,
path: P
) -> Result<UnixDatagram>
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
.
pub fn connect_unix_datagram<P: AsRef<Path>>(
&self,
unix_datagram: &UnixDatagram,
path: P
) -> Result<()>
[src]
&self,
unix_datagram: &UnixDatagram,
path: P
) -> Result<()>
Connects the socket to the specified address.
This corresponds to std::os::unix::net::UnixDatagram::connect
, but only
accesses paths relative to self
.
pub fn send_to_unix_datagram_addr<P: AsRef<Path>>(
&self,
unix_datagram: &UnixDatagram,
buf: &[u8],
path: P
) -> Result<usize>
[src]
&self,
unix_datagram: &UnixDatagram,
buf: &[u8],
path: P
) -> Result<usize>
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
.
Trait Implementations
impl AsRawFd for Dir
[src]
impl FromRawFd for Dir
[src]
unsafe fn from_raw_fd(fd: RawFd) -> Self
[src]
impl IntoRawFd for Dir
[src]
fn into_raw_fd(self) -> RawFd
[src]
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> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,