static const char *SHIFT_JIS;
static const char *EUC_JP;
- static std::string decodeKanjiSegment(Ref<BitSource> bits, int count);
- static std::string decodeByteSegment(Ref<BitSource> bits, int count);
- static std::string decodeAlphanumericSegment(Ref<BitSource> bits, int count);
- static std::string decodeNumericSegment(Ref<BitSource> bits, int count);
+ static void decodeKanjiSegment(Ref<BitSource> bits, std::string &result, int count);
+ static void decodeByteSegment(Ref<BitSource> bits, std::string &result, int count);
+ static void decodeAlphanumericSegment(Ref<BitSource> bits, std::string &result, int count);
+ static void decodeNumericSegment(Ref<BitSource> bits, std::string &result, int count);
static const char *guessEncoding(unsigned char *bytes, int length);
- static std::string convert(const unsigned char *bufIn, size_t nIn, const char *src);
+ static void append(std::string &ost, const unsigned char *bufIn, size_t nIn, const char *src);
public:
static std::string decode(ArrayRef<unsigned char> bytes, Version *version);