]> git.saurik.com Git - wxWidgets.git/commitdiff
wxLongLong to wxString operators.
authorWłodzimierz Skiba <abx@abx.art.pl>
Mon, 27 Dec 2004 18:57:21 +0000 (18:57 +0000)
committerWłodzimierz Skiba <abx@abx.art.pl>
Mon, 27 Dec 2004 18:57:21 +0000 (18:57 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31153 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

include/wx/longlong.h
src/common/longlong.cpp
tests/longlong/longlongtest.cpp

index 07e878184eca84beff9b71c8ac235d79e47e6da3..1a006e757c5419a6aa5357650d2e218689265080 100644 (file)
@@ -304,6 +304,8 @@ public:
     friend wxSTD ostream& operator<<(wxSTD ostream&, const wxLongLongNative&);
 #endif
 
+    friend wxString& operator<<(wxString&, const wxLongLongNative&);
+
 private:
     wxLongLong_t  m_ll;
 };
@@ -487,6 +489,8 @@ public:
     friend wxSTD ostream& operator<<(wxSTD ostream&, const wxULongLongNative&);
 #endif
 
+    friend wxString& operator<<(wxString&, const wxULongLongNative&);
+
 private:
     unsigned wxLongLong_t  m_ll;
 };
@@ -679,6 +683,8 @@ public:
     friend wxSTD ostream& operator<<(wxSTD ostream&, const wxLongLongWx&);
 #endif // wxUSE_STD_IOSTREAM
 
+    friend wxString& operator<<(wxString&, const wxLongLongWx&);
+
 private:
     // long is at least 32 bits, so represent our 64bit number as 2 longs
 
@@ -861,6 +867,8 @@ public:
     friend wxSTD ostream& operator<<(wxSTD ostream&, const wxULongLongWx&);
 #endif // wxUSE_STD_IOSTREAM
 
+    friend wxString& operator<<(wxString&, const wxULongLongWx&);
+
 private:
     // long is at least 32 bits, so represent our 64bit number as 2 longs
 
index 6babb4eef75809fe2e801f874ba1120176fcc5a0..63db358fff4781960a0aa852816d1e80a2026923 100644 (file)
@@ -1162,4 +1162,14 @@ wxSTD ostream& operator<< (wxSTD ostream& o, const wxULongLong& ll)
 
 #endif // wxUSE_STD_IOSTREAM
 
+wxString& operator<< (wxString& s, const wxLongLong& ll)
+{
+    return s << ll.ToString();
+}
+
+wxString& operator<< (wxString& s, const wxULongLong& ll)
+{
+    return s << ll.ToString();
+}
+
 #endif // wxUSE_LONGLONG
index f93030996a45922f13f2afd9782b761bb8771f74..5b7920bf879990c03990d53ea10a5cebed698f0a 100644 (file)
@@ -240,30 +240,30 @@ void LongLongTestCase::BitOperations()
         for ( size_t n = 0; n < 33; n++ )
         {
             wxLongLong b(a.GetHi(), a.GetLo()), c, d = b, e;
-            d >>= n; 
-            c = b >> n; 
+            d >>= n;
+            c = b >> n;
             CPPUNIT_ASSERT( c == d );
-            d <<= n; 
-            e = c << n; 
+            d <<= n;
+            e = c << n;
             CPPUNIT_ASSERT( d == e );
 
 #if wxUSE_LONGLONG_WX
             wxLongLongWx b1(a.GetHi(), a.GetLo()), c1, d1 = b1, e1;
-            d1 >>= n; 
-            c1 = b1 >> n; 
+            d1 >>= n;
+            c1 = b1 >> n;
             CPPUNIT_ASSERT( c1 == d1 );
-            d1 <<= n; 
-            e1 = c1 << n; 
+            d1 <<= n;
+            e1 = c1 << n;
             CPPUNIT_ASSERT( d1 == e1 );
 #endif
 
 #if wxUSE_LONGLONG_NATIVE
             wxLongLongNative b2(a.GetHi(), a.GetLo()), c2, d2 = b2, e2;
-            d2 >>= n; 
-            c2 = b2 >> n; 
+            d2 >>= n;
+            c2 = b2 >> n;
             CPPUNIT_ASSERT( c2 == d2 );
-            d2 <<= n; 
-            e2 = c2 << n; 
+            d2 <<= n;
+            e2 = c2 << n;
             CPPUNIT_ASSERT( d2 == e2 );
 #endif
         }
@@ -281,6 +281,10 @@ void LongLongTestCase::ToString()
         s2 = a.ToString();
         CPPUNIT_ASSERT( s1 == s2 );
 
+        s2 = wxEmptyString;
+        s2 << a;
+        CPPUNIT_ASSERT( s1 == s2 );
+
 #if wxUSE_LONGLONG_WX
         wxLongLongWx a1 = testLongs[n];
         s2 = a1.ToString();