Z_END_NAMESPACE QDebug operator<<(QDebug deg, const ZVariant &var) { deg.nospace() << "Variant(" << var.typeName() << ", "; switch(var.type()) { case ZVariant::Object: deg.nospace() << var.toObject(); break; case ZVariant::Function: deg.nospace() << var.toFunction(); break; case ZVariant::Undefined: deg.nospace() << var.typeName(); break; case ZVariant::List: case ZVariant::Tuple: deg.noquote() << var.toList(); break; case ZVariant::Int: case ZVariant::Double: deg.noquote() << var.toDouble(); break; default: deg.nospace() << var.toString(); break; } deg.nospace() << ")"; return deg; }
QDebug operator<<(QDebug d, const mpq_rational& r) { d.nospace(); d.noquote(); stringstream s; s << r; d << QString::fromStdString(s.str()); return d.resetFormat(); }
QDebug operator<<(QDebug dbg, const QFileInfo &fi) { QDebugStateSaver saver(dbg); dbg.nospace(); dbg.noquote(); dbg << "QFileInfo(" << QDir::toNativeSeparators(fi.filePath()) << ')'; return dbg; }
QDebug operator<<(QDebug dbg, const QSqlDatabase &d) { QDebugStateSaver saver(dbg); dbg.nospace(); dbg.noquote(); if (!d.isValid()) { dbg << "QSqlDatabase(invalid)"; return dbg; } dbg << "QSqlDatabase(driver=\"" << d.driverName() << "\", database=\"" << d.databaseName() << "\", host=\"" << d.hostName() << "\", port=" << d.port() << ", user=\"" << d.userName() << "\", open=" << d.isOpen() << ')'; return dbg; }
QDebug operator<<(QDebug debug, const QTouchDevice *device) { QDebugStateSaver saver(debug); debug.nospace(); debug.noquote(); debug << "QTouchDevice("; if (device) { debug << '"' << device->name() << "\", type="; QtDebugUtils::formatQEnum(debug, device->type()); debug << ", capabilities="; QtDebugUtils::formatQFlags(debug, device->capabilities()); debug << ", maximumTouchPoints=" << device->maximumTouchPoints(); } else { debug << '0'; } debug << ')'; return debug; }
QDebug operator<<(QDebug debug, const QWinJumpListCategory *category) { QDebugStateSaver saver(debug); debug.nospace(); debug.noquote(); debug << "QWinJumpListCategory("; if (category) { debug << "type=" << category->type() << ", isVisible=" << category->isVisible() << ", title=\"" << category->title() << "\", items=" << category->items(); } else { debug << '0'; } debug << ')'; return debug; return debug; }