| 247 | } |
| 248 | |
| 249 | template<class BufferT, class SourceT> class ByteConvert |
| 250 | { |
| 251 | public: |
| 252 | bool Convert(BufferT** ppBuf, size_t* pnBufferLeft, const SourceT** ppSrc, size_t* pnSourceLeft) |
| 253 | { |
| 254 | cDebug d("ByteConvert::Convert< BufferT, SourceT >()"); |
| 255 | |
| 256 | //-- Copy manually into Buffer |
| 257 | **ppBuf = cConvertUtil::ConvertNonChar(**ppSrc); |
| 258 | |
| 259 | //-- Decrement counters |
| 260 | *pnSourceLeft -= sizeof(SourceT); // Decrement Source Left |
| 261 | *pnBufferLeft -= sizeof(BufferT); // Decrement Buffer Left |
| 262 | |
| 263 | //-- Reposition pointers |
| 264 | (*ppSrc)++; // Skip one SourceT fwd |
| 265 | (*ppBuf)++; // Skip one BufferT fwd |
| 266 | |
| 267 | return true; |
| 268 | } |
| 269 | }; |
| 270 | |
| 271 | |
| 272 | class UTF8_Util |
nothing calls this directly
no outgoing calls
no test coverage detected