summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDivy Srivastava <dj.srivastava23@gmail.com>2022-07-04 07:00:42 +0530
committerGitHub <noreply@github.com>2022-07-04 07:00:42 +0530
commit2c2126918bafadca43e6b4bb8daaca40afc2ee98 (patch)
tree216ad3c4c678c6f07936ee57b12ab8da6bcfbfdf
parent9b5e6e64f2b1b20810aff8226d15d509afc1fecc (diff)
perf(serde_v8): avoid extra is_array_buffer_view check (#15056)
-rw-r--r--serde_v8/magic/v8slice.rs3
1 files changed, 1 insertions, 2 deletions
diff --git a/serde_v8/magic/v8slice.rs b/serde_v8/magic/v8slice.rs
index 67255fc53..94e21b0e0 100644
--- a/serde_v8/magic/v8slice.rs
+++ b/serde_v8/magic/v8slice.rs
@@ -70,8 +70,7 @@ pub(crate) fn to_ranged_buffer<'s>(
scope: &mut v8::HandleScope<'s>,
value: v8::Local<v8::Value>,
) -> Result<(v8::Local<'s, v8::ArrayBuffer>, Range<usize>), v8::DataError> {
- if value.is_array_buffer_view() {
- let view: v8::Local<v8::ArrayBufferView> = value.try_into()?;
+ if let Ok(view) = v8::Local::<v8::ArrayBufferView>::try_from(value) {
let (offset, len) = (view.byte_offset(), view.byte_length());
let buffer = view.buffer(scope).ok_or(v8::DataError::NoData {
expected: "view to have a buffer",