def _256_exception_codec(name,exceptions,rexceptions,baseRange=range(32,256)):
import codecs
decoding_map = codecs.make_identity_dict(baseRange)
decoding_map.update(exceptions)
encoding_map = codecs.make_encoding_map(decoding_map)
if rexceptions: encoding_map.update(rexceptions)
### Codec APIs
class Codec(codecs.Codec):
def encode(self,input,errors='strict',charmap_encode=codecs.charmap_encode,encoding_map=encoding_map):
return charmap_encode(input,errors,encoding_map)
def decode(self,input,errors='strict',charmap_decode=codecs.charmap_decode,decoding_map=decoding_map):
return charmap_decode(input,errors,decoding_map)
class StreamWriter(Codec,codecs.StreamWriter):
pass
class StreamReader(Codec,codecs.StreamReader):
pass
C = Codec()
return codecs.CodecInfo(C.encode,C.decode,streamreader=StreamReader,streamwriter=StreamWriter,name=name)
评论列表
文章目录