From d3dfb8d8f13b8e878778ebf4980a3b192b4b7a08 Mon Sep 17 00:00:00 2001 From: Marc Mutz Date: Thu, 16 Apr 2015 11:18:21 +0200 Subject: QSignalBlocker: mark all functions as noexcept Consequently, mark also QObject::isSignalsBlocked() and QObject::blockSignals() as noexcept. Change-Id: Iaf44674bbf54eeb2bb5f267eb7caa916eccbf7fb Reviewed-by: Olivier Goffart (Woboq GmbH) --- src/corelib/kernel/qobject.cpp | 2 +- src/corelib/kernel/qobject.h | 28 ++++++++++++++-------------- 2 files changed, 15 insertions(+), 15 deletions(-) (limited to 'src/corelib/kernel') diff --git a/src/corelib/kernel/qobject.cpp b/src/corelib/kernel/qobject.cpp index 774e46ea33..1836405b9c 100644 --- a/src/corelib/kernel/qobject.cpp +++ b/src/corelib/kernel/qobject.cpp @@ -1395,7 +1395,7 @@ bool QObject::eventFilter(QObject * /* watched */, QEvent * /* event */) \sa signalsBlocked() */ -bool QObject::blockSignals(bool block) +bool QObject::blockSignals(bool block) Q_DECL_NOTHROW { Q_D(QObject); bool previous = d->blockSig; diff --git a/src/corelib/kernel/qobject.h b/src/corelib/kernel/qobject.h index 42d18d6c41..ecea13fc4a 100644 --- a/src/corelib/kernel/qobject.h +++ b/src/corelib/kernel/qobject.h @@ -137,8 +137,8 @@ public: inline bool isWidgetType() const { return d_ptr->isWidget; } inline bool isWindowType() const { return d_ptr->isWindow; } - inline bool signalsBlocked() const { return d_ptr->blockSig; } - bool blockSignals(bool b); + inline bool signalsBlocked() const Q_DECL_NOTHROW { return d_ptr->blockSig; } + bool blockSignals(bool b) Q_DECL_NOTHROW; QThread *thread() const; void moveToThread(QThread *thread); @@ -552,17 +552,17 @@ Q_CORE_EXPORT QDebug operator<<(QDebug, const QObject *); class QSignalBlocker { public: - inline explicit QSignalBlocker(QObject *o); - inline explicit QSignalBlocker(QObject &o); + inline explicit QSignalBlocker(QObject *o) Q_DECL_NOTHROW; + inline explicit QSignalBlocker(QObject &o) Q_DECL_NOTHROW; inline ~QSignalBlocker(); #ifdef Q_COMPILER_RVALUE_REFS - inline QSignalBlocker(QSignalBlocker &&other); - inline QSignalBlocker &operator=(QSignalBlocker &&other); + inline QSignalBlocker(QSignalBlocker &&other) Q_DECL_NOTHROW; + inline QSignalBlocker &operator=(QSignalBlocker &&other) Q_DECL_NOTHROW; #endif - inline void reblock(); - inline void unblock(); + inline void reblock() Q_DECL_NOTHROW; + inline void unblock() Q_DECL_NOTHROW; private: Q_DISABLE_COPY(QSignalBlocker) QObject * m_o; @@ -570,20 +570,20 @@ private: bool m_inhibited; }; -QSignalBlocker::QSignalBlocker(QObject *o) +QSignalBlocker::QSignalBlocker(QObject *o) Q_DECL_NOTHROW : m_o(o), m_blocked(o && o->blockSignals(true)), m_inhibited(false) {} -QSignalBlocker::QSignalBlocker(QObject &o) +QSignalBlocker::QSignalBlocker(QObject &o) Q_DECL_NOTHROW : m_o(&o), m_blocked(o.blockSignals(true)), m_inhibited(false) {} #ifdef Q_COMPILER_RVALUE_REFS -QSignalBlocker::QSignalBlocker(QSignalBlocker &&other) +QSignalBlocker::QSignalBlocker(QSignalBlocker &&other) Q_DECL_NOTHROW : m_o(other.m_o), m_blocked(other.m_blocked), m_inhibited(other.m_inhibited) @@ -591,7 +591,7 @@ QSignalBlocker::QSignalBlocker(QSignalBlocker &&other) other.m_o = 0; } -QSignalBlocker &QSignalBlocker::operator=(QSignalBlocker &&other) +QSignalBlocker &QSignalBlocker::operator=(QSignalBlocker &&other) Q_DECL_NOTHROW { if (this != &other) { // if both *this and other block the same object's signals: @@ -614,13 +614,13 @@ QSignalBlocker::~QSignalBlocker() m_o->blockSignals(m_blocked); } -void QSignalBlocker::reblock() +void QSignalBlocker::reblock() Q_DECL_NOTHROW { if (m_o) m_o->blockSignals(true); m_inhibited = false; } -void QSignalBlocker::unblock() +void QSignalBlocker::unblock() Q_DECL_NOTHROW { if (m_o) m_o->blockSignals(m_blocked); m_inhibited = true; -- cgit v1.2.3