// clang-format off // SPDX-FileCopyrightText: 2022 Klarälvdalens Datakonsult AB, a KDAB Group company // clang-format on // SPDX-FileContributor: Andrew Hayzen // SPDX-FileContributor: Leon Matthes // // SPDX-License-Identifier: MIT OR Apache-2.0 #pragma once #include #include #include "rust/cxx.h" // Define namespace otherwise we hit a GCC bug // https://gcc.gnu.org/bugzilla/show_bug.cgi?id=56480 namespace rust { template<> struct IsRelocatable : ::std::true_type {}; } // namespace rust namespace rust { namespace cxxqtlib1 { QString qstringInitFromRustString(::rust::Str string); ::rust::String qstringToRustString(const QString& string); QString qstringArg(const QString& string, const QString& a); ::rust::isize qstringIndexOf(const QString& string, const QString& str, ::rust::isize from, Qt::CaseSensitivity cs); QString& qstringInsert(QString& string, ::rust::isize pos, const QString& str); QString qstringLeft(const QString& string, ::rust::isize n); ::rust::isize qstringLen(const QString& string); QString qstringMid(const QString& string, ::rust::isize position, ::rust::isize n); QString qstringRight(const QString& string, ::rust::isize n); QStringList qstringSplit(const QString& string, const QString& sep, Qt::SplitBehaviorFlags behavior, Qt::CaseSensitivity cs); // If Q_COMPILER_REF_QUALIFIERS is set the definition of these is // T method() const& which CXX doesn't bind it. QString qstringSimplified(const QString& string); QByteArray qstringToLatin1(const QString& string); QByteArray qstringToLocal8Bit(const QString& string); QString qstringToLower(const QString& string); QString qstringToUpper(const QString& string); QByteArray qstringToUtf8(const QString& string); QString qstringTrimmed(const QString& string); } }