Skip to content

Commit a3012f4

Browse files
committed
Varcall/Ptrcall signature: remove unneeded GodotClass type parameter
1 parent f29b9e0 commit a3012f4

File tree

4 files changed

+8
-16
lines changed

4 files changed

+8
-16
lines changed

godot-core/src/builtin/meta/signature.rs

+4-5
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ pub trait VarcallSignatureTuple: PtrcallSignatureTuple {
1818
// TODO(uninit) - can we use this for varcall/ptrcall?
1919
// ret: sys::GDExtensionUninitializedVariantPtr
2020
// ret: sys::GDExtensionUninitializedTypePtr
21-
unsafe fn varcall<C: GodotClass>(
21+
unsafe fn varcall(
2222
instance_ptr: sys::GDExtensionClassInstancePtr,
2323
args_ptr: *const sys::GDExtensionConstVariantPtr,
2424
ret: sys::GDExtensionVariantPtr,
@@ -35,7 +35,7 @@ pub trait PtrcallSignatureTuple {
3535

3636
// Note: this method imposes extra bounds on GodotFfi, which may not be implemented for user types.
3737
// We could fall back to varcalls in such cases, and not require GodotFfi categorically.
38-
unsafe fn ptrcall<C: GodotClass>(
38+
unsafe fn ptrcall(
3939
instance_ptr: sys::GDExtensionClassInstancePtr,
4040
args_ptr: *const sys::GDExtensionConstTypePtr,
4141
ret: sys::GDExtensionTypePtr,
@@ -63,7 +63,6 @@ pub trait PtrcallSignatureTuple {
6363
//
6464
use crate::builtin::meta::*;
6565
use crate::builtin::{FromVariant, ToVariant, Variant};
66-
use crate::obj::GodotClass;
6766

6867
macro_rules! impl_varcall_signature_for_tuple {
6968
(
@@ -102,7 +101,7 @@ macro_rules! impl_varcall_signature_for_tuple {
102101

103102

104103
#[inline]
105-
unsafe fn varcall<C : GodotClass>(
104+
unsafe fn varcall(
106105
instance_ptr: sys::GDExtensionClassInstancePtr,
107106
args_ptr: *const sys::GDExtensionConstVariantPtr,
108107
ret: sys::GDExtensionVariantPtr,
@@ -135,7 +134,7 @@ macro_rules! impl_ptrcall_signature_for_tuple {
135134
type Params = ($($Pn,)*);
136135
type Ret = $R;
137136

138-
unsafe fn ptrcall<C : GodotClass>(
137+
unsafe fn ptrcall(
139138
instance_ptr: sys::GDExtensionClassInstancePtr,
140139
args_ptr: *const sys::GDExtensionConstTypePtr,
141140
ret: sys::GDExtensionTypePtr,

godot-core/src/macros.rs

+2-4
Original file line numberDiff line numberDiff line change
@@ -12,13 +12,12 @@ macro_rules! gdext_call_signature_method {
1212
(
1313
ptrcall,
1414
$Signature:ty,
15-
$Class:ty,
1615
$instance_ptr:ident, $args:ident, $ret:ident,
1716
$func:expr,
1817
$method_name:ident,
1918
$ptrcall_type:path
2019
) => {
21-
<$Signature as $crate::builtin::meta::PtrcallSignatureTuple>::ptrcall::<$Class>(
20+
<$Signature as $crate::builtin::meta::PtrcallSignatureTuple>::ptrcall(
2221
$instance_ptr,
2322
$args,
2423
$ret,
@@ -31,12 +30,11 @@ macro_rules! gdext_call_signature_method {
3130
(
3231
varcall,
3332
$Signature:ty,
34-
$Class:ty,
3533
$instance_ptr:ident, $args:ident, $ret:ident, $err:ident,
3634
$func:expr,
3735
$method_name:ident
3836
) => {
39-
<$Signature as $crate::builtin::meta::VarcallSignatureTuple>::varcall::<$Class>(
37+
<$Signature as $crate::builtin::meta::VarcallSignatureTuple>::varcall(
4038
$instance_ptr,
4139
$args,
4240
$ret,

godot-macros/src/method_registration/register_method.rs

+2-6
Original file line numberDiff line numberDiff line change
@@ -31,8 +31,8 @@ pub fn gdext_register_method(class_name: &Ident, method_signature: &TokenStream)
3131

3232
let wrapped_method = wrap_with_unpacked_params(class_name, &signature_info);
3333

34-
let varcall_func = get_varcall_func(class_name, method_name, &sig, &wrapped_method);
35-
let ptrcall_func = get_ptrcall_func(class_name, method_name, &sig, &wrapped_method);
34+
let varcall_func = get_varcall_func(method_name, &sig, &wrapped_method);
35+
let ptrcall_func = get_ptrcall_func(method_name, &sig, &wrapped_method);
3636

3737
quote! {
3838
{
@@ -72,7 +72,6 @@ pub fn gdext_register_method(class_name: &Ident, method_signature: &TokenStream)
7272
}
7373

7474
fn get_varcall_func(
75-
class_name: &Ident,
7675
method_name: &Ident,
7776
sig: &TokenStream,
7877
wrapped_method: &TokenStream,
@@ -93,7 +92,6 @@ fn get_varcall_func(
9392
godot::private::gdext_call_signature_method!(
9493
varcall,
9594
#sig,
96-
#class_name,
9795
instance_ptr,
9896
args,
9997
ret,
@@ -119,7 +117,6 @@ fn get_varcall_func(
119117
}
120118

121119
fn get_ptrcall_func(
122-
class_name: &Ident,
123120
method_name: &Ident,
124121
sig: &TokenStream,
125122
wrapped_method: &TokenStream,
@@ -138,7 +135,6 @@ fn get_ptrcall_func(
138135
godot::private::gdext_call_signature_method!(
139136
ptrcall,
140137
#sig,
141-
#class_name,
142138
instance_ptr,
143139
args,
144140
ret,

godot-macros/src/method_registration/virtual_method_callback.rs

-1
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,6 @@ pub fn gdext_virtual_method_callback(
3636
godot::private::gdext_call_signature_method!(
3737
ptrcall,
3838
#sig,
39-
#class_name,
4039
instance_ptr,
4140
args,
4241
ret,

0 commit comments

Comments
 (0)