Struct deno_runtime::ops::io::StdFileResource
source · pub struct StdFileResource { /* private fields */ }
Implementations§
source§impl StdFileResource
impl StdFileResource
pub fn fs_file(fs_file: StdFile) -> Self
pub fn with_file<F, R>(
state: &mut OpState,
rid: ResourceId,
f: F
) -> Result<R, AnyError>where
F: FnOnce(&mut StdFile) -> Result<R, AnyError>,
pub fn with_file_and_metadata<F, R>(
state: &mut OpState,
rid: ResourceId,
f: F
) -> Result<R, AnyError>where
F: FnOnce(&mut StdFile, &Arc<Mutex<FileMetadata>>) -> Result<R, AnyError>,
pub async fn with_file_blocking_task<F, R: Send + 'static>(
state: Rc<RefCell<OpState>>,
rid: ResourceId,
f: F
) -> Result<R, AnyError>where
F: FnOnce(&mut StdFile) -> Result<R, AnyError> + Send + 'static,
pub fn clone_file(
state: &mut OpState,
rid: ResourceId
) -> Result<StdFile, AnyError>
pub fn as_stdio(state: &mut OpState, rid: u32) -> Result<Stdio, AnyError>
Trait Implementations§
source§impl Resource for StdFileResource
impl Resource for StdFileResource
source§fn name(&self) -> Cow<'_, str>
fn name(&self) -> Cow<'_, str>
Returns a string representation of the resource which is made available
to JavaScript code through
op_resources
. The default implementation
returns the Rust type name, but specific resource types may override this
trait method.source§fn read(self: Rc<Self>, limit: usize) -> AsyncResult<BufView>
fn read(self: Rc<Self>, limit: usize) -> AsyncResult<BufView>
Read a single chunk of data from the resource. This operation returns a
BufView
that represents the data that was read. If a zero length buffer
is returned, it indicates that the resource has reached EOF. Read moresource§fn read_byob(self: Rc<Self>, buf: BufMutView) -> AsyncResult<(usize, BufMutView)>
fn read_byob(self: Rc<Self>, buf: BufMutView) -> AsyncResult<(usize, BufMutView)>
Read a single chunk of data from the resource into the provided
BufMutView
. Read moresource§fn write(self: Rc<Self>, view: BufView) -> AsyncResult<WriteOutcome>
fn write(self: Rc<Self>, view: BufView) -> AsyncResult<WriteOutcome>
Write a single chunk of data to the resource. The operation may not be
able to write the entire chunk, in which case it should return the number
of bytes written. Additionally it should return the
BufView
that was
passed in. Read moresource§fn write_all(self: Rc<Self>, view: BufView) -> AsyncResult<()>
fn write_all(self: Rc<Self>, view: BufView) -> AsyncResult<()>
Write an entire chunk of data to the resource. Unlike
write()
, this will
ensure the entire chunk is written. If the operation is not able to write
the entire chunk, an error is to be returned. Read moresource§fn backing_fd(self: Rc<Self>) -> Option<RawFd>
fn backing_fd(self: Rc<Self>) -> Option<RawFd>
Resources backed by a file descriptor can let ops know to allow for
low-level optimizations.
source§fn shutdown(
self: Rc<Self>
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + 'static, Global>>
fn shutdown(
self: Rc<Self>
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + 'static, Global>>
The shutdown method can be used to asynchronously close the resource. It
is not automatically called when the resource is dropped or closed. Read more
source§fn close(self: Rc<Self>)
fn close(self: Rc<Self>)
Resources may implement the
close()
trait method if they need to do
resource specific clean-ups, such as cancelling pending futures, after a
resource has been removed from the resource table.