summaryrefslogtreecommitdiffstats
path: root/src/corelib/tools/qrect.cpp
diff options
context:
space:
mode:
authorMarc Mutz <marc.mutz@kdab.com>2014-12-26 21:43:40 +0100
committerMarc Mutz <marc.mutz@kdab.com>2015-01-08 00:38:55 +0100
commita92dbddac7ba8d72301a43f3e934bccb2822670c (patch)
tree84047ac9a4499538dbe59eed0494e615c5ebed17 /src/corelib/tools/qrect.cpp
parent63cd16d03c7f1362018cd06a7373ecafcd3383c0 (diff)
QRect: plaster API with Q_DECL_NOTHROW
This is mostly straight-forward, but some things are worth noting: 1. Yes, this is necessary. The noexcept operator looks for noexcept tagging, not at the contents of the function to determine whether to return true. The more conditionally-noexcept functions are used, the more important it becomes that low-level classes are correctly marked noexcept. In that, it is like constexpr. 2. In accordance with the rules governing noexcept specifications for the standard library itself, the get*()-family of functions are not marked as noexcept, since they have preconditions and thus a narrow contract. Narrow-contract functions should not be noexcept. All other functions have wide contracts (ie. no preconditions). Change-Id: I82e5d34a0293d73ddc98ee231e17e26463ab6686 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Diffstat (limited to 'src/corelib/tools/qrect.cpp')
-rw-r--r--src/corelib/tools/qrect.cpp26
1 files changed, 13 insertions, 13 deletions
diff --git a/src/corelib/tools/qrect.cpp b/src/corelib/tools/qrect.cpp
index dc46f85fb5..25e86d9160 100644
--- a/src/corelib/tools/qrect.cpp
+++ b/src/corelib/tools/qrect.cpp
@@ -295,7 +295,7 @@ QT_BEGIN_NAMESPACE
\sa isValid(), isEmpty()
*/
-QRect QRect::normalized() const
+QRect QRect::normalized() const Q_DECL_NOTHROW
{
QRect r;
if (x2 < x1 - 1) { // swap bad x values
@@ -804,7 +804,7 @@ QRect QRect::normalized() const
\sa intersects()
*/
-bool QRect::contains(const QPoint &p, bool proper) const
+bool QRect::contains(const QPoint &p, bool proper) const Q_DECL_NOTHROW
{
int l, r;
if (x2 < x1 - 1) {
@@ -868,7 +868,7 @@ bool QRect::contains(const QPoint &p, bool proper) const
rectangle (not on the edge).
*/
-bool QRect::contains(const QRect &r, bool proper) const
+bool QRect::contains(const QRect &r, bool proper) const Q_DECL_NOTHROW
{
if (isNull() || r.isNull())
return false;
@@ -946,7 +946,7 @@ bool QRect::contains(const QRect &r, bool proper) const
\sa operator|=(), united()
*/
-QRect QRect::operator|(const QRect &r) const
+QRect QRect::operator|(const QRect &r) const Q_DECL_NOTHROW
{
if (isNull())
return r;
@@ -1017,7 +1017,7 @@ QRect QRect::operator|(const QRect &r) const
\sa operator&=(), intersected()
*/
-QRect QRect::operator&(const QRect &r) const
+QRect QRect::operator&(const QRect &r) const Q_DECL_NOTHROW
{
if (isNull() || r.isNull())
return QRect();
@@ -1096,7 +1096,7 @@ QRect QRect::operator&(const QRect &r) const
\sa contains()
*/
-bool QRect::intersects(const QRect &r) const
+bool QRect::intersects(const QRect &r) const Q_DECL_NOTHROW
{
if (isNull() || r.isNull())
return false;
@@ -1522,7 +1522,7 @@ QDebug operator<<(QDebug dbg, const QRect &r)
\sa isValid(), isEmpty()
*/
-QRectF QRectF::normalized() const
+QRectF QRectF::normalized() const Q_DECL_NOTHROW
{
QRectF r = *this;
if (r.w < 0) {
@@ -1935,7 +1935,7 @@ QRectF QRectF::normalized() const
\sa intersects()
*/
-bool QRectF::contains(const QPointF &p) const
+bool QRectF::contains(const QPointF &p) const Q_DECL_NOTHROW
{
qreal l = xp;
qreal r = xp;
@@ -1981,7 +1981,7 @@ bool QRectF::contains(const QPointF &p) const
otherwise returns \c false.
*/
-bool QRectF::contains(const QRectF &r) const
+bool QRectF::contains(const QRectF &r) const Q_DECL_NOTHROW
{
qreal l1 = xp;
qreal r1 = xp;
@@ -2119,7 +2119,7 @@ bool QRectF::contains(const QRectF &r) const
\sa united(), operator|=()
*/
-QRectF QRectF::operator|(const QRectF &r) const
+QRectF QRectF::operator|(const QRectF &r) const Q_DECL_NOTHROW
{
if (isNull())
return r;
@@ -2188,7 +2188,7 @@ QRectF QRectF::operator|(const QRectF &r) const
\sa operator&=(), intersected()
*/
-QRectF QRectF::operator&(const QRectF &r) const
+QRectF QRectF::operator&(const QRectF &r) const Q_DECL_NOTHROW
{
qreal l1 = xp;
qreal r1 = xp;
@@ -2273,7 +2273,7 @@ QRectF QRectF::operator&(const QRectF &r) const
\sa contains()
*/
-bool QRectF::intersects(const QRectF &r) const
+bool QRectF::intersects(const QRectF &r) const Q_DECL_NOTHROW
{
qreal l1 = xp;
qreal r1 = xp;
@@ -2340,7 +2340,7 @@ bool QRectF::intersects(const QRectF &r) const
\sa toRect()
*/
-QRect QRectF::toAlignedRect() const
+QRect QRectF::toAlignedRect() const Q_DECL_NOTHROW
{
int xmin = int(qFloor(xp));
int xmax = int(qCeil(xp + w));