summaryrefslogtreecommitdiffstats
path: root/src/corelib/kernel
diff options
context:
space:
mode:
authorMarc Mutz <marc.mutz@kdab.com>2015-04-16 11:18:21 +0200
committerMarc Mutz <marc.mutz@kdab.com>2015-04-16 09:46:09 +0000
commitd3dfb8d8f13b8e878778ebf4980a3b192b4b7a08 (patch)
tree78d1d2bca18cd58ea46336aca1532a4f8e12b1ce /src/corelib/kernel
parent198190b76baffce9b983d03749e64af6f8428e49 (diff)
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) <ogoffart@woboq.com>
Diffstat (limited to 'src/corelib/kernel')
-rw-r--r--src/corelib/kernel/qobject.cpp2
-rw-r--r--src/corelib/kernel/qobject.h28
2 files changed, 15 insertions, 15 deletions
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;