관리-도구
편집 파일: shlex.cpython-37.opt-2.pyc
B YI~d,3 � @ s� d dl Z d dlZd dlZd dlmZ d dlmZ dddgZG dd� d�Zdd d�Z e� dej�jZ dd� Zd d� Zedkr�eej�dkr�ee� � n,ejd Zee��Zeeee�� W dQ R X dS )� N)�deque)�StringIO�shlex�split�quotec @ 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 k r(|| _|| _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 kr�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, �*/opt/alt/python37/lib64/python3.7/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 k r\t d| jf � nt d| jf � d S )Nr zshlex: pushing to file %szshlex: pushing to stream %s) r r r r! r1 r r r r r/ )r) � newstream�newfiler, r, r- �push_sourceN s zshlex.push_sourcec C sD | j �� | j�� \| _| _ | _| jr:td| j | jf � d| _d S )Nzshlex: popping to %s, line %dr ) r �closer! �popleftr r r r/ r )r) r, r, r- � pop_source\ s zshlex.pop_sourcec C s� | j r.| j �� }| jdkr*tdt|� � |S | �� }| jd k r~x<|| jkr|| �| �� �}|rr|\}}| �||� | � � }qBW x*|| j kr�| js�| j S | �� | � � }q�W | jdkr�|| j kr�tdt|� � ntd� |S )Nr zshlex: popping token z shlex: token=zshlex: token=EOF) r r8 r r/ r0 � read_tokenr"