DCL 4.0
Loading...
Searching...
No Matches
Latin1Decoder Class Reference

#include <Charset.h>

Inheritance diagram for Latin1Decoder:
CharsetDecoder Object

Static Public Member Functions

static String decode (const char *_mbs, size_t _nmbs=(size_t) -1)

Protected Member Functions

virtual int toWideChar (const byte_t *_mbs, size_t _mbslen, ucs4_t *_uc)
Protected Member Functions inherited from CharsetDecoder
 CharsetDecoder ()
Protected Member Functions inherited from Object
virtual ~Object ()
 Object ()

Additional Inherited Members

Public Member Functions inherited from CharsetDecoder
virtual int decode (const byte_t *_in, size_t &_inCount, wchar_t *_out, size_t &_outCount)
size_t getDecodedLength (const char *_mbs, size_t _mbslen) __DCL_THROWS1(CharsetConvertException *)
String decode (const char *_mbs, size_t _mbslen=(size_t) -1) __DCL_THROWS1(CharsetConvertException *)
String decode (const ByteString &_str) __DCL_THROWS1(CharsetConvertException *)
Public Member Functions inherited from Object
virtual String toString () const
virtual void destroy ()
String className () const
bool isInstanceOf (const std::type_info &typeinfo) const
virtual const std::type_info & typeInfo () const

Detailed Description

Definition at line 351 of file Charset.h.

Member Function Documentation

◆ decode()

String Latin1Decoder::decode ( const char * _mbs,
size_t _nmbs = (size_t)-1 )
static

Definition at line 432 of file CharsetDecoder.cpp.

433{
434 if (_mbslen == (size_t)-1)
435 _mbslen = ByteString::length(_mbs);
436
437 CharBuffer* buf = CharBuffer::create(_mbslen);
438 wchar_t* p = buf->data();
439 for (size_t i = 0; i < _mbslen; i++)
440 p[i] = (wchar_t)(byte_t)_mbs[i];
441
442 p[_mbslen] = L'\0';
443 buf->__dataLength = _mbslen;
444 __DCL_ASSERT(buf->data()[buf->__dataLength] == L'\0');
445
446 String r = buf;
447 buf->release();
448 return r;
449}
unsigned char byte_t
Definition Config.h:274
#define __DCL_ASSERT(expr)
Definition Object.h:371
ByteString r
ByteBuffer * buf

◆ toWideChar()

int Latin1Decoder::toWideChar ( const byte_t * _mbs,
size_t _mbslen,
ucs4_t * _uc )
protectedvirtual

Implements CharsetDecoder.

Definition at line 426 of file CharsetDecoder.cpp.

427{
428 *_uc = (byte_t)*_mbs;
429 return 1;
430}

The documentation for this class was generated from the following files: