| # |
| # gb2312.py: Python Unicode Codec for GB2312 |
| # |
| # Written by Hye-Shik Chang <perky@FreeBSD.org> |
| # |
| |
| import _codecs_cn, codecs |
| import _multibytecodec as mbc |
| |
| codec = _codecs_cn.getcodec('gb2312') |
| |
| 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='gb2312', |
| encode=Codec().encode, |
| decode=Codec().decode, |
| incrementalencoder=IncrementalEncoder, |
| incrementaldecoder=IncrementalDecoder, |
| streamreader=StreamReader, |
| streamwriter=StreamWriter, |
| ) |