diff options
Diffstat (limited to 'ext/ffi/lib.rs')
-rw-r--r-- | ext/ffi/lib.rs | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/ext/ffi/lib.rs b/ext/ffi/lib.rs index ac792de44..926d88ac7 100644 --- a/ext/ffi/lib.rs +++ b/ext/ffi/lib.rs @@ -651,15 +651,14 @@ pub struct FfiFastCallTemplate { } impl fast_api::FastFunction for FfiFastCallTemplate { - type Signature = (); - fn function(&self) -> Self::Signature {} - - fn raw(&self) -> *const c_void { + fn function(&self) -> *const c_void { self.symbol_ptr } + fn args(&self) -> &'static [fast_api::Type] { Box::leak(self.args.clone()) } + fn return_type(&self) -> fast_api::CType { self.ret } @@ -767,7 +766,7 @@ fn make_sync_fn<'s>( .data(v8::External::new(scope, sym as *mut Symbol as *mut _).into()); let func = if let Some(fast_ffi_templ) = fast_ffi_templ { - builder.build_fast(scope, fast_ffi_templ) + builder.build_fast(scope, &fast_ffi_templ, None) } else { builder.build(scope) }; |