diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/archive.cpp | 16 | ||||
-rw-r--r-- | src/archive.h | 5 | ||||
-rw-r--r-- | src/exceptionbase.cpp | 5 | ||||
-rw-r--r-- | src/minimacro.cpp | 8 | ||||
-rw-r--r-- | src/plugger.h | 7 | ||||
-rw-r--r-- | src/serversocket.cpp | 2 | ||||
-rw-r--r-- | src/tests/fstring.cpp | 4 | ||||
-rw-r--r-- | src/trace.cpp | 8 | ||||
-rw-r--r-- | src/trace.h | 21 | ||||
-rw-r--r-- | src/unit/archive.cpp | 111 | ||||
-rw-r--r-- | src/util.h | 1 |
11 files changed, 152 insertions, 36 deletions
diff --git a/src/archive.cpp b/src/archive.cpp index 610dc7b..d6ad18d 100644 --- a/src/archive.cpp +++ b/src/archive.cpp | |||
@@ -89,12 +89,12 @@ Bu::Archive &Bu::Archive::operator<<(uint64_t p) | |||
89 | { | 89 | { |
90 | write( &p, sizeof(p) ); | 90 | write( &p, sizeof(p) ); |
91 | return *this; | 91 | return *this; |
92 | } | 92 | }/* |
93 | Bu::Archive &Bu::Archive::operator<<(long p) | 93 | Bu::Archive &Bu::Archive::operator<<(long p) |
94 | { | 94 | { |
95 | write( &p, sizeof(p) ); | 95 | write( &p, sizeof(p) ); |
96 | return *this; | 96 | return *this; |
97 | } | 97 | }*/ |
98 | Bu::Archive &Bu::Archive::operator<<(float p) | 98 | Bu::Archive &Bu::Archive::operator<<(float p) |
99 | { | 99 | { |
100 | write( &p, sizeof(p) ); | 100 | write( &p, sizeof(p) ); |
@@ -155,12 +155,12 @@ Bu::Archive &Bu::Archive::operator>>(uint64_t &p) | |||
155 | { | 155 | { |
156 | read( &p, sizeof(p) ); | 156 | read( &p, sizeof(p) ); |
157 | return *this; | 157 | return *this; |
158 | } | 158 | }/* |
159 | Bu::Archive &Bu::Archive::operator>>(long &p) | 159 | Bu::Archive &Bu::Archive::operator>>(long &p) |
160 | { | 160 | { |
161 | read( &p, sizeof(p) ); | 161 | read( &p, sizeof(p) ); |
162 | return *this; | 162 | return *this; |
163 | } | 163 | }*/ |
164 | Bu::Archive &Bu::Archive::operator>>(float &p) | 164 | Bu::Archive &Bu::Archive::operator>>(float &p) |
165 | { | 165 | { |
166 | read( &p, sizeof(p) ); | 166 | read( &p, sizeof(p) ); |
@@ -371,9 +371,9 @@ Bu::Archive &Bu::operator>>( Bu::Archive &ar, std::string &s ) | |||
371 | 371 | ||
372 | uint32_t Bu::Archive::getID( const void *ptr ) | 372 | uint32_t Bu::Archive::getID( const void *ptr ) |
373 | { | 373 | { |
374 | if( hPtrID.has( (int)ptr ) ) | 374 | if( hPtrID.has( (ptrdiff_t)ptr ) ) |
375 | return hPtrID.get( (int)ptr ); | 375 | return hPtrID.get( (ptrdiff_t)ptr ); |
376 | hPtrID.insert( (int)ptr, nNextID ); | 376 | hPtrID.insert( (ptrdiff_t)ptr, nNextID ); |
377 | return nNextID++; | 377 | return nNextID++; |
378 | } | 378 | } |
379 | 379 | ||
@@ -393,7 +393,7 @@ void Bu::Archive::assocPtrID( void **ptr, uint32_t id ) | |||
393 | 393 | ||
394 | void Bu::Archive::readID( const void *ptr, uint32_t id ) | 394 | void Bu::Archive::readID( const void *ptr, uint32_t id ) |
395 | { | 395 | { |
396 | hPtrID.insert( id, (int)ptr ); | 396 | hPtrID.insert( id, (ptrdiff_t)ptr ); |
397 | 397 | ||
398 | if( hPtrDest.has( id ) ) | 398 | if( hPtrDest.has( id ) ) |
399 | { | 399 | { |
diff --git a/src/archive.h b/src/archive.h index 464f85f..31683bb 100644 --- a/src/archive.h +++ b/src/archive.h | |||
@@ -14,6 +14,7 @@ | |||
14 | #include "bu/hash.h" | 14 | #include "bu/hash.h" |
15 | #include "bu/list.h" | 15 | #include "bu/list.h" |
16 | #include "bu/set.h" | 16 | #include "bu/set.h" |
17 | #include "bu/util.h" | ||
17 | 18 | ||
18 | namespace Bu | 19 | namespace Bu |
19 | { | 20 | { |
@@ -96,7 +97,7 @@ namespace Bu | |||
96 | virtual Archive &operator<<(uint16_t); | 97 | virtual Archive &operator<<(uint16_t); |
97 | virtual Archive &operator<<(uint32_t); | 98 | virtual Archive &operator<<(uint32_t); |
98 | virtual Archive &operator<<(uint64_t); | 99 | virtual Archive &operator<<(uint64_t); |
99 | virtual Archive &operator<<(long); | 100 | // virtual Archive &operator<<(long); |
100 | virtual Archive &operator<<(float); | 101 | virtual Archive &operator<<(float); |
101 | virtual Archive &operator<<(double); | 102 | virtual Archive &operator<<(double); |
102 | virtual Archive &operator<<(long double); | 103 | virtual Archive &operator<<(long double); |
@@ -110,7 +111,7 @@ namespace Bu | |||
110 | virtual Archive &operator>>(uint16_t &); | 111 | virtual Archive &operator>>(uint16_t &); |
111 | virtual Archive &operator>>(uint32_t &); | 112 | virtual Archive &operator>>(uint32_t &); |
112 | virtual Archive &operator>>(uint64_t &); | 113 | virtual Archive &operator>>(uint64_t &); |
113 | virtual Archive &operator>>(long &); | 114 | // virtual Archive &operator>>(long &); |
114 | virtual Archive &operator>>(float &); | 115 | virtual Archive &operator>>(float &); |
115 | virtual Archive &operator>>(double &); | 116 | virtual Archive &operator>>(double &); |
116 | virtual Archive &operator>>(long double &); | 117 | virtual Archive &operator>>(long double &); |
diff --git a/src/exceptionbase.cpp b/src/exceptionbase.cpp index cea779d..9515e2d 100644 --- a/src/exceptionbase.cpp +++ b/src/exceptionbase.cpp | |||
@@ -55,7 +55,10 @@ void Bu::ExceptionBase::setWhat( const char *lpFormat, va_list &vargs ) | |||
55 | if( sWhat ) delete[] sWhat; | 55 | if( sWhat ) delete[] sWhat; |
56 | int nSize; | 56 | int nSize; |
57 | 57 | ||
58 | nSize = vsnprintf( NULL, 0, lpFormat, vargs ); | 58 | va_list vargs2; |
59 | va_copy( vargs2, vargs ); | ||
60 | nSize = vsnprintf( NULL, 0, lpFormat, vargs2 ); | ||
61 | va_end( vargs2 ); | ||
59 | sWhat = new char[nSize+1]; | 62 | sWhat = new char[nSize+1]; |
60 | vsnprintf( sWhat, nSize+1, lpFormat, vargs ); | 63 | vsnprintf( sWhat, nSize+1, lpFormat, vargs ); |
61 | } | 64 | } |
diff --git a/src/minimacro.cpp b/src/minimacro.cpp index c6a868f..5fd7333 100644 --- a/src/minimacro.cpp +++ b/src/minimacro.cpp | |||
@@ -62,7 +62,7 @@ Bu::FString Bu::MiniMacro::parse( const Bu::FString &sIn ) | |||
62 | } | 62 | } |
63 | } | 63 | } |
64 | 64 | ||
65 | iLastPos = (int)sCur - (int)sIn.getStr(); | 65 | iLastPos = (ptrdiff_t)sCur - (ptrdiff_t)sIn.getStr(); |
66 | 66 | ||
67 | return sOut; | 67 | return sOut; |
68 | } | 68 | } |
@@ -76,7 +76,7 @@ Bu::FString Bu::MiniMacro::parseRepl() | |||
76 | for(; *sNext != ':' && *sNext != '}' && *sNext != '\0'; sNext++ ); | 76 | for(; *sNext != ':' && *sNext != '}' && *sNext != '\0'; sNext++ ); |
77 | if( *sNext == '\0' ) | 77 | if( *sNext == '\0' ) |
78 | break; | 78 | break; |
79 | Bu::FString sName( sCur, (int)sNext-(int)sCur ); | 79 | Bu::FString sName( sCur, (ptrdiff_t)sNext-(ptrdiff_t)sCur ); |
80 | if( bIsFirst ) | 80 | if( bIsFirst ) |
81 | { | 81 | { |
82 | sOut = hVars[sName]; | 82 | sOut = hVars[sName]; |
@@ -116,7 +116,7 @@ Bu::FString Bu::MiniMacro::parseCmd() | |||
116 | for(; *sNext != ':' && *sNext != '}' && *sNext != '\0'; sNext++ ); | 116 | for(; *sNext != ':' && *sNext != '}' && *sNext != '\0'; sNext++ ); |
117 | if( *sNext != '\0' ) | 117 | if( *sNext != '\0' ) |
118 | { | 118 | { |
119 | Bu::FString sName( sCur, (int)sNext-(int)sCur ); | 119 | Bu::FString sName( sCur, (ptrdiff_t)sNext-(ptrdiff_t)sCur ); |
120 | if( sName == "end" ) | 120 | if( sName == "end" ) |
121 | { | 121 | { |
122 | sCur = sNext; | 122 | sCur = sNext; |
@@ -152,7 +152,7 @@ Bu::FString Bu::MiniMacro::callFunc( | |||
152 | for(; *s == ' ' || *s == '\t' || *s == '\r' || *s == '\n'; s++ ); | 152 | for(; *s == ' ' || *s == '\t' || *s == '\r' || *s == '\n'; s++ ); |
153 | const char *sNext; | 153 | const char *sNext; |
154 | for( sNext = s; *sNext && *sNext != ')' && *sNext != ','; sNext++ ); | 154 | for( sNext = s; *sNext && *sNext != ')' && *sNext != ','; sNext++ ); |
155 | Bu::FString p( s, (int)sNext-(int)s ); | 155 | Bu::FString p( s, (ptrdiff_t)sNext-(ptrdiff_t)s ); |
156 | lsParams.append( p ); | 156 | lsParams.append( p ); |
157 | sNext++; | 157 | sNext++; |
158 | s = sNext; | 158 | s = sNext; |
diff --git a/src/plugger.h b/src/plugger.h index 992b541..6ae0296 100644 --- a/src/plugger.h +++ b/src/plugger.h | |||
@@ -14,6 +14,7 @@ | |||
14 | #include <dlfcn.h> | 14 | #include <dlfcn.h> |
15 | #include "bu/exceptions.h" | 15 | #include "bu/exceptions.h" |
16 | #include "bu/fstring.h" | 16 | #include "bu/fstring.h" |
17 | #include <stddef.h> | ||
17 | 18 | ||
18 | namespace Bu | 19 | namespace Bu |
19 | { | 20 | { |
@@ -86,7 +87,7 @@ namespace Bu | |||
86 | { | 87 | { |
87 | public: | 88 | public: |
88 | typedef Bu::Hash<Bu::FString, PluginReg *> PluginHash; | 89 | typedef Bu::Hash<Bu::FString, PluginReg *> PluginHash; |
89 | typedef Bu::Hash<int, void *> InstHash; | 90 | typedef Bu::Hash<ptrdiff_t, void *> InstHash; |
90 | 91 | ||
91 | public: | 92 | public: |
92 | Plugger() | 93 | Plugger() |
@@ -161,7 +162,7 @@ namespace Bu | |||
161 | return NULL; | 162 | return NULL; |
162 | 163 | ||
163 | T *p = (T *)pReg->pInfo->createPlugin(); | 164 | T *p = (T *)pReg->pInfo->createPlugin(); |
164 | hObj.insert( (int )p, pReg ); | 165 | hObj.insert( (ptrdiff_t)p, pReg ); |
165 | //printf("pReg: %08X, pPlug: %08X\n", pReg, p ); | 166 | //printf("pReg: %08X, pPlug: %08X\n", pReg, p ); |
166 | 167 | ||
167 | return p; | 168 | return p; |
@@ -181,7 +182,7 @@ namespace Bu | |||
181 | 182 | ||
182 | pReg->pInfo->destroyPlugin( pPlug ); | 183 | pReg->pInfo->destroyPlugin( pPlug ); |
183 | 184 | ||
184 | hObj.erase( (int)pPlug ); | 185 | hObj.erase( (ptrdiff_t)pPlug ); |
185 | } | 186 | } |
186 | 187 | ||
187 | void unloadAll() | 188 | void unloadAll() |
diff --git a/src/serversocket.cpp b/src/serversocket.cpp index b528b6f..30f584d 100644 --- a/src/serversocket.cpp +++ b/src/serversocket.cpp | |||
@@ -117,7 +117,7 @@ int Bu::ServerSocket::accept( int nTimeoutSec, int nTimeoutUSec ) | |||
117 | if( FD_ISSET( nServer, &fdRead ) ) | 117 | if( FD_ISSET( nServer, &fdRead ) ) |
118 | { | 118 | { |
119 | struct sockaddr_in clientname; | 119 | struct sockaddr_in clientname; |
120 | size_t size; | 120 | socklen_t size; |
121 | int nClient; | 121 | int nClient; |
122 | 122 | ||
123 | size = sizeof( clientname ); | 123 | size = sizeof( clientname ); |
diff --git a/src/tests/fstring.cpp b/src/tests/fstring.cpp index 43de18f..6288ccb 100644 --- a/src/tests/fstring.cpp +++ b/src/tests/fstring.cpp | |||
@@ -34,7 +34,7 @@ Bu::FString genThing() | |||
34 | bob += "cd "; | 34 | bob += "cd "; |
35 | bob += "efg"; | 35 | bob += "efg"; |
36 | 36 | ||
37 | printf("---bob------\n%08X: %s\n", (unsigned int)bob.getStr(), | 37 | printf("---bob------\n%08tX: %s\n", (ptrdiff_t)bob.getStr(), |
38 | bob.getStr() ); | 38 | bob.getStr() ); |
39 | return bob; | 39 | return bob; |
40 | } | 40 | } |
@@ -115,7 +115,7 @@ void doTimings() | |||
115 | delete[] buf; | 115 | delete[] buf; |
116 | } | 116 | } |
117 | 117 | ||
118 | #define pem printf("---------\n%08X: %s\n%08X: %s\n", (unsigned int)str.getStr(), str.getStr(), (unsigned int)str2.getStr(), str2.getStr() ); | 118 | #define pem printf("---------\n%08tX: %s\n%08tX: %s\n", (ptrdiff_t)str.getStr(), str.getStr(), (ptrdiff_t)str2.getStr(), str2.getStr() ); |
119 | int main( int argc, char *argv[] ) | 119 | int main( int argc, char *argv[] ) |
120 | { | 120 | { |
121 | Bu::FString fs1; | 121 | Bu::FString fs1; |
diff --git a/src/trace.cpp b/src/trace.cpp index b328565..dab53d6 100644 --- a/src/trace.cpp +++ b/src/trace.cpp | |||
@@ -58,7 +58,7 @@ template<> void Bu::__tracer_format<char>( const char &v ) | |||
58 | { | 58 | { |
59 | printf("%hhd", v ); | 59 | printf("%hhd", v ); |
60 | } | 60 | } |
61 | 61 | /* | |
62 | template<> void Bu::__tracer_format<long>( const long &v ) | 62 | template<> void Bu::__tracer_format<long>( const long &v ) |
63 | { | 63 | { |
64 | printf("%ld", v ); | 64 | printf("%ld", v ); |
@@ -67,7 +67,7 @@ template<> void Bu::__tracer_format<long>( const long &v ) | |||
67 | template<> void Bu::__tracer_format<unsigned long>( const unsigned long &v ) | 67 | template<> void Bu::__tracer_format<unsigned long>( const unsigned long &v ) |
68 | { | 68 | { |
69 | printf("%lu", v ); | 69 | printf("%lu", v ); |
70 | } | 70 | }*/ |
71 | 71 | ||
72 | template<> void Bu::__tracer_format<float>( const float &v ) | 72 | template<> void Bu::__tracer_format<float>( const float &v ) |
73 | { | 73 | { |
@@ -81,7 +81,7 @@ template<> void Bu::__tracer_format<double>( const double &v ) | |||
81 | 81 | ||
82 | template<> void Bu::__tracer_format<void *>( void * const &v ) | 82 | template<> void Bu::__tracer_format<void *>( void * const &v ) |
83 | { | 83 | { |
84 | printf("0x%08X", (unsigned int)v ); | 84 | printf("0x%08X", (ptrdiff_t)v ); |
85 | } | 85 | } |
86 | 86 | ||
87 | template<> void Bu::__tracer_format<char *>( char * const &v ) | 87 | template<> void Bu::__tracer_format<char *>( char * const &v ) |
@@ -99,7 +99,7 @@ template<> void Bu::__tracer_format<char **>( char ** const &v ) | |||
99 | 99 | ||
100 | template<> void Bu::__tracer_format<void const *>( void const * const &v ) | 100 | template<> void Bu::__tracer_format<void const *>( void const * const &v ) |
101 | { | 101 | { |
102 | printf("0x%08X", (unsigned int)v ); | 102 | printf("0x%08X", (ptrdiff_t)v ); |
103 | } | 103 | } |
104 | 104 | ||
105 | template<> void Bu::__tracer_format<char const *>( char const * const &v ) | 105 | template<> void Bu::__tracer_format<char const *>( char const * const &v ) |
diff --git a/src/trace.h b/src/trace.h index e115d66..7a1f368 100644 --- a/src/trace.h +++ b/src/trace.h | |||
@@ -10,6 +10,7 @@ | |||
10 | 10 | ||
11 | #include <stdio.h> | 11 | #include <stdio.h> |
12 | #include <stdint.h> | 12 | #include <stdint.h> |
13 | #include <stddef.h> | ||
13 | 14 | ||
14 | namespace Bu | 15 | namespace Bu |
15 | { | 16 | { |
@@ -27,7 +28,7 @@ namespace Bu | |||
27 | { \ | 28 | { \ |
28 | if( *n == ',' || *n == ')' ) \ | 29 | if( *n == ',' || *n == ')' ) \ |
29 | { \ | 30 | { \ |
30 | fwrite( s, (int)n-(int)s, 1, stdout ); \ | 31 | fwrite( s, (ptrdiff_t)n-(ptrdiff_t)s, 1, stdout ); \ |
31 | fwrite("=", 1, 1, stdout); \ | 32 | fwrite("=", 1, 1, stdout); \ |
32 | __tracer_format( vv ); \ | 33 | __tracer_format( vv ); \ |
33 | s = n; \ | 34 | s = n; \ |
@@ -42,7 +43,7 @@ namespace Bu | |||
42 | const char *s = pf; | 43 | const char *s = pf; |
43 | const char *n = pf; | 44 | const char *n = pf; |
44 | looper( v1 ); | 45 | looper( v1 ); |
45 | fwrite( s, (int)n-(int)s, 1, stdout ); | 46 | fwrite( s, (ptrdiff_t)n-(ptrdiff_t)s, 1, stdout ); |
46 | fwrite( "\n", 1, 1, stdout ); | 47 | fwrite( "\n", 1, 1, stdout ); |
47 | } | 48 | } |
48 | 49 | ||
@@ -54,7 +55,7 @@ namespace Bu | |||
54 | const char *n = pf; | 55 | const char *n = pf; |
55 | looper( v1 ); | 56 | looper( v1 ); |
56 | looper( v2 ); | 57 | looper( v2 ); |
57 | fwrite( s, (int)n-(int)s, 1, stdout ); | 58 | fwrite( s, (ptrdiff_t)n-(ptrdiff_t)s, 1, stdout ); |
58 | fwrite( "\n", 1, 1, stdout ); | 59 | fwrite( "\n", 1, 1, stdout ); |
59 | } | 60 | } |
60 | 61 | ||
@@ -67,7 +68,7 @@ namespace Bu | |||
67 | looper( v1 ); | 68 | looper( v1 ); |
68 | looper( v2 ); | 69 | looper( v2 ); |
69 | looper( v3 ); | 70 | looper( v3 ); |
70 | fwrite( s, (int)n-(int)s, 1, stdout ); | 71 | fwrite( s, (ptrdiff_t)n-(ptrdiff_t)s, 1, stdout ); |
71 | fwrite( "\n", 1, 1, stdout ); | 72 | fwrite( "\n", 1, 1, stdout ); |
72 | } | 73 | } |
73 | 74 | ||
@@ -81,7 +82,7 @@ namespace Bu | |||
81 | looper( v2 ); | 82 | looper( v2 ); |
82 | looper( v3 ); | 83 | looper( v3 ); |
83 | looper( v4 ); | 84 | looper( v4 ); |
84 | fwrite( s, (int)n-(int)s, 1, stdout ); | 85 | fwrite( s, (ptrdiff_t)n-(ptrdiff_t)s, 1, stdout ); |
85 | fwrite( "\n", 1, 1, stdout ); | 86 | fwrite( "\n", 1, 1, stdout ); |
86 | } | 87 | } |
87 | 88 | ||
@@ -96,7 +97,7 @@ namespace Bu | |||
96 | looper( v3 ); | 97 | looper( v3 ); |
97 | looper( v4 ); | 98 | looper( v4 ); |
98 | looper( v5 ); | 99 | looper( v5 ); |
99 | fwrite( s, (int)n-(int)s, 1, stdout ); | 100 | fwrite( s, (ptrdiff_t)n-(ptrdiff_t)s, 1, stdout ); |
100 | fwrite( "\n", 1, 1, stdout ); | 101 | fwrite( "\n", 1, 1, stdout ); |
101 | } | 102 | } |
102 | 103 | ||
@@ -114,7 +115,7 @@ namespace Bu | |||
114 | looper( v4 ); | 115 | looper( v4 ); |
115 | looper( v5 ); | 116 | looper( v5 ); |
116 | looper( v6 ); | 117 | looper( v6 ); |
117 | fwrite( s, (int)n-(int)s, 1, stdout ); | 118 | fwrite( s, (ptrdiff_t)n-(ptrdiff_t)s, 1, stdout ); |
118 | fwrite( "\n", 1, 1, stdout ); | 119 | fwrite( "\n", 1, 1, stdout ); |
119 | } | 120 | } |
120 | 121 | ||
@@ -133,7 +134,7 @@ namespace Bu | |||
133 | looper( v5 ); | 134 | looper( v5 ); |
134 | looper( v6 ); | 135 | looper( v6 ); |
135 | looper( v7 ); | 136 | looper( v7 ); |
136 | fwrite( s, (int)n-(int)s, 1, stdout ); | 137 | fwrite( s, (ptrdiff_t)n-(ptrdiff_t)s, 1, stdout ); |
137 | fwrite( "\n", 1, 1, stdout ); | 138 | fwrite( "\n", 1, 1, stdout ); |
138 | } | 139 | } |
139 | #undef looper | 140 | #undef looper |
@@ -148,8 +149,8 @@ namespace Bu | |||
148 | template<> void __tracer_format<uint64_t>( const uint64_t &v ); | 149 | template<> void __tracer_format<uint64_t>( const uint64_t &v ); |
149 | template<> void __tracer_format<bool>( const bool &v ); | 150 | template<> void __tracer_format<bool>( const bool &v ); |
150 | template<> void __tracer_format<char>( const char &v ); | 151 | template<> void __tracer_format<char>( const char &v ); |
151 | template<> void __tracer_format<long>( const long &v ); | 152 | //template<> void __tracer_format<long>( const long &v ); |
152 | template<> void __tracer_format<unsigned long>( const unsigned long &v ); | 153 | //template<> void __tracer_format<unsigned long>( const unsigned long &v ); |
153 | template<> void __tracer_format<float>( const float &v ); | 154 | template<> void __tracer_format<float>( const float &v ); |
154 | template<> void __tracer_format<double>( const double &v ); | 155 | template<> void __tracer_format<double>( const double &v ); |
155 | template<> void __tracer_format<void *>( void * const &v ); | 156 | template<> void __tracer_format<void *>( void * const &v ); |
diff --git a/src/unit/archive.cpp b/src/unit/archive.cpp new file mode 100644 index 0000000..61e3567 --- /dev/null +++ b/src/unit/archive.cpp | |||
@@ -0,0 +1,111 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2007-2008 Xagasoft, All rights reserved. | ||
3 | * | ||
4 | * This file is part of the libbu++ library and is released under the | ||
5 | * terms of the license contained in the file LICENSE. | ||
6 | */ | ||
7 | |||
8 | #include "bu/unitsuite.h" | ||
9 | #include "bu/membuf.h" | ||
10 | |||
11 | class Unit : public Bu::UnitSuite | ||
12 | { | ||
13 | public: | ||
14 | Unit() | ||
15 | { | ||
16 | setName("Archive"); | ||
17 | addTest( Unit::testPrimitives ); | ||
18 | } | ||
19 | |||
20 | virtual ~Unit() | ||
21 | { | ||
22 | } | ||
23 | |||
24 | void testPrimitives() | ||
25 | { | ||
26 | Bu::MemBuf mb; | ||
27 | { | ||
28 | Bu::Archive ar( mb, Bu::Archive::save ); | ||
29 | ar << (int8_t)1; | ||
30 | ar << (uint8_t)2; | ||
31 | ar << (int16_t)3; | ||
32 | ar << (uint16_t)4; | ||
33 | ar << (int32_t)5; | ||
34 | ar << (uint32_t)6; | ||
35 | ar << (int64_t)7; | ||
36 | ar << (uint64_t)8; | ||
37 | ar << (char)9; | ||
38 | ar << (unsigned char)10; | ||
39 | ar << (short)11; | ||
40 | ar << (unsigned short)12; | ||
41 | ar << (int)13; | ||
42 | ar << (unsigned int)14; | ||
43 | ar << (long)15; | ||
44 | ar << (unsigned long)16; | ||
45 | //ar << (long long)17; | ||
46 | //ar << (unsigned long long)18; | ||
47 | ar.close(); | ||
48 | } | ||
49 | mb.setPos( 0 ); | ||
50 | { | ||
51 | Bu::Archive ar( mb, Bu::Archive::load ); | ||
52 | int8_t p1; | ||
53 | uint8_t p2; | ||
54 | int16_t p3; | ||
55 | uint16_t p4; | ||
56 | int32_t p5; | ||
57 | uint32_t p6; | ||
58 | int64_t p7; | ||
59 | uint64_t p8; | ||
60 | signed char p9; | ||
61 | unsigned char p10; | ||
62 | short p11; | ||
63 | unsigned short p12; | ||
64 | int p13; | ||
65 | unsigned int p14; | ||
66 | long p15; | ||
67 | unsigned long p16; | ||
68 | //long long p17; | ||
69 | //unsigned long long p18; | ||
70 | ar >> p1; | ||
71 | ar >> p2; | ||
72 | ar >> p3; | ||
73 | ar >> p4; | ||
74 | ar >> p5; | ||
75 | ar >> p6; | ||
76 | ar >> p7; | ||
77 | ar >> p8; | ||
78 | ar >> p9; | ||
79 | ar >> p10; | ||
80 | ar >> p11; | ||
81 | ar >> p12; | ||
82 | ar >> p13; | ||
83 | ar >> p14; | ||
84 | ar >> p15; | ||
85 | ar >> p16; | ||
86 | //ar >> p17; | ||
87 | //ar >> p18; | ||
88 | unitTest( p1 == 1 ); | ||
89 | unitTest( p2 == 2 ); | ||
90 | unitTest( p3 == 3 ); | ||
91 | unitTest( p4 == 4 ); | ||
92 | unitTest( p5 == 5 ); | ||
93 | unitTest( p6 == 6 ); | ||
94 | unitTest( p7 == 7 ); | ||
95 | unitTest( p8 == 8 ); | ||
96 | unitTest( p9 == 9 ); | ||
97 | unitTest( p10 == 10 ); | ||
98 | unitTest( p11 == 11 ); | ||
99 | unitTest( p12 == 12 ); | ||
100 | unitTest( p13 == 13 ); | ||
101 | unitTest( p14 == 14 ); | ||
102 | unitTest( p15 == 15 ); | ||
103 | unitTest( p16 == 16 ); | ||
104 | //unitTest( p17 == 17 ); | ||
105 | //unitTest( p18 == 18 ); | ||
106 | ar.close(); | ||
107 | } | ||
108 | } | ||
109 | }; | ||
110 | |||
111 | int main( int argc, char *argv[] ){ return Unit().run( argc, argv ); } | ||
@@ -74,7 +74,6 @@ namespace Bu | |||
74 | return *a > *b; | 74 | return *a > *b; |
75 | } | 75 | } |
76 | }; | 76 | }; |
77 | |||
78 | }; | 77 | }; |
79 | 78 | ||
80 | #endif | 79 | #endif |