44 #ifdef PROPARSER_THREAD_SAFE
50 bool ref() {
return ++m_cnt != 0; }
51 bool deref() {
return --m_cnt != 0; }
58 #ifndef QT_BUILD_QMAKE
59 # define PROITEM_EXPLICIT explicit
61 # define PROITEM_EXPLICIT
73 template<
typename A,
typename B>
79 template<
typename A,
typename B>
93 template<
typename A,
typename B>
101 template<
typename A,
typename B>
123 int size()
const {
return m_length; }
137 template<
typename A,
typename B>
142 template<
typename A,
typename B>
158 size_t hash()
const {
return m_hash; }
175 enum OmitPreHashing { NoHash };
178 enum DoPreHashing { DoHash };
185 int m_offset, m_length;
187 mutable size_t m_hash;
188 size_t updatedHash()
const;
200 template<
typename A,
typename B>
231 enum { ExactSize =
true };
235 const auto n =
a.size();
238 memcpy(
out,
a.toQStringView().data(),
sizeof(
QChar) *
n);
247 enum { ExactSize =
true };
251 const auto n =
a.size();
254 memcpy(
out,
a.toQStringView().data(),
sizeof(
QChar) *
n);
263 {
return that +=
other.toQStringView(); }
266 template<
typename A,
typename B>
332 template<
typename A,
typename B>
436 int id()
const {
return m_id; }
444 void ref() { m_refCount.ref(); }
445 void deref() {
if (!m_refCount.deref())
delete this; }
447 bool isOk()
const {
return m_ok; }
471 : m_pro(
other.m_pro), m_offset(
other.m_offset) {
other.m_pro =
nullptr; }
480 m_offset =
o.m_offset;
small capitals from c petite p scientific i
[1]
const ushort * tokPtr() const
QString directoryName() const
const QString & items() const
void setHostBuild(bool host_build)
const ushort * tokPtrEnd() const
const ushort * tokPtr() const
ProFunctionDef(ProFunctionDef &&other) noexcept
ProFunctionDef(ProFile *pro, int offset)
void swap(ProFunctionDef &other) noexcept
ProFunctionDef & operator=(ProFunctionDef &&other) noexcept
ProFunctionDef & operator=(const ProFunctionDef &o)
ProFunctionDef(const ProFunctionDef &o)
ProItemRefCount(int cnt=0)
ProItemRefCount & operator=(int value)
void setValue(const QString &str)
ProKey(const QStringBuilder< A, B > &str)
ALWAYS_INLINE ProString & toString()
ALWAYS_INLINE const ProString & toString() const
ProString & operator+=(const QStringBuilder< A, B > &other)
bool startsWith(const ProString &sub, Qt::CaseSensitivity cs=Qt::CaseSensitive) const
bool startsWith(QChar c, Qt::CaseSensitivity cs=Qt::CaseSensitive) const
friend size_t qHash(const ProString &str)
int indexOf(QChar c, int from=0, Qt::CaseSensitivity cs=Qt::CaseSensitive) const
ProString & setSource(const ProString &other)
bool contains(const QString &s, Qt::CaseSensitivity cs=Qt::CaseSensitive) const
QByteArray toLatin1() const
ProString & operator=(const QStringBuilder< A, B > &str)
bool operator<(const ProString &other) const
ALWAYS_INLINE ProKey & toKey()
ProString mid(int off, int len=-1) const
bool operator==(const ProString &other) const
int lastIndexOf(QChar c, int from=-1, Qt::CaseSensitivity cs=Qt::CaseSensitive) const
QString toQString() const
ProString & operator+=(const QString &other)
ProString & append(const QStringBuilder< A, B > &other)
bool operator!=(const QString &other) const
bool endsWith(const QStringBuilder< A, B > &str)
ProString & operator+=(const QLatin1String other)
ALWAYS_INLINE QStringView toQStringView() const
int toInt(bool *ok=nullptr, int base=10) const
int indexOf(const QString &s, int from=0, Qt::CaseSensitivity cs=Qt::CaseSensitive) const
void setValue(const QString &str)
const QChar * constData() const
bool operator==(const char *other) const
int compare(const QString &sub, Qt::CaseSensitivity cs=Qt::CaseSensitive) const
int compare(const char *sub, Qt::CaseSensitivity cs=Qt::CaseSensitive) const
bool operator!=(QLatin1String other) const
int compare(const ProString &sub, Qt::CaseSensitivity cs=Qt::CaseSensitive) const
ProString right(int len) const
ProString & operator+=(QChar other)
ProString & prepend(const ProString &other)
int indexOf(const char *s, int from=0, Qt::CaseSensitivity cs=Qt::CaseSensitive) const
qlonglong toLongLong(bool *ok=nullptr, int base=10) const
int lastIndexOf(const QString &s, int from=-1, Qt::CaseSensitivity cs=Qt::CaseSensitive) const
bool endsWith(const QString &sub, Qt::CaseSensitivity cs=Qt::CaseSensitive) const
bool operator!=(const char *other) const
bool contains(QChar c, Qt::CaseSensitivity cs=Qt::CaseSensitive) const
bool operator==(const QString &other) const
ProString & setSource(int id)
ProString(const QStringBuilder< A, B > &str)
bool startsWith(const QStringBuilder< A, B > &str)
bool startsWith(const char *sub, Qt::CaseSensitivity cs=Qt::CaseSensitive) const
int lastIndexOf(const char *s, int from=-1, Qt::CaseSensitivity cs=Qt::CaseSensitive) const
friend QString operator+(const ProString &one, const ProString &two)
ProString & operator+=(const char *other)
ProString trimmed() const
bool operator==(QLatin1String other) const
bool endsWith(const char *sub, Qt::CaseSensitivity cs=Qt::CaseSensitive) const
ProString left(int len) const
ALWAYS_INLINE const ProKey & toKey() const
ProString & operator=(const ProString &)=default
ProString & append(const ProString &other, bool *pending=nullptr)
ProString & operator+=(const ProString &other)
bool endsWith(QChar c, Qt::CaseSensitivity cs=Qt::CaseSensitive) const
bool contains(const char *s, Qt::CaseSensitivity cs=Qt::CaseSensitive) const
ProString & append(const QString &other)
bool operator!=(const ProString &other) const
bool operator==(QStringView other) const
bool endsWith(const ProString &sub, Qt::CaseSensitivity cs=Qt::CaseSensitive) const
ProString & append(const char *other)
bool startsWith(const QString &sub, Qt::CaseSensitivity cs=Qt::CaseSensitive) const
short toShort(bool *ok=nullptr, int base=10) const
void removeAll(const ProString &str)
bool contains(const QString &str, Qt::CaseSensitivity cs=Qt::CaseSensitive) const
ProStringList & operator<<(const ProString &str)
QString join(const ProString &sep) const
void insertUnique(const ProStringList &value)
QString join(const QStringBuilder< A, B > &str)
void removeEach(const ProStringList &value)
ProStringList(const ProString &str)
bool contains(const ProString &str, Qt::CaseSensitivity cs=Qt::CaseSensitive) const
QStringList toQStringList() const
ProStringRoUser(const ProString &ps, QString &rs)
ProStringRoUser(QString &rs)
QString & set(const ProString &ps)
QString & set(const ProString &ps)
ProStringRwUser(QString &rs)
ProString extract(const QString &s) const
ProStringRwUser(const ProString &ps, QString &rs)
ProString extract(const QString &s, const ProStringRwUser &other) const
The QAtomicInt class provides platform-independent atomic operations on int.
The QByteArray class provides an array of bytes.
const QByteArray operator+(const QByteArray &a1, const QByteArray &a2)
The QChar class provides a 16-bit Unicode character.
operator<<(QDataStream &ds, qfloat16 f)
The QDebug class provides an output stream for debugging information.
template< typename Enum > size_t qHash(QFlags< Enum > flags, size_t seed=0) noexcept
The QLatin1String class provides a thin wrapper around an US-ASCII/Latin-1 encoded string literal.
qsizetype size() const noexcept
void remove(qsizetype i, qsizetype n=1)
QList< T > & operator<<(parameter_type t)
The QString class provides a Unicode character string.
const QChar * constData() const
The QStringList class provides a list of strings.
The QStringView class provides a unified view on UTF-16 strings with a read-only subset of the QStrin...
bool startsWith(QStringView s, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
QByteArray toLatin1() const
bool endsWith(QStringView s, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
int toInt(bool *ok=nullptr, int base=10) const
qlonglong toLongLong(bool *ok=nullptr, int base=10) const
int compare(QStringView other, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
short toShort(bool *ok=nullptr, int base=10) const
constexpr QStringView mid(qsizetype pos, qsizetype n=-1) const noexcept
qsizetype lastIndexOf(QChar c, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
qsizetype indexOf(QChar c, qsizetype from=0, Qt::CaseSensitivity cs=Qt::CaseSensitive) const noexcept
The QTextStream class provides a convenient interface for reading and writing text.
QRhiGraphicsPipeline * ps
Q_DECLARE_TYPEINFO(ProString, Q_RELOCATABLE_TYPE)
QString & operator+=(QString &that, const ProString &other)
QMap< ProKey, ProStringList > ProValueMap
DBusConnection const char DBusError DBusBusType DBusError return DBusConnection DBusHandleMessageFunction void DBusFreeFunction return DBusConnection return DBusConnection return const char DBusError return DBusConnection DBusMessage dbus_uint32_t return DBusConnection dbus_bool_t DBusConnection DBusAddWatchFunction DBusRemoveWatchFunction DBusWatchToggledFunction void DBusFreeFunction return DBusConnection DBusDispatchStatusFunction void DBusFreeFunction DBusTimeout return DBusTimeout return DBusWatch return DBusWatch unsigned int return DBusError const DBusError return const DBusMessage return DBusMessage return DBusMessage return DBusMessage return DBusMessage return DBusMessage return DBusMessageIter int const void return DBusMessageIter DBusMessageIter * sub
DBusConnection const char DBusError DBusBusType DBusError return DBusConnection DBusHandleMessageFunction void DBusFreeFunction return DBusConnection return DBusConnection return const char DBusError return DBusConnection DBusMessage dbus_uint32_t return DBusConnection dbus_bool_t DBusConnection DBusAddWatchFunction DBusRemoveWatchFunction DBusWatchToggledFunction void DBusFreeFunction return DBusConnection DBusDispatchStatusFunction void DBusFreeFunction DBusTimeout return DBusTimeout return DBusWatch return DBusWatch unsigned int return DBusError const DBusError return const DBusMessage return DBusMessage return DBusMessage return DBusMessage return DBusMessage return DBusMessage return DBusMessageIter int const void return DBusMessageIter DBusMessageIter return DBusMessageIter void DBusMessageIter void int return DBusMessage DBusMessageIter return DBusMessageIter return DBusMessageIter DBusMessageIter const char const char const char const char return DBusMessage return DBusMessage const char return DBusMessage dbus_bool_t return DBusMessage dbus_uint32_t return DBusMessage return DBusPendingCall * pending
EGLOutputLayerEXT EGLint EGLAttrib value
GLenum GLuint GLenum GLsizei length
GLboolean GLboolean GLboolean GLboolean a
[7]
GLenum GLuint GLintptr offset
QTextStream out(stdout)
[7]
QHash< ProKey, ProFunctionDef > replaceFunctions
QHash< ProKey, ProFunctionDef > testFunctions
static int size(const ProKey &a)
static void appendTo(const ProKey &a, QChar *&out)
static void appendTo(const ProString &a, QChar *&out)
static int size(const ProString &a)