usse/funda-scraper/venv/lib/python3.10/site-packages/pkginfo/_compat.py

35 lines
885 B
Python
Raw Normal View History

2023-02-20 22:38:24 +00:00
try:
STRING_TYPES = (str, unicode)
except NameError: #pragma NO COVER Python >= 3.0
STRING_TYPES = (str,)
try:
u = unicode
except NameError: #pragma NO COVER Python >= 3.0
u = str
b = bytes
else: #pragma NO COVER Python < 3.0
b = str
try:
from StringIO import StringIO
except ImportError: #pragma NO COVER Python >= 3.0
from io import StringIO
from io import BytesIO
else: #pragma NO COVER Python < 3.0
BytesIO = StringIO
def must_decode(value): #pragma NO COVER
if type(value) is bytes:
try:
return value.decode('utf-8')
except UnicodeDecodeError:
return value.decode('latin1')
return value
def must_encode(value): #pragma NO COVER
if type(value) is u:
return value.encode('utf-8')
return value