Bug 1321412 - Add an operator<< to BaseSize. r=kats draft
authorBotond Ballo <botond@mozilla.com>
Fri, 25 Nov 2016 20:46:58 -0500
changeset 448049 4a5a3f09ab0008d7e736cedb817505e6e45b054c
parent 448048 1d8e888649c10f8f044f475095cb592538992946
child 448050 870d018a761cf77a8ed0f698553774945ddce1c6
push id38244
push userbballo@mozilla.com
push dateFri, 09 Dec 2016 01:03:26 +0000
reviewerskats
bugs1321412
milestone53.0a1
Bug 1321412 - Add an operator<< to BaseSize. r=kats MozReview-Commit-ID: 4zVkyafxtfG
gfx/2d/BaseSize.h
--- a/gfx/2d/BaseSize.h
+++ b/gfx/2d/BaseSize.h
@@ -2,16 +2,18 @@
  * This Source Code Form is subject to the terms of the Mozilla Public
  * License, v. 2.0. If a copy of the MPL was not distributed with this
  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
 
 #ifndef MOZILLA_GFX_BASESIZE_H_
 #define MOZILLA_GFX_BASESIZE_H_
 
 #include <algorithm>
+#include <ostream>
+
 #include "mozilla/Attributes.h"
 
 namespace mozilla {
 namespace gfx {
 
 /**
  * Do not use this class directly. Subclass it, pass that subclass as the
  * Sub parameter, and only use that subclass. This allows methods to safely
@@ -98,14 +100,19 @@ struct BaseSize {
     return Sub(std::min(aA.width, aB.width),
                std::min(aA.height, aB.height));
   }
 
   friend Sub Max(const Sub& aA, const Sub& aB) {
     return Sub(std::max(aA.width, aB.width),
                std::max(aA.height, aB.height));
   }
+
+  friend std::ostream& operator<<(std::ostream& aStream,
+      const BaseSize<T, Sub>& aSize) {
+    return aStream << aSize.width << " x " << aSize.height;
+  }
 };
 
 } // namespace gfx
 } // namespace mozilla
 
 #endif /* MOZILLA_GFX_BASESIZE_H_ */