3 # Based on http://docs.python.org/3.2/library/binascii.html
\r
6 from typing import Union, Text
\r
9 if sys.version_info < (3,):
\r
10 # Python 2 accepts unicode ascii pretty much everywhere.
\r
11 _Bytes = Union[bytes, Text]
\r
12 _Ascii = Union[bytes, Text]
\r
13 elif sys.version_info < (3, 3):
\r
14 # Python 3.2 and below only accepts bytes.
\r
18 # But since Python 3.3 ASCII-only unicode strings are accepted by the
\r
21 _Ascii = Union[bytes, Text]
\r
23 def a2b_uu(string: _Ascii) -> bytes: ...
\r
24 if sys.version_info >= (3, 7):
\r
25 def b2a_uu(data: _Bytes, *, backtick: bool = ...) -> bytes: ...
\r
27 def b2a_uu(data: _Bytes) -> bytes: ...
\r
28 def a2b_base64(string: _Ascii) -> bytes: ...
\r
29 if sys.version_info >= (3, 6):
\r
30 def b2a_base64(data: _Bytes, *, newline: bool = ...) -> bytes: ...
\r
32 def b2a_base64(data: _Bytes) -> bytes: ...
\r
33 def a2b_qp(string: _Ascii, header: bool = ...) -> bytes: ...
\r
34 def b2a_qp(data: _Bytes, quotetabs: bool = ..., istext: bool = ...,
\r
35 header: bool = ...) -> bytes: ...
\r
36 def a2b_hqx(string: _Ascii) -> bytes: ...
\r
37 def rledecode_hqx(data: _Bytes) -> bytes: ...
\r
38 def rlecode_hqx(data: _Bytes) -> bytes: ...
\r
39 def b2a_hqx(data: _Bytes) -> bytes: ...
\r
40 def crc_hqx(data: _Bytes, crc: int) -> int: ...
\r
41 def crc32(data: _Bytes, crc: int = ...) -> int: ...
\r
42 def b2a_hex(data: _Bytes) -> bytes: ...
\r
43 def hexlify(data: _Bytes) -> bytes: ...
\r
44 def a2b_hex(hexstr: _Ascii) -> bytes: ...
\r
45 def unhexlify(hexlify: _Ascii) -> bytes: ...
\r
47 class Error(Exception): ...
\r
48 class Incomplete(Exception): ...
\r