Sha256: 41752d9613ea181df80186fb989ef780fc4e5da8b3cd6ca1c16f5894d644e0f7

Contents?: true

Size: 1.52 KB

Versions: 30

Compression:

Stored size: 1.52 KB

Contents

"""Codec for quoted-printable encoding.

Like base64 and rot13, this returns Python strings, not Unicode.
"""

import codecs, quopri
try:
    from cStringIO import StringIO
except ImportError:
    from StringIO import StringIO

def quopri_encode(input, errors='strict'):
    """Encode the input, returning a tuple (output object, length consumed).

    errors defines the error handling to apply. It defaults to
    'strict' handling which is the only currently supported
    error handling for this codec.

    """
    assert errors == 'strict'
    f = StringIO(input)
    g = StringIO()
    quopri.encode(f, g, 1)
    output = g.getvalue()
    return (output, len(input))

def quopri_decode(input, errors='strict'):
    """Decode the input, returning a tuple (output object, length consumed).

    errors defines the error handling to apply. It defaults to
    'strict' handling which is the only currently supported
    error handling for this codec.

    """
    assert errors == 'strict'
    f = StringIO(input)
    g = StringIO()
    quopri.decode(f, g)
    output = g.getvalue()
    return (output, len(input))

class Codec(codecs.Codec):

    def encode(self, input,errors='strict'):
        return quopri_encode(input,errors)
    def decode(self, input,errors='strict'):
        return quopri_decode(input,errors)

class StreamWriter(Codec, codecs.StreamWriter):
    pass

class StreamReader(Codec,codecs.StreamReader):
    pass

# encodings module API

def getregentry():
    return (quopri_encode, quopri_decode, StreamReader, StreamWriter)

Version data entries

30 entries across 30 versions & 1 rubygems

Version Path
rubyfox-server-2.19.2.0 lib/rubyfox/server/data/lib/Lib/encodings/quopri_codec.py
rubyfox-server-2.17.3.2 lib/rubyfox/server/data/lib/Lib/encodings/quopri_codec.py
rubyfox-server-2.17.3.1 lib/rubyfox/server/data/lib/Lib/encodings/quopri_codec.py
rubyfox-server-2.17.3.0 lib/rubyfox/server/data/lib/Lib/encodings/quopri_codec.py
rubyfox-server-2.16.3.2 lib/rubyfox/server/data/lib/Lib/encodings/quopri_codec.py
rubyfox-server-2.16.3.1 lib/rubyfox/server/data/lib/Lib/encodings/quopri_codec.py
rubyfox-server-2.16.0.4 lib/rubyfox/server/data/lib/Lib/encodings/quopri_codec.py
rubyfox-server-2.16.0.3 lib/rubyfox/server/data/lib/Lib/encodings/quopri_codec.py
rubyfox-server-2.16.0.2 lib/rubyfox/server/data/lib/Lib/encodings/quopri_codec.py
rubyfox-server-2.16.0.1 lib/rubyfox/server/data/lib/Lib/encodings/quopri_codec.py
rubyfox-server-2.16.0.0 lib/rubyfox/server/data/lib/Lib/encodings/quopri_codec.py
rubyfox-server-2.13.7.3 lib/rubyfox/server/data/lib/Lib/encodings/quopri_codec.py
rubyfox-server-2.13.6.2 lib/rubyfox/server/data/lib/Lib/encodings/quopri_codec.py
rubyfox-server-2.13.6.1 lib/rubyfox/server/data/lib/Lib/encodings/quopri_codec.py
rubyfox-server-2.13.5.1 lib/rubyfox/server/data/lib/Lib/encodings/quopri_codec.py
rubyfox-server-2.13.4.1 lib/rubyfox/server/data/lib/Lib/encodings/quopri_codec.py
rubyfox-server-2.13.3.1 lib/rubyfox/server/data/lib/Lib/encodings/quopri_codec.py
rubyfox-server-2.12.5.1 lib/rubyfox/server/data/lib/Lib/encodings/quopri_codec.py
rubyfox-server-2.12.5.0 lib/rubyfox/server/data/lib/Lib/encodings/quopri_codec.py
rubyfox-server-2.12.4.0 lib/rubyfox/server/data/lib/Lib/encodings/quopri_codec.py