diff options
author | Bartek IwaĆczuk <biwanczuk@gmail.com> | 2023-09-14 08:29:44 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-09-14 08:29:44 +0200 |
commit | bbb348aa33b56e15f376e8e7ee7b71bd5badd936 (patch) | |
tree | 71237cd69672b125c17b5b5aa671afa947847486 /ext/node/ops/zlib/brotli.rs | |
parent | 2046aeed70efac1e17f1df8873da25e00bb4e2b2 (diff) |
refactor: rewrite ext/node to op2 (#20489)
Diffstat (limited to 'ext/node/ops/zlib/brotli.rs')
-rw-r--r-- | ext/node/ops/zlib/brotli.rs | 32 |
1 files changed, 20 insertions, 12 deletions
diff --git a/ext/node/ops/zlib/brotli.rs b/ext/node/ops/zlib/brotli.rs index b4d970970..a5c0f0f92 100644 --- a/ext/node/ops/zlib/brotli.rs +++ b/ext/node/ops/zlib/brotli.rs @@ -8,6 +8,7 @@ use brotli::Decompressor; use deno_core::error::type_error; use deno_core::error::AnyError; use deno_core::op; +use deno_core::op2; use deno_core::JsBuffer; use deno_core::OpState; use deno_core::Resource; @@ -71,12 +72,13 @@ fn max_compressed_size(input_size: usize) -> usize { } } -#[op] +#[op2(async)] +#[serde] pub async fn op_brotli_compress_async( - input: JsBuffer, - quality: i32, - lgwin: i32, - mode: u32, + #[buffer] input: JsBuffer, + #[smi] quality: i32, + #[smi] lgwin: i32, + #[smi] mode: u32, ) -> Result<ToJsBuffer, AnyError> { tokio::task::spawn_blocking(move || { let in_buffer = input.as_ptr(); @@ -123,10 +125,11 @@ impl Drop for BrotliCompressCtx { } } -#[op] +#[op2] +#[smi] pub fn op_create_brotli_compress( state: &mut OpState, - params: Vec<(u8, i32)>, + #[serde] params: Vec<(u8, i32)>, ) -> u32 { let inst = // SAFETY: Creates a brotli encoder instance for default allocators. @@ -222,14 +225,18 @@ fn brotli_decompress(buffer: &[u8]) -> Result<ToJsBuffer, AnyError> { Ok(output.into()) } -#[op] -pub fn op_brotli_decompress(buffer: &[u8]) -> Result<ToJsBuffer, AnyError> { +#[op2] +#[serde] +pub fn op_brotli_decompress( + #[buffer] buffer: &[u8], +) -> Result<ToJsBuffer, AnyError> { brotli_decompress(buffer) } -#[op] +#[op2(async)] +#[serde] pub async fn op_brotli_decompress_async( - buffer: JsBuffer, + #[buffer] buffer: JsBuffer, ) -> Result<ToJsBuffer, AnyError> { tokio::task::spawn_blocking(move || brotli_decompress(&buffer)).await? } @@ -247,7 +254,8 @@ impl Drop for BrotliDecompressCtx { } } -#[op] +#[op2(fast)] +#[smi] pub fn op_create_brotli_decompress(state: &mut OpState) -> u32 { let inst = // SAFETY: TODO(littledivy) |