ok
Direktori : /opt/alt/python38/lib64/python3.8/site-packages/cffi/__pycache__/ |
Current File : //opt/alt/python38/lib64/python3.8/site-packages/cffi/__pycache__/cparser.cpython-38.pyc |
U ل=^W� � @ s� d dl mZ d dlmZmZ d dlmZmZ zd dl mZ W n e k rX ddl Z Y nX ddlZddlZddl Z z(e jdk r�ddlZnddlZe�� ZW n e k r� dZY nX dd � Zd Ze�dejejB �Ze�dejejB �Ze�d �Ze�d�Ze�d�Ze�d�Zdae�dej�Z e�d�Z!e�d�Z"e�d�Z#e�d�Z$e�d�Z%e�d�Z&e�d�Z'dd� Z(dd� Z)dd� Z*dd � Z+d!d"� Z,d#d$� Z-d%d&� Z.G d'd(� d(e/�Z0dS ))� )�model)�COMMON_TYPES�resolve_common_type)�FFIError� CDefError)� _pycparser� N)� c C s dd l } dd l} d S �Nr )Zpycparser.yacctabZpycparser.lextab)� pycparser� r �/cparser.py�%_workaround_for_static_import_finders s r z<cdef source string>z/\*.*?\*/|//([^\n\\]|\\.)*?$z?^\s*#\s*define\s+([A-Za-z_][A-Za-z_0-9]*)\b((?:[^\n\\]|\\.)*?)$z=\s*\.\.\.\s*[,}]|\.\.\.\s*\}z__dotdotdot\d+__$z\[\s*\.\.\.\s*\]z\w+|\Sz-?0?x?[0-9a-f]+[lu]*$z\b(__stdcall|WINAPI)\bz[(]\s*(__stdcall|WINAPI)\bz\b__cdecl\bz9\bextern\s*"(Python|Python\s*\+\s*C|C\s*\+\s*Python)"\s*.z'[*]\s*((const|volatile|restrict)\b\s*)+z3(\b(int|long|short|signed|unsigned|char)\s*)+\.\.\.z\b(double|float)\s*\.\.\.c C s t d krt�� a t S �N)� _parser_cacher ZCParserr r r r �_get_parser1 s r c C s g }t �| �}|sq�|�| d |�� � � |�d� d}|�|�� � |�� }| �d|�rl|�d� |d7 }d}|}|t| �k r�| | }|dkr�|d7 }n.|dkr�|dkr�q�|d8 }n|dkr�|dkr�q�|d7 }qt| ||� | | |d � } q|�| � d�|�S )N�(�)�*r r z,;=� ) �_r_star_const_space�search�append�start�group�end� startswith�len�join)�csource�parts�match�closing�endpos�level�i�cr r r �_workaround_for_old_pycparser7 s: r'