12#include "kasync_export.h"
14#include <QLoggingCategory>
15#include <QStringBuilder>
24Q_DECLARE_LOGGING_CATEGORY(Debug)
25Q_DECLARE_LOGGING_CATEGORY(Trace)
27KASYNC_EXPORT
QString demangleName(
const char *name);
34class KASYNC_EXPORT Tracer
37 explicit Tracer(Private::Execution *execution);
48 Private::Execution *mExecution;
57 QString storeExecutorNameExpanded() {
58 return KAsync::demangleName(
typeid(T).
name());
61 template<
typename T,
typename ... Tail>
62 auto storeExecutorNameExpanded() -> std::enable_if_t<
sizeof ... (Tail) != 0,
QString>
64 return storeExecutorNameExpanded<T>() % QStringLiteral(
", ") % storeExecutorNameExpanded<Tail ...>();
67 #define STORE_EXECUTOR_NAME(name, ...) \
68 ExecutorBase::mExecutorName = QStringLiteral(name "<") % storeExecutorNameExpanded<__VA_ARGS__>() % QStringLiteral(">")
70 #define STORE_EXECUTOR_NAME(...)
QString name(StandardAction id)
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Mon Nov 18 2024 12:10:09 by
doxygen 1.12.0 written
by
Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.