pub struct File { /* private fields */ }
Expand description
A reference to an open file on a filesystem.
This corresponds to async_std::fs::File
.
This File
has no open
or create
methods. To open or create a file,
first obtain a Dir
containing the path, and then call Dir::open
or
Dir::create
.
Implementations§
Source§impl File
impl File
Sourcepub fn from_std(std: File) -> Self
pub fn from_std(std: File) -> Self
Constructs a new instance of Self
from the given
async_std::fs::File
.
This grants access the resources the async_std::fs::File
instance
already has access to.
Sourcepub async fn sync_all(&self) -> Result<()>
pub async fn sync_all(&self) -> Result<()>
Attempts to sync all OS-internal metadata to disk.
This corresponds to async_std::fs::File::sync_all
.
Sourcepub async fn sync_data(&self) -> Result<()>
pub async fn sync_data(&self) -> Result<()>
This function is similar to sync_all
, except that it may not
synchronize file metadata to a filesystem.
This corresponds to async_std::fs::File::sync_data
.
Sourcepub async fn set_len(&self, size: u64) -> Result<()>
pub async fn set_len(&self, size: u64) -> Result<()>
Truncates or extends the underlying file, updating the size of this file to become size.
This corresponds to async_std::fs::File::set_len
.
Sourcepub async fn metadata(&self) -> Result<Metadata>
pub async fn metadata(&self) -> Result<Metadata>
Queries metadata about the underlying file.
This corresponds to async_std::fs::File::metadata
.
Sourcepub async fn set_permissions(&self, perm: Permissions) -> Result<()>
pub async fn set_permissions(&self, perm: Permissions) -> Result<()>
Changes the permissions on the underlying file.
This corresponds to async_std::fs::File::set_permissions
.
Sourcepub async fn open_ambient<P: AsRef<Path>>(
path: P,
ambient_authority: AmbientAuthority,
) -> Result<Self>
pub async fn open_ambient<P: AsRef<Path>>( path: P, ambient_authority: AmbientAuthority, ) -> Result<Self>
Constructs a new instance of Self
in read-only mode by opening the
given path as a file using the host process’ ambient authority.
§Ambient Authority
This function is not sandboxed and may access any path that the host process has access to.
Sourcepub async fn create_ambient<P: AsRef<Path>>(
path: P,
ambient_authority: AmbientAuthority,
) -> Result<Self>
pub async fn create_ambient<P: AsRef<Path>>( path: P, ambient_authority: AmbientAuthority, ) -> Result<Self>
Constructs a new instance of Self
in write-only mode by opening,
creating or truncating, the given path as a file using the host
process’ ambient authority.
§Ambient Authority
This function is not sandboxed and may access any path that the host process has access to.
Sourcepub async fn open_ambient_with<P: AsRef<Path>>(
path: P,
options: &OpenOptions,
ambient_authority: AmbientAuthority,
) -> Result<Self>
pub async fn open_ambient_with<P: AsRef<Path>>( path: P, options: &OpenOptions, ambient_authority: AmbientAuthority, ) -> Result<Self>
Constructs a new instance of Self
with the options specified by
options
by opening the given path as a file using the host process’
ambient authority.
§Ambient Authority
This function is not sandboxed and may access any path that the host process has access to.
Sourcepub fn options() -> OpenOptions
pub fn options() -> OpenOptions
Returns a new OpenOptions
object.
This corresponds to [async_std::fs::File::options
].
Trait Implementations§
Source§impl AsHandle for File
impl AsHandle for File
Source§fn as_handle(&self) -> BorrowedHandle<'_>
fn as_handle(&self) -> BorrowedHandle<'_>
Source§impl AsHandleOrSocket for File
impl AsHandleOrSocket for File
Source§fn as_handle_or_socket(&self) -> BorrowedHandleOrSocket<'_>
fn as_handle_or_socket(&self) -> BorrowedHandleOrSocket<'_>
AsHandle::as_handle
and AsSocket::as_socket
but can return either type.Source§impl AsRawHandle for File
impl AsRawHandle for File
Source§fn as_raw_handle(&self) -> RawHandle
fn as_raw_handle(&self) -> RawHandle
Source§impl AsRawHandleOrSocket for File
impl AsRawHandleOrSocket for File
Source§fn as_raw_handle_or_socket(&self) -> RawHandleOrSocket
fn as_raw_handle_or_socket(&self) -> RawHandleOrSocket
AsRawHandle::as_raw_handle
and AsRawSocket::as_raw_socket
but can return either type.Source§impl From<File> for OwnedHandle
impl From<File> for OwnedHandle
Source§fn from(file: File) -> OwnedHandle
fn from(file: File) -> OwnedHandle
Source§impl From<File> for OwnedHandleOrSocket
impl From<File> for OwnedHandleOrSocket
Source§impl From<OwnedHandle> for File
impl From<OwnedHandle> for File
Source§fn from(handle: OwnedHandle) -> Self
fn from(handle: OwnedHandle) -> Self
Source§impl FromRawHandle for File
impl FromRawHandle for File
Source§unsafe fn from_raw_handle(handle: RawHandle) -> Self
unsafe fn from_raw_handle(handle: RawHandle) -> Self
Source§impl IntoRawHandle for File
impl IntoRawHandle for File
Source§fn into_raw_handle(self) -> RawHandle
fn into_raw_handle(self) -> RawHandle
Source§impl IntoRawHandleOrSocket for File
impl IntoRawHandleOrSocket for File
Source§fn into_raw_handle_or_socket(self) -> RawHandleOrSocket
fn into_raw_handle_or_socket(self) -> RawHandleOrSocket
IntoRawHandle::into_raw_handle
and
IntoRawSocket::into_raw_socket
but can return either type.Source§impl AsyncRead for &File
impl AsyncRead for &File
Source§impl AsyncRead for File
impl AsyncRead for File
Source§impl AsyncWrite for &File
impl AsyncWrite for &File
Source§fn poll_write(
self: Pin<&mut Self>,
cx: &mut Context<'_>,
buf: &[u8],
) -> Poll<Result<usize>>
fn poll_write( self: Pin<&mut Self>, cx: &mut Context<'_>, buf: &[u8], ) -> Poll<Result<usize>>
buf
into the object. Read moreSource§fn poll_flush(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Result<()>>
fn poll_flush(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Result<()>>
Source§impl AsyncWrite for File
impl AsyncWrite for File
Source§fn poll_write(
self: Pin<&mut Self>,
cx: &mut Context<'_>,
buf: &[u8],
) -> Poll<Result<usize>>
fn poll_write( self: Pin<&mut Self>, cx: &mut Context<'_>, buf: &[u8], ) -> Poll<Result<usize>>
buf
into the object. Read moreSource§fn poll_flush(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Result<()>>
fn poll_flush(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Result<()>>
impl FilelikeViewType for File
Auto Trait Implementations§
impl Freeze for File
impl !RefUnwindSafe for File
impl Send for File
impl Sync for File
impl Unpin for File
impl !UnwindSafe for File
Blanket Implementations§
Source§impl<T> AsFilelike for Twhere
T: AsHandle,
impl<T> AsFilelike for Twhere
T: AsHandle,
Source§fn as_filelike(&self) -> BorrowedHandle<'_>
fn as_filelike(&self) -> BorrowedHandle<'_>
Source§fn as_filelike_view<Target>(&self) -> FilelikeView<'_, Target>where
Target: FilelikeViewType,
fn as_filelike_view<Target>(&self) -> FilelikeView<'_, Target>where
Target: FilelikeViewType,
&Target
. Read moreSource§impl<T> AsGrip for Twhere
T: AsHandleOrSocket,
impl<T> AsGrip for Twhere
T: AsHandleOrSocket,
Source§fn as_grip(&self) -> BorrowedHandleOrSocket<'_>
fn as_grip(&self) -> BorrowedHandleOrSocket<'_>
Source§impl<T> AsRawFilelike for Twhere
T: AsRawHandle,
impl<T> AsRawFilelike for Twhere
T: AsRawHandle,
Source§fn as_raw_filelike(&self) -> *mut c_void
fn as_raw_filelike(&self) -> *mut c_void
Source§impl<T> AsRawGrip for Twhere
T: AsRawHandleOrSocket,
impl<T> AsRawGrip for Twhere
T: AsRawHandleOrSocket,
Source§fn as_raw_grip(&self) -> RawHandleOrSocket
fn as_raw_grip(&self) -> RawHandleOrSocket
Source§impl<T> AsWaitable for T
impl<T> AsWaitable for T
Source§fn as_waitable(&self) -> BorrowedHandle<'_>
fn as_waitable(&self) -> BorrowedHandle<'_>
Source§impl<R> AsyncReadExt for R
impl<R> AsyncReadExt for R
Source§fn read<'a>(&'a mut self, buf: &'a mut [u8]) -> ReadFuture<'a, Self>where
Self: Unpin,
fn read<'a>(&'a mut self, buf: &'a mut [u8]) -> ReadFuture<'a, Self>where
Self: Unpin,
Source§fn read_vectored<'a>(
&'a mut self,
bufs: &'a mut [IoSliceMut<'a>],
) -> ReadVectoredFuture<'a, Self>where
Self: Unpin,
fn read_vectored<'a>(
&'a mut self,
bufs: &'a mut [IoSliceMut<'a>],
) -> ReadVectoredFuture<'a, Self>where
Self: Unpin,
Source§fn read_to_end<'a>(
&'a mut self,
buf: &'a mut Vec<u8>,
) -> ReadToEndFuture<'a, Self>where
Self: Unpin,
fn read_to_end<'a>(
&'a mut self,
buf: &'a mut Vec<u8>,
) -> ReadToEndFuture<'a, Self>where
Self: Unpin,
Source§fn read_to_string<'a>(
&'a mut self,
buf: &'a mut String,
) -> ReadToStringFuture<'a, Self>where
Self: Unpin,
fn read_to_string<'a>(
&'a mut self,
buf: &'a mut String,
) -> ReadToStringFuture<'a, Self>where
Self: Unpin,
Source§fn read_exact<'a>(&'a mut self, buf: &'a mut [u8]) -> ReadExactFuture<'a, Self>where
Self: Unpin,
fn read_exact<'a>(&'a mut self, buf: &'a mut [u8]) -> ReadExactFuture<'a, Self>where
Self: Unpin,
buf
. Read moreSource§fn take(self, limit: u64) -> Take<Self>where
Self: Sized,
fn take(self, limit: u64) -> Take<Self>where
Self: Sized,
limit
bytes from it. Read moreSource§impl<S> AsyncSeekExt for S
impl<S> AsyncSeekExt for S
Source§impl<W> AsyncWriteExt for Wwhere
W: AsyncWrite + ?Sized,
impl<W> AsyncWriteExt for Wwhere
W: AsyncWrite + ?Sized,
Source§fn write<'a>(&'a mut self, buf: &'a [u8]) -> WriteFuture<'a, Self>where
Self: Unpin,
fn write<'a>(&'a mut self, buf: &'a [u8]) -> WriteFuture<'a, Self>where
Self: Unpin,
Source§fn write_vectored<'a>(
&'a mut self,
bufs: &'a [IoSlice<'a>],
) -> WriteVectoredFuture<'a, Self>where
Self: Unpin,
fn write_vectored<'a>(
&'a mut self,
bufs: &'a [IoSlice<'a>],
) -> WriteVectoredFuture<'a, Self>where
Self: Unpin,
Source§fn write_all<'a>(&'a mut self, buf: &'a [u8]) -> WriteAllFuture<'a, Self>where
Self: Unpin,
fn write_all<'a>(&'a mut self, buf: &'a [u8]) -> WriteAllFuture<'a, Self>where
Self: Unpin,
Source§fn flush(&mut self) -> FlushFuture<'_, Self>where
Self: Unpin,
fn flush(&mut self) -> FlushFuture<'_, Self>where
Self: Unpin,
Source§fn boxed_writer<'a>(self) -> Pin<Box<dyn AsyncWrite + Send + 'a>>
fn boxed_writer<'a>(self) -> Pin<Box<dyn AsyncWrite + Send + 'a>>
dyn AsyncWrite + Send + 'a
. Read moreSource§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)Source§impl<T> FromFilelike for Twhere
T: From<OwnedHandle>,
impl<T> FromFilelike for Twhere
T: From<OwnedHandle>,
Source§fn from_filelike(owned: OwnedHandle) -> T
fn from_filelike(owned: OwnedHandle) -> T
Self
from the given filelike object. Read moreSource§fn from_into_filelike<Owned>(owned: Owned) -> Twhere
Owned: IntoFilelike,
fn from_into_filelike<Owned>(owned: Owned) -> Twhere
Owned: IntoFilelike,
Self
from the given filelike object
converted from into_owned
. Read moreSource§impl<T> FromHandle for Twhere
T: From<OwnedHandle>,
impl<T> FromHandle for Twhere
T: From<OwnedHandle>,
Source§fn from_handle(owned_handle: OwnedHandle) -> T
fn from_handle(owned_handle: OwnedHandle) -> T
FromHandle::from_handle
is replaced by From<OwnedHandle>::from
Self
from the given handle. Read moreSource§fn from_into_handle<Owned>(into_owned: Owned) -> Self
fn from_into_handle<Owned>(into_owned: Owned) -> Self
Source§impl<T> FromRawFilelike for Twhere
T: FromRawHandle,
impl<T> FromRawFilelike for Twhere
T: FromRawHandle,
Source§unsafe fn from_raw_filelike(raw: *mut c_void) -> T
unsafe fn from_raw_filelike(raw: *mut c_void) -> T
Self
from the raw value.Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoFilelike for Twhere
T: Into<OwnedHandle>,
impl<T> IntoFilelike for Twhere
T: Into<OwnedHandle>,
Source§fn into_filelike(self) -> OwnedHandle
fn into_filelike(self) -> OwnedHandle
Source§impl<T> IntoGrip for Twhere
T: Into<OwnedHandleOrSocket>,
impl<T> IntoGrip for Twhere
T: Into<OwnedHandleOrSocket>,
Source§fn into_grip(self) -> OwnedHandleOrSocket
fn into_grip(self) -> OwnedHandleOrSocket
self
and convert into an OwnedGrip
.Source§impl<T> IntoHandle for Twhere
OwnedHandle: From<T>,
impl<T> IntoHandle for Twhere
OwnedHandle: From<T>,
Source§fn into_handle(self) -> OwnedHandle
fn into_handle(self) -> OwnedHandle
IntoHandle
is replaced by From<...> for OwnedHandle
or Into<OwnedHandle>
Source§impl<T> IntoRawFilelike for Twhere
T: IntoRawHandle,
impl<T> IntoRawFilelike for Twhere
T: IntoRawHandle,
Source§fn into_raw_filelike(self) -> *mut c_void
fn into_raw_filelike(self) -> *mut c_void
Source§impl<T> IntoRawGrip for Twhere
T: IntoRawHandleOrSocket,
impl<T> IntoRawGrip for Twhere
T: IntoRawHandleOrSocket,
Source§fn into_raw_grip(self) -> RawHandleOrSocket
fn into_raw_grip(self) -> RawHandleOrSocket
self
and convert into an RawGrip
.Source§impl<T> ReadExt for T
impl<T> ReadExt for T
Source§fn read<'a>(&'a mut self, buf: &'a mut [u8]) -> ReadFuture<'a, Self>where
Self: Unpin,
fn read<'a>(&'a mut self, buf: &'a mut [u8]) -> ReadFuture<'a, Self>where
Self: Unpin,
Source§fn read_vectored<'a>(
&'a mut self,
bufs: &'a mut [IoSliceMut<'a>],
) -> ReadVectoredFuture<'a, Self>where
Self: Unpin,
fn read_vectored<'a>(
&'a mut self,
bufs: &'a mut [IoSliceMut<'a>],
) -> ReadVectoredFuture<'a, Self>where
Self: Unpin,
Source§fn read_to_end<'a>(
&'a mut self,
buf: &'a mut Vec<u8>,
) -> ReadToEndFuture<'a, Self>where
Self: Unpin,
fn read_to_end<'a>(
&'a mut self,
buf: &'a mut Vec<u8>,
) -> ReadToEndFuture<'a, Self>where
Self: Unpin,
Source§fn read_to_string<'a>(
&'a mut self,
buf: &'a mut String,
) -> ReadToStringFuture<'a, Self>where
Self: Unpin,
fn read_to_string<'a>(
&'a mut self,
buf: &'a mut String,
) -> ReadToStringFuture<'a, Self>where
Self: Unpin,
Source§fn read_exact<'a>(&'a mut self, buf: &'a mut [u8]) -> ReadExactFuture<'a, Self>where
Self: Unpin,
fn read_exact<'a>(&'a mut self, buf: &'a mut [u8]) -> ReadExactFuture<'a, Self>where
Self: Unpin,
buf
. Read moreSource§fn take(self, limit: u64) -> Take<Self>where
Self: Sized,
fn take(self, limit: u64) -> Take<Self>where
Self: Sized,
limit
bytes from it. Read moreSource§fn by_ref(&mut self) -> &mut Selfwhere
Self: Sized,
fn by_ref(&mut self) -> &mut Selfwhere
Self: Sized,
Read
. Read more