B
    ÀÔx[u  ã               @   sH   d Z G dd„ deƒZdd„ ZddlmZmZ ddlZddlZdd	„ Z	dS )
z$ Initializer for the package utils. c                   s   e Zd Z‡ fdd„Z‡  ZS )ÚDotDictc                s"   |t ƒ  ¡ kr| | S t ƒ  |¡S )N)ÚsuperÚkeysÚ__getattribute__)ÚselfÚname)Ú	__class__© ú'/home/sam/code/Infobot/core/__init__.pyr      s    zDotDict.__getattribute__)Ú__name__Ú
__module__Ú__qualname__r   Ú__classcell__r   r   )r   r	   r      s   r   c             C   sT   t | ƒtkr| jS t | ƒtkr4dt | ¡j| jf S y| jS  tk
rN   dS X d S )Nz%s.%sÚunknown)ÚtypeÚ
ModuleTyper
   ÚFunctionTypeÚinspectZ	getmoduleÚAttributeError)Úfr   r   r	   Úget_name
   s    r   é    )r   r   Nc               C   s
   t j  ¡ S )N)ÚdatetimeZutcnowr   r   r   r	   Únow   s    r   )
Ú__doc__Údictr   r   Útypesr   r   r   r   r   r   r   r   r	   Ú<module>   s   