OwlCyberSecurity - MANAGER
Edit File: shlex.cpython-38.opt-1.pyc
U ����i�f 4������������������� ���@���s����d�Z�ddlZddlZddlZddlmZ�ddlmZ�ddddgZG�d d��d�Z ddd�Z d d��Ze�dej �jZdd��Zdd��Zedkr�eej�dkr�ee ����n,ejd�Zee��Zee ee���W�5�Q�R�X�dS�)�8A lexical analyzer class for simple shell-like syntaxes.�����N)�deque)�StringIO�shlex�split�quote�joinc�������������������@���sr���e�Zd�ZdZddd�Zedd���Zdd ��Zdd d�Zdd ��Z dd��Z dd��Zdd��Zddd�Z dd��Zdd��ZdS�)r���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/python38/lib64/python3.8/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�|��dS�)z:Push a token onto the stack popped by the get_token methodr���zshlex: pushing token N)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|dk r\t d|�jf���nt d|�jf���dS�)z9Push an input source onto the lexer's input source stack.r���Nzshlex: pushing to file %szshlex: pushing to stream %s) r���r���r���r#���r5���r���r���r ���r!���r3���)r+���� newstream�newfiler.���r.���r/����push_sourceN���s���� zshlex.push_sourcec�����������������C���sD���|�j�����|�j���\|�_|�_�|�_|�jr:td|�j�|�jf���d|�_dS�)zPop the input source stack.zshlex: popping to %s, line %dr ���N) r����closer#����popleftr���r ���r!���r3���r���r2���r.���r.���r/���� pop_source\���s���� �zshlex.pop_sourcec�����������������C���s����|�j�r.|�j����}|�jdkr*tdt|����|S�|����}|�jdk rz||�jkrz|��|�����}|rp|\}}|��||��|�� ��}q@||�j kr�|�js�|�j S�|�����|�� ��}qz|�jdkr�||�j kr�tdt|����ntd��|S�)zBGet a token from the input stream (or from stack if it's nonempty)r���zshlex: popping token Nz shlex: token=zshlex: token=EOF) r���r<���r!���r3���r4���� read_tokenr$���� sourcehookr:���� get_tokenr���r#���r=���)r+���r6����raw�specr9���r8���r.���r.���r/���r@���e���s.���� zshlex.get_tokenc�����������������C���s���d}d}|�j�r |�jr |�j���}n|�j�d�}|dkrB|��jd7��_|�jdkr^td|�j|f���|�jd�krtd|�_ �q�q|�jdk�r�|s�d�|�_�q��q�||�j kr�|�jdkr�td ��|�j s�|�jr|r�q�nqn�||�jkr�|�j� ���|��jd7��_n�|�j�r||�jk�rd }||�_n�||�jk�r&||�_ d |�_nr||�j�k�r@||�_ d|�_nX||�jk�rb|�j�sZ||�_ ||�_n6|�j�rx||�_ d |�_n ||�_ |�j �s�|�jr|r�q�nqq|�j|�jk�rDd}|�s�|�jdk�r�td ��td��||�jk�r|�j�s�|��j |7��_ d|�_�q�nd |�_n>|�j�r4||�jk�r4|�j|�jk�r4|�j}||�_n|��j |7��_ q|�j|�jk�r�|�st|�jdk�rltd��td��||�jk�r�||�jk�r�||k�r�|��j |�j7��_ |��j |7��_ ||�_q|�jdkr|�s�d�|�_�q�q||�j k�r|�jdk�r�td��d|�_|�j �s�|�jr|r�q�nqq||�jk�rh|�j� ���|��jd7��_|�j�r�d|�_|�j �s�|�jr|r�q�nqq|�jdk�r�||�j�k�r�|��j |7��_ n"||�j k�r�|�j�|��d|�_�q�q|�j�r�||�jk�r�||�_q|�j�r�||�jk�r�d }||�_q||�jk�s||�jk�s|�j�r,||�j�k�r,|��j |7��_ q|�j��rB|�j�|��n|�j�|��|�jdk�rbtd��d|�_|�j �s�|�jr|r�q�qqq|�j }d|�_ |�j�r�|�s�|dk�r�d�}|�jdk�r�|�r�tdt|����ntd��|S�)NFr ���r���� ����z&shlex: in state %r I see character: %rr �������z+shlex: I see whitespace in whitespace state�a�cTz shlex: I see EOF in quotes statezNo closing quotationz shlex: I see EOF in escape statezNo escaped character)rF���rG���z%shlex: I see whitespace in word statez&shlex: I see punctuation in word statezshlex: raw token=zshlex: raw token=EOF)r,���r&����popr����readr ���r!���r3���r���r"���r���r���r����readliner���r���r���r���� ValueErrorr����appendr���r5���r4���)r+���ZquotedZescapedstateZnextchar�resultr.���r.���r/���r>�������s ��� � ��� ��zshlex.read_tokenc�����������������C���sV���|d�dkr|dd��}t�|�jt�rHtj�|�sHtj�tj�|�j�|�}|t|d�fS�)z(Hook called on a filename to be sourced.r���r���r�������r) r���r���r����os�path�isabsr����dirname�open)r+���r9���r.���r.���r/���r?�����s ����zshlex.sourcehookc�����������������C���s(���|dkr|�j�}|dkr|�j}d||f�S�)z<Emit a C-compiler-like, Emacs-friendly error-message leader.Nz"%s", line %d: )r���r ���)r+���r���r ���r.���r.���r/����error_leader ��s ����zshlex.error_leaderc�����������������C���s���|�S�r1���r.���r2���r.���r.���r/����__iter__(��s����zshlex.__iter__c�����������������C���s���|�����}||�jkrt�|S�r1���)r@���r���� StopIteration)r+���r"���r.���r.���r/����__next__+��s���� zshlex.__next__)NNFF)N)NN)�__name__� __module__�__qualname__�__doc__r0����propertyr,���r7���r:���r=���r@���r>���r?���rU���rV���rX���r.���r.���r.���r/���r������s ������ / � FTc�����������������C���s$���t�|�|d�}d|_|sd|_t|�S�)z-Split the string *s* using shell-like syntax.)r���Tr ���)r���r���r����list)�sZcommentsr���Zlexr.���r.���r/���r���1��s ����c�����������������C���s���d��dd��|�D���S�)z3Return a shell-escaped string from *split_command*.r ���c�����������������s���s���|�]}t�|�V��qd�S�r1���)r���)�.0�argr.���r.���r/���� <genexpr><��s�����zjoin.<locals>.<genexpr>)r���)Z split_commandr.���r.���r/���r���:��s����z[^\w@%+=:,./-]c�����������������C���s,���|�sdS�t�|��dkr|�S�d|��dd��d�S�)z1Return a shell-escaped version of the string *s*.z''N�'z'"'"')�_find_unsafe�replace)r_���r.���r.���r/���r���A��s ����c�����������������C���s$���|�����}|sq tdt|����q�d�S�)NzToken: )r@���r3���r4���)ZlexerZttr.���r.���r/���� _print_tokensM��s����rf����__main__r���)FT)r\���rP����rer����collectionsr����ior����__all__r���r���r����compile�ASCII�searchrd���r���rf���rY����len�argv�fnrT����fr.���r.���r.���r/����<module>���s(��� ��