aboutsummaryrefslogtreecommitdiffstats
path: root/sources/shiboken6/ApiExtractor/abstractmetatype.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'sources/shiboken6/ApiExtractor/abstractmetatype.cpp')
-rw-r--r--sources/shiboken6/ApiExtractor/abstractmetatype.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/sources/shiboken6/ApiExtractor/abstractmetatype.cpp b/sources/shiboken6/ApiExtractor/abstractmetatype.cpp
index 94b55d524..3401a61c9 100644
--- a/sources/shiboken6/ApiExtractor/abstractmetatype.cpp
+++ b/sources/shiboken6/ApiExtractor/abstractmetatype.cpp
@@ -754,12 +754,19 @@ bool AbstractMetaType::isPointerToWrapperType() const
return (isObjectType() && d->m_indirections.size() == 1) || isValuePointer();
}
-bool AbstractMetaType::shouldDereferencePointer() const
+bool AbstractMetaType::isWrapperPassedByReference() const
{
return d->m_referenceType == LValueReference && isWrapperType()
&& !isPointer();
}
+bool AbstractMetaType::shouldDereferenceArgument() const
+{
+ return isWrapperPassedByReference()
+ || valueTypeWithCopyConstructorOnlyPassed()
+ || isObjectTypeUsedAsValueType();
+}
+
bool AbstractMetaType::isCppIntegralPrimitive() const
{
return d->m_typeEntry->isCppIntegralPrimitive();