a
    hbòf¬  ã                   @   s`  U d Z ddlZddlmZmZmZmZmZ ddlm	Z	 g d¢Z
erNddlmZ daed ed	< ej e ¡ ¡Zdd
œdd„Zeeddœdd„Zdddddœeeeeee  eddœdd„Zd#ddddddddddœ	ee eeeeeeeeeegef  eddœdd„Zdddddddddddœ
eed ee eeeeeeeeddœdd „Zed!k�r\ed"ƒ dS )$z3Rich text and beautiful formatting in the terminal.é    N)ÚCallableÚIOÚTYPE_CHECKINGÚAnyÚOptionalé   )Úload_ipython_extension)Úget_consoleÚreconfigureÚprintÚinspect©ÚConsoler   Ú_console)Úreturnc                  C   s   t du rddlm}  | ƒ a t S )zËGet a global :class:`~rich.console.Console` instance. This function is used when Rich requires a Console,
    and hasn't been explicitly given one.

    Returns:
        Console: A console instance.
    Nr   r   )r   Úconsoler   r   © r   úV/home/httpd/docs/test/DocsMgr/lib/python3.9/site-packages/pip/_vendor/rich/__init__.pyr	      s    r	   )ÚargsÚkwargsr   c                  O   s,   ddl m} || i |¤Ž}tƒ }|j|_dS )z†Reconfigures the global console by replacing it with another.

    Args:
        console (Console): Replacement console instance.
    r   r   N)Úpip._vendor.rich.consoler   r	   Ú__dict__)r   r   r   Únew_consoler   r   r   r   r
   #   s    r
   ú Ú
F)ÚsepÚendÚfileÚflush)Úobjectsr   r   r   r   r   c                 G   s6   ddl m} |du rtƒ n||d�}|j|| |dœŽS )a5  Print object(s) supplied via positional arguments.
    This function has an identical signature to the built-in print.
    For more advanced features, see the :class:`~rich.console.Console` class.

    Args:
        sep (str, optional): Separator between printed objects. Defaults to " ".
        end (str, optional): Character to write at end of output. Defaults to "\\n".
        file (IO[str], optional): File to write to, or None for stdout. Defaults to None.
        flush (bool, optional): Has no effect as Rich always flushes output. Defaults to False.

    r   r   N)r   )r   r   )r   r   r	   r   )r   r   r   r   r   r   Úwrite_consoler   r   r   r   0   s    r   é   T©	ÚdataÚindentÚ	highlightÚ	skip_keysÚensure_asciiÚcheck_circularÚ	allow_nanÚdefaultÚ	sort_keys)Újsonr#   r$   r%   r&   r'   r(   r)   r*   r+   r   c       	   
      C   s$   t ƒ j| |||||||||	d�
 dS )a£  Pretty prints JSON. Output will be valid JSON.

    Args:
        json (str): A string containing JSON.
        data (Any): If json is not supplied, then encode this data.
        indent (int, optional): Number of spaces to indent. Defaults to 2.
        highlight (bool, optional): Enable highlighting of output: Defaults to True.
        skip_keys (bool, optional): Skip keys not of a basic type. Defaults to False.
        ensure_ascii (bool, optional): Escape all non-ascii characters. Defaults to False.
        check_circular (bool, optional): Check for circular references. Defaults to True.
        allow_nan (bool, optional): Allow NaN and Infinity values. Defaults to True.
        default (Callable, optional): A callable that converts values that can not be encoded
            in to something that can be JSON encoded. Defaults to None.
        sort_keys (bool, optional): Sort dictionary keys. Defaults to False.
    r"   N)r	   Ú
print_json)
r,   r#   r$   r%   r&   r'   r(   r)   r*   r+   r   r   r   r-   H   s    ör-   )
r   ÚtitleÚhelpÚmethodsÚdocsÚprivateÚdunderÚsortÚallÚvalue)Úobjr   r.   r/   r0   r1   r2   r3   r4   r5   r6   r   c       
         C   sT   |pt ƒ }ddlm} | tu }|| ||p*||p0||p6|||||	|
d�
}| |¡ dS )a  Inspect any Python object.

    * inspect(<OBJECT>) to see summarized info.
    * inspect(<OBJECT>, methods=True) to see methods.
    * inspect(<OBJECT>, help=True) to see full (non-abbreviated) help.
    * inspect(<OBJECT>, private=True) to see private attributes (single underscore).
    * inspect(<OBJECT>, dunder=True) to see attributes beginning with double underscore.
    * inspect(<OBJECT>, all=True) to see all attributes.

    Args:
        obj (Any): An object to inspect.
        title (str, optional): Title to display over inspect result, or None use type. Defaults to None.
        help (bool, optional): Show full help text rather than just first paragraph. Defaults to False.
        methods (bool, optional): Enable inspection of callables. Defaults to False.
        docs (bool, optional): Also render doc strings. Defaults to True.
        private (bool, optional): Show private attributes (beginning with underscore). Defaults to False.
        dunder (bool, optional): Show attributes starting with double underscore. Defaults to False.
        sort (bool, optional): Sort attributes alphabetically. Defaults to True.
        all (bool, optional): Show all attributes. Defaults to False.
        value (bool, optional): Pretty print value. Defaults to True.
    r   )ÚInspect)	r.   r/   r0   r1   r2   r3   r4   r5   r6   N)r	   Úpip._vendor.rich._inspectr8   r   r   )r7   r   r.   r/   r0   r1   r2   r3   r4   r5   r6   r   r8   Ú
is_inspectÚ_inspectr   r   r   r   s   s     #
ör   Ú__main__zHello, **World**)N)Ú__doc__ÚosÚtypingr   r   r   r   r   Ú
_extensionr   Ú__all__r   r   r   Ú__annotations__ÚpathÚabspathÚgetcwdÚ_IMPORT_CWDr	   r
   ÚstrÚboolr   Úintr-   r   Ú__name__r   r   r   r   Ú<module>   s�   û
ú ÿõô.ôó8
