a
    [fy                     @   s`   d dl mZmZmZmZmZ d dlmZ er8d dlm	Z	 dZ
eedddZedd	d
dZdS )    )AnyCallablecastSetTYPE_CHECKING)isclassRenderableType-aihwerij235234ljsdnp34ksodfipwoe234234jlskjdf)check_objectreturnc                 C   s   t | tpt| dpt| dS )z+Check if an object may be rendered by Rich.__rich____rich_console__)
isinstancestrhasattr)r    r   kC:\Users\91910\OneDrive\Desktop\vts_admin_rebuild-master\vts\Lib\site-packages\pip/_vendor/rich/protocol.pyis_renderable
   s
    
r   r	   )
renderabler   c                 C   sn   ddl m} t }t| drdt| sdt| tr6t| S t| d}| } t| }||v rXqd|	| qt
|| S )zCast an object to a renderable by calling __rich__ if present.

    Args:
        renderable (object): A potentially renderable object

    Returns:
        object: The result of recursively calling __rich__.
    r   r   r   )pip._vendor.rich.consoler	   setr   r   
_GIBBERISHreprgetattrtypeaddr   )r   r	   rich_visited_setcast_methodrenderable_typer   r   r   	rich_cast   s    	

r    N)typingr   r   r   r   r   inspectr   r   r	   r   boolr   objectr    r   r   r   r   <module>   s   	