Age | Commit message (Collapse) | Author |
|
`deno_core` is moving out! You'll find it at
https://github.com/denoland/deno_core/ once this PR lands.
|
|
In Rust, it is UB if a slice is mutated while borrowed except through
the slice itself, and it is also UB if a mutable slice is read while
borrowed. The op macro allows borrowing an `ArrayBuffer{,View}` as a
memory slice for the duration of an op, but this is not sound for async
ops, since the `ArrayBuffer` could be accessed from JS during the await
points. This PR therefore disallows such automatic borrowing only for
async ops.
Co-authored-by: Divy Srivastava <dj.srivastava23@gmail.com>
|
|
|
|
Implements fast scheduling of deferred op futures.
```rs
#[op(fast)]
async fn op_read(
state: Rc<RefCell<OpState>>,
rid: ResourceId,
buf: &mut [u8],
) -> Result<u32, Error> {
// ...
}
```
The future is scheduled via a fast API call and polled by the event loop
after being woken up by its waker.
|
|
|
|
|
|
|
|
|
|
This reverts commit 03dc3b8972f460e40d0b75fc3207cae9fe4f60da.
|
|
Co-authored-by: Bartek IwaĆczuk <biwanczuk@gmail.com>
|