""" This file contains some helpers methods in both Python2 and 3 """ import sys import re if sys.version < '3': # Python2.x imports import Queue import codecs else: # Python 3.x imports import queue def check_token(token): """ Checks if the given token is a valid UUID.""" valid = re.compile(r"^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-" r"[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$") return valid.match(token) # We need to do some things different pending if its Python 2.x or 3.x if sys.version < '3': def to_unicode(ch): return codecs.unicode_escape_decode(ch)[0] def is_unicode(ch): return isinstance(ch, unicode) def create_unicode(ch): try: return unicode(ch, 'utf-8') except UnicodeDecodeError as e: return str(e) def create_queue(max_size): return Queue.Queue(max_size) else: def to_unicode(ch): return ch def is_unicode(ch): return isinstance(ch, str) def create_unicode(ch): return str(ch) def create_queue(max_size): return queue.Queue(max_size)