1
""" Generic Python Character Mapping Codec.
3
Use this codec directly rather than through the automatic
4
conversion mechanisms supplied by unicode() and .encode().
7
Written by Marc-Andre Lemburg (mal@lemburg.com).
9
(c) Copyright CNRI, All Rights Reserved. NO WARRANTY.
17
class Codec(codecs.Codec):
19
# Note: Binding these as C functions will result in the class not
20
# converting them to methods. This is intended.
21
encode = codecs.charmap_encode
22
decode = codecs.charmap_decode
24
class IncrementalEncoder(codecs.IncrementalEncoder):
25
def __init__(self, errors='strict', mapping=None):
26
codecs.IncrementalEncoder.__init__(self, errors)
27
self.mapping = mapping
29
def encode(self, input, final=False):
30
return codecs.charmap_encode(input, self.errors, self.mapping)[0]
32
class IncrementalDecoder(codecs.IncrementalDecoder):
33
def __init__(self, errors='strict', mapping=None):
34
codecs.IncrementalDecoder.__init__(self, errors)
35
self.mapping = mapping
37
def decode(self, input, final=False):
38
return codecs.charmap_decode(input, self.errors, self.mapping)[0]
40
class StreamWriter(Codec,codecs.StreamWriter):
42
def __init__(self,stream,errors='strict',mapping=None):
43
codecs.StreamWriter.__init__(self,stream,errors)
44
self.mapping = mapping
46
def encode(self,input,errors='strict'):
47
return Codec.encode(input,errors,self.mapping)
49
class StreamReader(Codec,codecs.StreamReader):
51
def __init__(self,stream,errors='strict',mapping=None):
52
codecs.StreamReader.__init__(self,stream,errors)
53
self.mapping = mapping
55
def decode(self,input,errors='strict'):
56
return Codec.decode(input,errors,self.mapping)
58
### encodings module API
61
return codecs.CodecInfo(
65
incrementalencoder=IncrementalEncoder,
66
incrementaldecoder=IncrementalDecoder,
67
streamwriter=StreamWriter,
68
streamreader=StreamReader,
1
""" Generic Python Character Mapping Codec.
3
Use this codec directly rather than through the automatic
4
conversion mechanisms supplied by unicode() and .encode().
7
Written by Marc-Andre Lemburg (mal@lemburg.com).
9
(c) Copyright CNRI, All Rights Reserved. NO WARRANTY.
17
class Codec(codecs.Codec):
19
# Note: Binding these as C functions will result in the class not
20
# converting them to methods. This is intended.
21
encode = codecs.charmap_encode
22
decode = codecs.charmap_decode
24
class IncrementalEncoder(codecs.IncrementalEncoder):
25
def __init__(self, errors='strict', mapping=None):
26
codecs.IncrementalEncoder.__init__(self, errors)
27
self.mapping = mapping
29
def encode(self, input, final=False):
30
return codecs.charmap_encode(input, self.errors, self.mapping)[0]
32
class IncrementalDecoder(codecs.IncrementalDecoder):
33
def __init__(self, errors='strict', mapping=None):
34
codecs.IncrementalDecoder.__init__(self, errors)
35
self.mapping = mapping
37
def decode(self, input, final=False):
38
return codecs.charmap_decode(input, self.errors, self.mapping)[0]
40
class StreamWriter(Codec,codecs.StreamWriter):
42
def __init__(self,stream,errors='strict',mapping=None):
43
codecs.StreamWriter.__init__(self,stream,errors)
44
self.mapping = mapping
46
def encode(self,input,errors='strict'):
47
return Codec.encode(input,errors,self.mapping)
49
class StreamReader(Codec,codecs.StreamReader):
51
def __init__(self,stream,errors='strict',mapping=None):
52
codecs.StreamReader.__init__(self,stream,errors)
53
self.mapping = mapping
55
def decode(self,input,errors='strict'):
56
return Codec.decode(input,errors,self.mapping)
58
### encodings module API
61
return codecs.CodecInfo(
65
incrementalencoder=IncrementalEncoder,
66
incrementaldecoder=IncrementalDecoder,
67
streamwriter=StreamWriter,
68
streamreader=StreamReader,