From: Marc-André Lemburg <mal@egenix.com> Date: Wed, 19 Sep 2001 11:24:48 +0000 (+0000) Subject: Added new helpers for easy access to codecs. Docs will follow. X-Git-Tag: v2.2.1c1~1733 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=aa32c5aa7ca9ce842628d90c2d0fb4406ab5ff82;p=python Added new helpers for easy access to codecs. Docs will follow. --- diff --git a/Lib/codecs.py b/Lib/codecs.py index 827719bb32..df203c64da 100644 --- a/Lib/codecs.py +++ b/Lib/codecs.py @@ -539,6 +539,48 @@ def EncodedFile(file, data_encoding, file_encoding=None, errors='strict'): sr.file_encoding = file_encoding return sr +### Helpers for codec lookup + +def getencoder(encoding): + + """ Lookup up the codec for the given encoding and return + its encoder function. + + Raises a LookupError in case the encoding cannot be found. + + """ + return lookup(encoding)[0] + +def getdecoder(encoding): + + """ Lookup up the codec for the given encoding and return + its decoder function. + + Raises a LookupError in case the encoding cannot be found. + + """ + return lookup(encoding)[1] + +def getreader(encoding): + + """ Lookup up the codec for the given encoding and return + its StreamReader class or factory function. + + Raises a LookupError in case the encoding cannot be found. + + """ + return lookup(encoding)[2] + +def getwriter(encoding): + + """ Lookup up the codec for the given encoding and return + its StreamWriter class or factory function. + + Raises a LookupError in case the encoding cannot be found. + + """ + return lookup(encoding)[3] + ### Helpers for charmap-based codecs def make_identity_dict(rng):