summaryrefslogtreecommitdiff
path: root/ext/webgpu/queue.rs
diff options
context:
space:
mode:
authorAaron O'Mullan <aaron.omullan@gmail.com>2021-08-15 13:29:19 +0200
committerGitHub <noreply@github.com>2021-08-15 13:29:19 +0200
commit2ca454b402d48c1808f8233c5adedc11b714c63c (patch)
tree592f9e877e9b0ae92be80383ab723cc290e4b01e /ext/webgpu/queue.rs
parent18ff6bb053d600c277613628a256fe5fdd4dda67 (diff)
refactor(ops): return BadResource errors in ResourceTable calls (#11710)
* refactor(ops): return BadResource errors in ResourceTable calls Instead of relying on callers to map Options to Results via `.ok_or_else(bad_resource_id)` at over 176 different call sites ...
Diffstat (limited to 'ext/webgpu/queue.rs')
-rw-r--r--ext/webgpu/queue.rs33
1 files changed, 12 insertions, 21 deletions
diff --git a/ext/webgpu/queue.rs b/ext/webgpu/queue.rs
index 876c2a207..6af1e61e3 100644
--- a/ext/webgpu/queue.rs
+++ b/ext/webgpu/queue.rs
@@ -2,7 +2,6 @@
use std::num::NonZeroU32;
-use deno_core::error::bad_resource_id;
use deno_core::error::null_opbuf;
use deno_core::error::AnyError;
use deno_core::OpState;
@@ -27,19 +26,17 @@ pub fn op_webgpu_queue_submit(
_: (),
) -> Result<WebGpuResult, AnyError> {
let instance = state.borrow::<super::Instance>();
- let queue_resource = state
- .resource_table
- .get::<WebGpuQueue>(args.queue_rid)
- .ok_or_else(bad_resource_id)?;
+ let queue_resource =
+ state.resource_table.get::<WebGpuQueue>(args.queue_rid)?;
let queue = queue_resource.0;
let mut ids = vec![];
for rid in args.command_buffers {
- let buffer_resource = state
- .resource_table
- .get::<super::command_encoder::WebGpuCommandBuffer>(rid)
- .ok_or_else(bad_resource_id)?;
+ let buffer_resource =
+ state
+ .resource_table
+ .get::<super::command_encoder::WebGpuCommandBuffer>(rid)?;
ids.push(buffer_resource.0);
}
@@ -76,13 +73,10 @@ pub fn op_webgpu_write_buffer(
let instance = state.borrow::<super::Instance>();
let buffer_resource = state
.resource_table
- .get::<super::buffer::WebGpuBuffer>(args.buffer)
- .ok_or_else(bad_resource_id)?;
+ .get::<super::buffer::WebGpuBuffer>(args.buffer)?;
let buffer = buffer_resource.0;
- let queue_resource = state
- .resource_table
- .get::<WebGpuQueue>(args.queue_rid)
- .ok_or_else(bad_resource_id)?;
+ let queue_resource =
+ state.resource_table.get::<WebGpuQueue>(args.queue_rid)?;
let queue = queue_resource.0;
let data = match args.size {
@@ -118,12 +112,9 @@ pub fn op_webgpu_write_texture(
let instance = state.borrow::<super::Instance>();
let texture_resource = state
.resource_table
- .get::<super::texture::WebGpuTexture>(args.destination.texture)
- .ok_or_else(bad_resource_id)?;
- let queue_resource = state
- .resource_table
- .get::<WebGpuQueue>(args.queue_rid)
- .ok_or_else(bad_resource_id)?;
+ .get::<super::texture::WebGpuTexture>(args.destination.texture)?;
+ let queue_resource =
+ state.resource_table.get::<WebGpuQueue>(args.queue_rid)?;
let queue = queue_resource.0;
let destination = wgpu_core::command::ImageCopyTexture {