diff options
Diffstat (limited to 'sources/shiboken6/generator/generatorcontext.cpp')
-rw-r--r-- | sources/shiboken6/generator/generatorcontext.cpp | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/sources/shiboken6/generator/generatorcontext.cpp b/sources/shiboken6/generator/generatorcontext.cpp new file mode 100644 index 000000000..b50c2effb --- /dev/null +++ b/sources/shiboken6/generator/generatorcontext.cpp @@ -0,0 +1,38 @@ +// Copyright (C) 2016 The Qt Company Ltd. +// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0 + +#include "generatorcontext.h" +#include <abstractmetalang.h> + +#include <QtCore/QDebug> + +using namespace Qt::StringLiterals; + +QString GeneratorContext::wrapperName() const +{ + Q_ASSERT(m_type == WrappedClass); + return m_wrappername; +} + +QString GeneratorContext::effectiveClassName() const +{ + if (m_type == SmartPointer) + return m_preciseClassType.cppSignature(); + return m_type == WrappedClass ? m_wrappername : m_metaClass->qualifiedCppName(); +} + +QDebug operator<<(QDebug debug, const GeneratorContext &c) +{ + QDebugStateSaver saver(debug); + debug.noquote(); + debug.nospace(); + debug << "GeneratorContext(\"" << c.metaClass()->name() << "\" "; + if (c.useWrapper()) + debug << "[wrapper]"; + else if (c.forSmartPointer()) + debug << "[smart pointer] \"" << c.preciseType().cppSignature() << '"'; + else + debug << "[class]"; + debug << ')'; + return debug; +} |