File: //lib64/python3.9/json/__pycache__/scanner.cpython-39.opt-2.pyc
a
    �DOgy	  �                   @   sd   d dl Z zd dlmZ W n ey.   dZY n0 dgZe �de je jB e j	B �Z
dd� Zep^eZdS )�    N)�make_scannerr   z)(-?(?:0|[1-9]\d*))(\.\d+)?([eE][-+]?\d+)?c                    sv   | j �	| j�| j�
tj�| j�| j�| j�| j�| j	�| j
�| j�� ���������	�
�fdd�� � �fdd�}|S )Nc                    s�  z| | }W n t y(   t|�d �Y n0 |dkrB�
| |d ��S |dkrd�	| |d f�� ����S |dkr~�| |d f� �S |dkr�| ||d � dkr�d |d fS |dkr�| ||d � d	kr�d
|d fS |dk� r�| ||d � d
k� r�d|d fS �| |�}|d u�rZ|�� \}}}|�s(|�rF�||�p4d |�p>d �}n�|�}||�� fS |dk�r�| ||d � dk�r��d�|d fS |dk�r�| ||d � dk�r��d�|d fS |dk�r�| ||d � dk�r�d�|d fS t|��d S )N�"�   �{�[�n�   Znull�t�trueT�f�   ZfalseF� �N�   ZNaN�I�   ZInfinity�-�	   z	-Infinity)�
IndexError�
StopIteration�groups�end)�string�idxZnextchar�mZintegerZfrac�exp�res��
_scan_onceZmatch_number�memo�object_hook�object_pairs_hook�parse_array�parse_constant�parse_float�	parse_int�parse_object�parse_string�strict� �$/usr/lib64/python3.9/json/scanner.pyr      s@    � 
   z#py_make_scanner.<locals>._scan_oncec                    s$   z� | |�W �� �  S �� �  0 d S )N)�clear)r   r   )r   r   r)   r*   �	scan_onceA   s
    
�z"py_make_scanner.<locals>.scan_once)r&