From 488e3cc6c4dee0e398369c83a4367b733bba74c6 Mon Sep 17 00:00:00 2001 From: mappu Date: Wed, 28 Aug 2024 18:22:25 +1200 Subject: [PATCH] genbindings/emitcabi: merge the two qt forwarding cases --- cmd/genbindings/emitcabi.go | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/cmd/genbindings/emitcabi.go b/cmd/genbindings/emitcabi.go index 3a403b1..e0dfd81 100644 --- a/cmd/genbindings/emitcabi.go +++ b/cmd/genbindings/emitcabi.go @@ -153,16 +153,18 @@ func emitParametersCabi(m CppMethod, selfType string) string { tmp = append(tmp, t.RenderTypeCabi()+"* "+p.ParameterName+", size_t "+p.ParameterName+"_len") } - } else if (p.ByRef || p.Pointer) && p.QtClassType() { - // Pointer to Qt type - // Replace with taking our PQ typedef by value - tmp = append(tmp, cabiClassName(p.ParameterType)+"* "+p.ParameterName) - } else if p.QtClassType() { - // Qt type passed by value - // The CABI will unconditionally take these by pointer and dereference them - // when passing to C++ - tmp = append(tmp, cabiClassName(p.ParameterType)+"* "+p.ParameterName) + if p.ByRef || p.Pointer { + + // Pointer to Qt type + // Replace with taking our PQ typedef by value + tmp = append(tmp, cabiClassName(p.ParameterType)+"* "+p.ParameterName) + } else { + // Qt type passed by value + // The CABI will unconditionally take these by pointer and dereference them + // when passing to C++ + tmp = append(tmp, cabiClassName(p.ParameterType)+"* "+p.ParameterName) + } } else { // RenderTypeCabi renders both pointer+reference as pointers