#

# johab.py: Python Unicode Codec for JOHAB

#

# Written by Hye-Shik Chang <perky@FreeBSD.org>

#



import _codecs_kr, codecs

import _multibytecodec as mbc



codec = _codecs_kr.getcodec('johab')



class Codec(codecs.Codec):

    encode = codec.encode

    decode = codec.decode



class IncrementalEncoder(mbc.MultibyteIncrementalEncoder,

                         codecs.IncrementalEncoder):

    codec = codec



class IncrementalDecoder(mbc.MultibyteIncrementalDecoder,

                         codecs.IncrementalDecoder):

    codec = codec



class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader):

    codec = codec



class StreamWriter(Codec, mbc.MultibyteStreamWriter, codecs.StreamWriter):

    codec = codec



def getregentry():

    return codecs.CodecInfo(

        name='johab',

        encode=Codec().encode,

        decode=Codec().decode,

        incrementalencoder=IncrementalEncoder,

        incrementaldecoder=IncrementalDecoder,

        streamreader=StreamReader,

        streamwriter=StreamWriter,

    )

