a
    )ñ»jD  ã                   @   sP   d dl mZmZmZmZ er(d dlmZ dZeedœdd„Z	e
ddœd	d
„ZdS )é    )ÚAnyÚcastÚSetÚTYPE_CHECKING©Ú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   ú3E:\soccer\ml_env\Lib\site-packages\rich/protocol.pyÚis_renderable	   s
    
ÿýr   r   )Ú
renderabler
   c                 C   sp   ddl m} tƒ }t| dƒrft| tƒsft| tƒr8t| ƒS t| dƒ}|ƒ } t| ƒ}||v rZqf| 	|¡ qt
|| ƒS )zÕCast 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   )Úrich.consoler   Úsetr   r   ÚtypeÚ
_GIBBERISHÚreprÚgetattrÚaddr   )r   r   Úrich_visited_setÚcast_methodÚrenderable_typer   r   r   Ú	rich_cast   s    	

r   N)Útypingr   r   r   r   r   r   r   Úboolr   Úobjectr   r   r   r   r   Ú<module>   s
   	