mirror of
https://github.com/thegeeklab/ansible-later.git
synced 2024-07-05 00:20:58 +02:00
47 lines
939 B
Python
47 lines
939 B
Python
|
# coding: utf-8
|
||
|
from __future__ import unicode_literals, division, absolute_import, print_function
|
||
|
|
||
|
import inspect
|
||
|
import sys
|
||
|
|
||
|
|
||
|
if sys.version_info < (3,):
|
||
|
str_cls = unicode # noqa
|
||
|
byte_cls = str
|
||
|
int_types = (int, long) # noqa
|
||
|
|
||
|
def bytes_to_list(byte_string):
|
||
|
return [ord(b) for b in byte_string]
|
||
|
|
||
|
chr_cls = chr
|
||
|
|
||
|
else:
|
||
|
str_cls = str
|
||
|
byte_cls = bytes
|
||
|
int_types = int
|
||
|
|
||
|
bytes_to_list = list
|
||
|
|
||
|
def chr_cls(num):
|
||
|
return bytes([num])
|
||
|
|
||
|
|
||
|
def type_name(value):
|
||
|
"""
|
||
|
Returns a user-readable name for the type of an object
|
||
|
|
||
|
:param value:
|
||
|
A value to get the type name of
|
||
|
|
||
|
:return:
|
||
|
A unicode string of the object's type name
|
||
|
"""
|
||
|
|
||
|
if inspect.isclass(value):
|
||
|
cls = value
|
||
|
else:
|
||
|
cls = value.__class__
|
||
|
if cls.__module__ in set(['builtins', '__builtin__']):
|
||
|
return cls.__name__
|
||
|
return '%s.%s' % (cls.__module__, cls.__name__)
|