File: //lib64/python3.9/__pycache__/shlex.cpython-39.opt-2.pyc
a
    �DOg�4  �                   @   s�   d dl Z d dlZd dlZd dlmZ d dlmZ g d�ZG dd� d�Zdd	d
�Z	dd� Z
e�d
ej�j
Zdd� Zdd� Zedkr�eej�dkr�ee� � n@ejd Zee��Zeeee�� W d  � n1 s�0    Y  dS )�    N)�deque)�StringIO)�shlex�split�quote�joinc                   @   sn   e Zd Zddd�Zedd� �Zdd� Zdd	d
�Zdd� Zd
d� Z	dd� Z
dd� Zddd�Zdd� Z
dd� ZdS )r   NFc                 C   s  t |t�rt|�}|d ur(|| _|| _ntj| _d | _|| _|rHd | _nd| _d| _	d| _
| jrn|  j
d7  _
d| _d| _d| _
d| _d	| _d
| _t� | _d| _d| _d| _t� | _d | _|s�d}n|d
u r�d}|| _|�rt� | _|  j
d7  _
| j
�t�|��}| j
�|�| _
d S )N� �#Z?abcdfeghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_u|   ßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþÿÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞz 	
Fz'"�\�"� �   r   Tz();<>|&z~-./*?=)�
isinstance�strr   �instream�infile�sys�stdin�posix�eof�
commenters�	wordchars�
whitespace�whitespace_split�quotes�escape�
escapedquotes�stater   �pushback�lineno�debug�token�	filestack�source�_punctuation_chars�_pushback_chars�	maketrans�dict�fromkeys�	translate)�selfr   r   r   �punctuation_chars�t� r-   �/usr/lib64/python3.9/shlex.py�__init__   sJ    
zshlex.__init__c                 C   s   | j S �N)r$   �r*   r-   r-   r.   r+   D   s    zshlex.punctuation_charsc                 C   s*   | j dkrtdt|� � | j�|� d S )Nr
   zshlex: pushing token )r    �print�reprr   �
appendleft)r*   �tokr-   r-   r.   �
push_tokenH   s    
zshlex.push_tokenc                 C   sp   t |t�rt|�}| j�| j| j| jf� || _|| _d| _| jrl|d ur\t	d| jf � nt	d| jf � d S )Nr
   zshlex: pushing to file %szshlex: pushing to stream %s)
r   r   r   r"