""" Python 'oem' Codec for Windows """ # Import them explicitly to cause an ImportError # on non-Windows systems from codecs import oem_encode, oem_decode # for IncrementalDecoder, IncrementalEncoder, ... import codecs ### Codec APIs encode = oem_encode def decode(input, errors='strict'): return oem_decode(input, errors, True) class IncrementalEncoder(codecs.IncrementalEncoder): def encode(self, input, final=False): return oem_encode(input, self.errors)[0] class IncrementalDecoder(codecs.BufferedIncrementalDecoder): _buffer_decode = oem_decode class StreamWriter(codecs.StreamWriter): encode = oem_encode class StreamReader(codecs.StreamReader): decode = oem_decode ### encodings module API def getregentry(): return codecs.CodecInfo( name='oem', encode=encode, decode=decode, incrementalencoder=IncrementalEncoder, incrementaldecoder=IncrementalDecoder, streamreader=StreamReader, streamwriter=StreamWriter, )