관리-도구
편집 파일: json.cpython-38.pyc
U &?�f� � @ sZ d dl mZ d dlmZmZ d dlmZmZmZm Z ddl mZ ddlm Z mZ G dd� d�Zed k�rVd d lZd d lZejdd�Zejd ddd� ejdddeddd� e�� Zd dlmZ e� Zedd�Zz(ejdkr�ej�� Z neej��!� Z W nF e"k �r< Z# z&e�$dej�de#� �� e�%d� W 5 d Z#[#X Y nX ej$ee ej&d�dd� d S ) � )�Path)�loads�dumps)�Any�Callable�Optional�Union� )�Text)�JSONHighlighter�NullHighlighterc @ s� e Zd ZdZdeedeef eeeeeee e ge f edd� dd�Zede edeef eeeeeee e ge f ed d � d d��Z ed�d d�ZdS )�JSONa_ A renderable which pretty prints JSON. Args: json (str): JSON encoded data. indent (Union[None, int, str], optional): Number of characters to indent by. Defaults to 2. highlight (bool, optional): Enable highlighting. 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. � TFN) �json�indent� highlight� skip_keys�ensure_ascii�check_circular� allow_nan�default� sort_keys�returnc C sN t |�} t| ||||||| d�}|r*t� nt� }||�| _d| j_d | j_d S )N�r �skipkeysr r r r r T)r r r r �text�no_wrap�overflow)�selfr r r r r r r r r �data�highlighter� r! �C/opt/hc_python/lib/python3.8/site-packages/pip/_vendor/rich/json.py�__init__ s � z JSON.__init__) r r r r r r r r r r c C sP | � | �} t|||||||| d�}|r,t� nt� }||�| _d| j_d| j_| S )a| Encodes a JSON object from arbitrary data. Args: data (Any): An object that may be encoded in to JSON indent (Union[None, int, str], optional): Number of characters to indent by. Defaults to 2. highlight (bool, optional): Enable highlighting. Defaults to True. default (Callable, optional): Optional callable which will be called for objects that cannot be serialized. Defaults to None. 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. Returns: JSON: New JSON object from the given data. r TN)�__new__r r r r r r ) �clsr r r r r r r r r Z json_instancer r r! r! r"