summaryrefslogtreecommitdiff
path: root/ops/optimizer_tests/op_state_generics.out
diff options
context:
space:
mode:
Diffstat (limited to 'ops/optimizer_tests/op_state_generics.out')
-rw-r--r--ops/optimizer_tests/op_state_generics.out106
1 files changed, 63 insertions, 43 deletions
diff --git a/ops/optimizer_tests/op_state_generics.out b/ops/optimizer_tests/op_state_generics.out
index 24596256a..a3e476d9e 100644
--- a/ops/optimizer_tests/op_state_generics.out
+++ b/ops/optimizer_tests/op_state_generics.out
@@ -3,43 +3,66 @@
///
///Use `op_foo::decl()` to get an op-declaration
///you can include in a `deno_core::Extension`.
-pub struct op_foo;
+pub struct op_foo<SP> {
+ _phantom_data: ::std::marker::PhantomData<(SP)>,
+}
+impl<SP> deno_core::_ops::Op for op_foo<SP>
+where
+ SP: SomePermission + 'static,
+{
+ const NAME: &'static str = stringify!(op_foo);
+ 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, CallbackOptions],
+ CType::Void,
+ Self::op_foo_fast_fn as *const ::std::ffi::c_void,
+ ),
+ )
+ },
+ is_async: false,
+ is_unstable: false,
+ is_v8: false,
+ arg_count: 0,
+ };
+}
#[doc(hidden)]
-impl op_foo {
+impl<SP> op_foo<SP>
+where
+ SP: SomePermission + 'static,
+{
pub const fn name() -> &'static str {
stringify!(op_foo)
}
#[allow(clippy::not_unsafe_ptr_arg_deref)]
- pub extern "C" fn v8_fn_ptr<'scope, SP>(
- info: *const deno_core::v8::FunctionCallbackInfo,
- )
- where
- SP: SomePermission + 'static,
- {
+ 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(
info,
);
let rv = deno_core::v8::ReturnValue::from_function_callback_info(info);
- Self::v8_func::<SP>(scope, args, rv);
+ Self::v8_func(scope, args, rv);
}
- pub const fn decl<'scope, SP>() -> deno_core::OpDecl
- where
- SP: SomePermission + 'static,
- {
+ pub const fn decl() -> deno_core::OpDecl {
deno_core::OpDecl {
name: Self::name(),
- v8_fn_ptr: Self::v8_fn_ptr::<SP> as _,
+ 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, CallbackOptions],
CType::Void,
- op_foo_fast_fn::<SP> as *const ::std::ffi::c_void,
+ Self::op_foo_fast_fn as *const ::std::ffi::c_void,
),
)
},
@@ -51,45 +74,42 @@ impl op_foo {
}
#[inline]
#[allow(clippy::too_many_arguments)]
- pub fn call<SP>(state: &mut OpState)
- where
- SP: SomePermission + 'static,
- {}
- pub fn v8_func<'scope, SP>(
+ #[allow(clippy::extra_unused_lifetimes)]
+ pub fn call<'scope>(state: &mut OpState) {}
+ pub fn v8_func<'scope>(
scope: &mut deno_core::v8::HandleScope<'scope>,
args: deno_core::v8::FunctionCallbackArguments,
mut rv: deno_core::v8::ReturnValue,
- )
- where
- SP: SomePermission + 'static,
- {
+ ) {
let ctx = unsafe {
&*(deno_core::v8::Local::<deno_core::v8::External>::cast(args.data()).value()
as *const deno_core::_ops::OpCtx)
};
- let result = Self::call::<SP>(&mut std::cell::RefCell::borrow_mut(&ctx.state));
+ let result = Self::call(&mut std::cell::RefCell::borrow_mut(&ctx.state));
let op_state = ::std::cell::RefCell::borrow(&*ctx.state);
op_state.tracker.track_sync(ctx.id);
}
}
-#[allow(clippy::too_many_arguments)]
-fn op_foo_fast_fn<'scope, SP>(
- _: deno_core::v8::Local<deno_core::v8::Object>,
- fast_api_callback_options: *mut deno_core::v8::fast_api::FastApiCallbackOptions,
-) -> ()
+impl<SP> op_foo<SP>
where
SP: SomePermission + 'static,
{
- use deno_core::v8;
- use deno_core::_ops;
- let __opts: &mut v8::fast_api::FastApiCallbackOptions = unsafe {
- &mut *fast_api_callback_options
- };
- let __ctx = unsafe {
- &*(v8::Local::<v8::External>::cast(unsafe { __opts.data.data }).value()
- as *const _ops::OpCtx)
- };
- let state = &mut ::std::cell::RefCell::borrow_mut(&__ctx.state);
- let result = op_foo::call::<SP>(state);
- result
+ #[allow(clippy::too_many_arguments)]
+ fn op_foo_fast_fn(
+ _: deno_core::v8::Local<deno_core::v8::Object>,
+ fast_api_callback_options: *mut deno_core::v8::fast_api::FastApiCallbackOptions,
+ ) -> () {
+ use deno_core::v8;
+ use deno_core::_ops;
+ let __opts: &mut v8::fast_api::FastApiCallbackOptions = unsafe {
+ &mut *fast_api_callback_options
+ };
+ let __ctx = unsafe {
+ &*(v8::Local::<v8::External>::cast(unsafe { __opts.data.data }).value()
+ as *const _ops::OpCtx)
+ };
+ let state = &mut ::std::cell::RefCell::borrow_mut(&__ctx.state);
+ let result = Self::call(state);
+ result
+ }
}