diff options
author | Divy Srivastava <dj.srivastava23@gmail.com> | 2023-03-03 19:04:10 +0530 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-03-03 19:04:10 +0530 |
commit | 38555a6a0fe9a7235776afe0ebfb2a24dc518391 (patch) | |
tree | ef9506c500451e5f2ef4ae5b70eda85c7147a25e /ops/fast_call.rs | |
parent | 64503fabd81e38c58d44d23ae94f5b87a384b86e (diff) |
feat(ops): reland fast zero copy string arguments (#17996)
Reland https://github.com/denoland/deno/pull/16777
The codegen is disabled in async ops and when fallback to slow call is
possible (return type is a Result) to avoid hitting this V8 bug:
https://github.com/denoland/deno/issues/17159
Diffstat (limited to 'ops/fast_call.rs')
-rw-r--r-- | ops/fast_call.rs | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/ops/fast_call.rs b/ops/fast_call.rs index 12ff9e446..0ddf5c878 100644 --- a/ops/fast_call.rs +++ b/ops/fast_call.rs @@ -430,7 +430,8 @@ fn q_fast_ty(v: &FastValue) -> Quote { FastValue::V8Value => q!({ v8::Local<v8::Value> }), FastValue::Uint8Array | FastValue::Uint32Array - | FastValue::Float64Array => unreachable!(), + | FastValue::Float64Array + | FastValue::SeqOneByteString => unreachable!(), } } @@ -450,6 +451,7 @@ fn q_fast_ty_variant(v: &FastValue) -> Quote { FastValue::Uint8Array => q!({ TypedArray(CType::Uint8) }), FastValue::Uint32Array => q!({ TypedArray(CType::Uint32) }), FastValue::Float64Array => q!({ TypedArray(CType::Float64) }), + FastValue::SeqOneByteString => q!({ SeqOneByteString }), } } |