U
    h                     @   sP   d Z ddlmZ ddlZddlmZ ddlmZ edZ	G dd dej
ZdS )	zOptional fixer that changes all unprefixed string literals "..." to b"...".

br'abcd' is a SyntaxError on Python 2 but valid on Python 3.
ur'abcd' is a SyntaxError on Python 3 but valid on Python 2.

    )unicode_literalsN)token)
fixer_basez[^bBuUrR]?[\'\"]c                   @   s   e Zd ZdZdZdd ZdS )FixBytesTSTRINGc                 C   s4   |j tjkr0t|jr0| }d|j |_|S d S )Nb)typer   r   _literal_rematchvalueclone)selfnoderesultsnew r   M/var/www/html/venv/lib/python3.8/site-packages/libfuturize/fixes/fix_bytes.py	transform   s
    zFixBytes.transformN)__name__
__module____qualname__ZBM_compatibleZPATTERNr   r   r   r   r   r      s   r   )__doc__
__future__r   reZlib2to3.pgen2r   Zlib2to3r   compiler	   ZBaseFixr   r   r   r   r   <module>   s   
