diff options
Diffstat (limited to 'ops/optimizer_tests/owned_string.out')
-rw-r--r-- | ops/optimizer_tests/owned_string.out | 76 |
1 files changed, 51 insertions, 25 deletions
diff --git a/ops/optimizer_tests/owned_string.out b/ops/optimizer_tests/owned_string.out index d186e5108..58c7f72ae 100644 --- a/ops/optimizer_tests/owned_string.out +++ b/ops/optimizer_tests/owned_string.out @@ -3,16 +3,39 @@ /// ///Use `op_string_length::decl()` to get an op-declaration ///you can include in a `deno_core::Extension`. -pub struct op_string_length; +pub struct op_string_length { + _phantom_data: ::std::marker::PhantomData<()>, +} +impl deno_core::_ops::Op for op_string_length { + const NAME: &'static str = stringify!(op_string_length); + const DECL: deno_core::OpDecl = deno_core::OpDecl { + name: Self::name(), + v8_fn_ptr: Self::v8_fn_ptr as _, + enabled: true, + fast_fn: { + use deno_core::v8::fast_api::CType; + use deno_core::v8::fast_api::Type::*; + Some( + deno_core::v8::fast_api::FastFunction::new( + &[V8Value, SeqOneByteString, CallbackOptions], + CType::Uint32, + Self::op_string_length_fast_fn as *const ::std::ffi::c_void, + ), + ) + }, + is_async: false, + is_unstable: false, + is_v8: false, + arg_count: 0, + }; +} #[doc(hidden)] impl op_string_length { pub const fn name() -> &'static str { stringify!(op_string_length) } #[allow(clippy::not_unsafe_ptr_arg_deref)] - pub extern "C" fn v8_fn_ptr<'scope>( - info: *const deno_core::v8::FunctionCallbackInfo, - ) { + pub extern "C" fn v8_fn_ptr(info: *const deno_core::v8::FunctionCallbackInfo) { let info = unsafe { &*info }; let scope = &mut unsafe { deno_core::v8::CallbackScope::new(info) }; let args = deno_core::v8::FunctionCallbackArguments::from_function_callback_info( @@ -21,19 +44,19 @@ impl op_string_length { let rv = deno_core::v8::ReturnValue::from_function_callback_info(info); Self::v8_func(scope, args, rv); } - pub const fn decl<'scope>() -> deno_core::OpDecl { + pub const fn decl() -> deno_core::OpDecl { deno_core::OpDecl { name: Self::name(), v8_fn_ptr: Self::v8_fn_ptr as _, enabled: true, fast_fn: { - use deno_core::v8::fast_api::Type::*; use deno_core::v8::fast_api::CType; + use deno_core::v8::fast_api::Type::*; Some( deno_core::v8::fast_api::FastFunction::new( &[V8Value, SeqOneByteString, CallbackOptions], CType::Uint32, - op_string_length_fast_fn as *const ::std::ffi::c_void, + Self::op_string_length_fast_fn as *const ::std::ffi::c_void, ), ) }, @@ -45,7 +68,8 @@ impl op_string_length { } #[inline] #[allow(clippy::too_many_arguments)] - fn call(string: String) -> u32 { + #[allow(clippy::extra_unused_lifetimes)] + fn call<'scope>(string: String) -> u32 { string.len() as u32 } pub fn v8_func<'scope>( @@ -85,21 +109,23 @@ impl op_string_length { }; } } -#[allow(clippy::too_many_arguments)] -fn op_string_length_fast_fn<'scope>( - _: deno_core::v8::Local<deno_core::v8::Object>, - string: *const deno_core::v8::fast_api::FastApiOneByteString, - fast_api_callback_options: *mut deno_core::v8::fast_api::FastApiCallbackOptions, -) -> u32 { - use deno_core::v8; - use deno_core::_ops; - let string = match ::std::str::from_utf8(unsafe { &*string }.as_bytes()) { - Ok(v) => v.to_owned(), - Err(_) => { - unsafe { &mut *fast_api_callback_options }.fallback = true; - return Default::default(); - } - }; - let result = op_string_length::call(string); - result +impl op_string_length { + #[allow(clippy::too_many_arguments)] + fn op_string_length_fast_fn( + _: deno_core::v8::Local<deno_core::v8::Object>, + string: *const deno_core::v8::fast_api::FastApiOneByteString, + fast_api_callback_options: *mut deno_core::v8::fast_api::FastApiCallbackOptions, + ) -> u32 { + use deno_core::v8; + use deno_core::_ops; + let string = match ::std::str::from_utf8(unsafe { &*string }.as_bytes()) { + Ok(v) => v.to_owned(), + Err(_) => { + unsafe { &mut *fast_api_callback_options }.fallback = true; + return Default::default(); + } + }; + let result = Self::call(string); + result + } } |