File: //opt/alt/python38/lib/python3.8/site-packages/ply/__pycache__/cpp.cpython-38.pyc
U
տVX� �
@ sF d dl mZ dZdZdd� ZdZdZdZd d
� ZeZ dZ
dd
� Zdd� Zdd� Z
dd� Zdd� Zd dlZd dlZd dlZd dlZe�d�Zddddddddd d!� Zd"d#� ZG d$d%� d%e�ZG d&d'� d'e�Zed(k�rBd dlmZ e�� Zd dl Z e!e j"d) �Z#e#�$� Z%ee�Z&e&�'e%e j"d) � e&�(� Z)e)�s2�qBe*e&j+e)� �q dS )*� )�
generators)
ZCPP_ID�CPP_INTEGERZ CPP_FLOATZ
CPP_STRINGZCPP_CHAR�CPP_WSZCPP_COMMENT1ZCPP_COMMENT2Z CPP_POUNDZ
CPP_DPOUNDz+-*/%|&~^<>=!?()[]{}.,;:\'"c C s | j j| j�d�7 _| S )z\s+�
��lexer�lineno�value�count��t� r
�8/opt/alt/python38/lib/python3.8/site-packages/ply/cpp.py�t_CPP_WS s r z\#z\#\#z[A-Za-z_][\w_]*c C s | S )zA(((((0x)|(0X))[0-9a-fA-F]+)|(\d+))([uU][lL]|[lL][uU]|[uU]|[lL])?)r
r r
r
r r $ s r z?((\d+)(\.\d+)(e(\+|-)?(\d+))? | (\d+)e(\+|-)?(\d+))([lL]|[fF])?c C s | j j| j�d�7 _| S )z\"([^\\\n]|(\\(.|\n)))*?\"r r r r
r
r �t_CPP_STRING. s r c C s | j j| j�d�7 _| S )z(L)?\'([^\\\n]|(\\(.|\n)))*?\'r r r r
r
r �
t_CPP_CHAR4 s r c C s8 | j �d�}| j j|7 _d| _|r.d| nd| _ | S )z(/\*(.|\n)*?\*/)r r � )r r
r r �type)r Zncrr
r
r �t_CPP_COMMENT1: s
r c C s d| _ d| _dS )z
(//.*?(\n|$))r r N)r r r r
r
r �t_CPP_COMMENT2C s r c C s( | j d | _| j d | _ | j�d� | S �Nr � )r r r �skipr r
r
r �t_errorH s r Nz\?\?[=/\'\(\)\!<>\-]�#�\�^�[�]�|�{�}�~) �=�/�'�(�)�!�<�>�-c C s t �dd� | �S )Nc S s t | �� d S �N���)�
_trigraph_rep�group)�gr
r
r �<lambda>r � ztrigraph.<locals>.<lambda>)�
_trigraph_pat�sub)�inputr
r
r �trigraphq s r6 c @ s e Zd Zddd�ZdS )�MacroNFc C s0 || _ || _|| _|| _|r&|d | _d | _d S r, )�namer �arglist�variadic�vararg�source)�selfr8 r r9 r: r
r
r �__init__� s
zMacro.__init__)NF)�__name__�
__module__�__qualname__r>