1""" Python 'utf-8' Codec 2 3 4Written by Marc-Andre Lemburg (mal@lemburg.com). 5 6(c) Copyright CNRI, All Rights Reserved. NO WARRANTY. 7 8""" 9import codecs 10 11### Codec APIs 12 13encode = codecs.utf_8_encode 14 15def decode(input, errors='strict'): 16 return codecs.utf_8_decode(input, errors, True) 17 18class IncrementalEncoder(codecs.IncrementalEncoder): 19 def encode(self, input, final=False): 20 return codecs.utf_8_encode(input, self.errors)[0] 21 22class IncrementalDecoder(codecs.BufferedIncrementalDecoder): 23 _buffer_decode = codecs.utf_8_decode 24 25class StreamWriter(codecs.StreamWriter): 26 encode = codecs.utf_8_encode 27 28class StreamReader(codecs.StreamReader): 29 decode = codecs.utf_8_decode 30 31### encodings module API 32 33def getregentry(): 34 return codecs.CodecInfo( 35 name='utf-8', 36 encode=encode, 37 decode=decode, 38 incrementalencoder=IncrementalEncoder, 39 incrementaldecoder=IncrementalDecoder, 40 streamreader=StreamReader, 41 streamwriter=StreamWriter, 42 ) 43