File: //opt/alt/python35/lib64/python3.5/lib2to3/fixes/__pycache__/fix_ws_comma.cpython-35.pyc
��YfB  �               @   sS   d  Z  d d l m Z d d l m Z d d l m Z Gd d �  d e j � Z d S)z�Fixer that changes 'a ,b' into 'a, b'.
This also changes '{a :b}' into '{a: b}', but does not touch other
uses of colons.  It does not touch other uses of whitespace.
�   )�pytree)�token)�
fixer_basec               @   s^   e  Z d  Z d Z d Z e j e j d � Z e j e j	 d � Z	 e e	 f Z
 d d �  Z d S)�
FixWsCommaTzH
    any<(not(',') any)+ ',' ((not(',') any)+ ',')* [not(',') any]>
    �,�:c             C   s�   | j  �  } d } xw | j D]l } | |  j k rd | j } | j �  r[ d | k r[ d | _ d } q | r� | j } | s� d | _ d } q W| S)NF�
� T� )ZcloneZchildren�SEPS�prefix�isspace)�selfZnodeZresults�newZcommaZchildr   � r   �?/opt/alt/python35/lib64/python3.5/lib2to3/fixes/fix_ws_comma.py�	transform   s    					
zFixWsComma.transformN)�__name__�
__module__�__qualname__ZexplicitZPATTERNr   ZLeafr   �COMMA�COLONr   r   r   r   r   r   r      s   r   N)�__doc__r	   r   Zpgen2r   r   ZBaseFixr   r   r   r   r   �<module>   s