1 /* $XConsortium: TranslateInputCodingSystem.C /main/1 1996/07/29 17:06:28 cde-hp $ */
2 // Copyright (c) 1995 James Clark
3 // See the file COPYING for copying permission.
6 #include "TranslateInputCodingSystem.h"
9 namespace SP_NAMESPACE {
12 class TranslateDecoder : public Decoder {
14 TranslateDecoder(const Char *table);
15 size_t decode(Char *to, const char *from, size_t fromLen,
17 Boolean convertOffset(unsigned long &offset) const;
22 TranslateInputCodingSystem::TranslateInputCodingSystem(const Char *table)
27 Decoder *TranslateInputCodingSystem::makeDecoder() const
29 return new TranslateDecoder(table_);
32 TranslateDecoder::TranslateDecoder(const Char *table)
37 size_t TranslateDecoder::decode(Char *to, const char *from, size_t fromLen,
40 for (size_t n = fromLen; n > 0; n--)
41 *to++ = table_[(unsigned char)*from++]; // zero extend
46 Boolean TranslateDecoder::convertOffset(unsigned long &) const