equal
deleted
inserted
replaced
|
1 # |
|
2 # iso2022_jp_2004.py: Python Unicode Codec for ISO2022_JP_2004 |
|
3 # |
|
4 # Written by Hye-Shik Chang <perky@FreeBSD.org> |
|
5 # |
|
6 |
|
7 import _codecs_iso2022, codecs |
|
8 import _multibytecodec as mbc |
|
9 |
|
10 codec = _codecs_iso2022.getcodec('iso2022_jp_2004') |
|
11 |
|
12 class Codec(codecs.Codec): |
|
13 encode = codec.encode |
|
14 decode = codec.decode |
|
15 |
|
16 class IncrementalEncoder(mbc.MultibyteIncrementalEncoder, |
|
17 codecs.IncrementalEncoder): |
|
18 codec = codec |
|
19 |
|
20 class IncrementalDecoder(mbc.MultibyteIncrementalDecoder, |
|
21 codecs.IncrementalDecoder): |
|
22 codec = codec |
|
23 |
|
24 class StreamReader(Codec, mbc.MultibyteStreamReader, codecs.StreamReader): |
|
25 codec = codec |
|
26 |
|
27 class StreamWriter(Codec, mbc.MultibyteStreamWriter, codecs.StreamWriter): |
|
28 codec = codec |
|
29 |
|
30 def getregentry(): |
|
31 return codecs.CodecInfo( |
|
32 name='iso2022_jp_2004', |
|
33 encode=Codec().encode, |
|
34 decode=Codec().decode, |
|
35 incrementalencoder=IncrementalEncoder, |
|
36 incrementaldecoder=IncrementalDecoder, |
|
37 streamreader=StreamReader, |
|
38 streamwriter=StreamWriter, |
|
39 ) |