summaryrefslogtreecommitdiff
path: root/runtime/ops/io.rs
diff options
context:
space:
mode:
Diffstat (limited to 'runtime/ops/io.rs')
-rw-r--r--runtime/ops/io.rs17
1 files changed, 8 insertions, 9 deletions
diff --git a/runtime/ops/io.rs b/runtime/ops/io.rs
index fd5b8a962..186052afe 100644
--- a/runtime/ops/io.rs
+++ b/runtime/ops/io.rs
@@ -16,7 +16,6 @@ use deno_core::OpState;
use deno_core::RcRef;
use deno_core::Resource;
use deno_core::ResourceId;
-use deno_core::ZeroCopyBuf;
use once_cell::sync::Lazy;
use std::borrow::Cow;
use std::cell::RefCell;
@@ -683,32 +682,32 @@ pub fn op_print(
})
}
-#[op]
+#[op(fast)]
fn op_read_sync(
state: &mut OpState,
- rid: ResourceId,
- mut buf: ZeroCopyBuf,
+ rid: u32,
+ buf: &mut [u8],
) -> Result<u32, AnyError> {
StdFileResource::with_resource(state, rid, move |resource| {
resource.with_inner_and_metadata(|inner, _| {
inner
- .read(&mut buf)
+ .read(buf)
.map(|n: usize| n as u32)
.map_err(AnyError::from)
})
})
}
-#[op]
+#[op(fast)]
fn op_write_sync(
state: &mut OpState,
- rid: ResourceId,
- buf: ZeroCopyBuf,
+ rid: u32,
+ buf: &mut [u8],
) -> Result<u32, AnyError> {
StdFileResource::with_resource(state, rid, move |resource| {
resource.with_inner_and_metadata(|inner, _| {
inner
- .write_and_maybe_flush(&buf)
+ .write_and_maybe_flush(buf)
.map(|nwritten: usize| nwritten as u32)
.map_err(AnyError::from)
})