%PDF- %PDF-
Direktori : /lib/python3/dist-packages/babel/messages/__pycache__/ |
Current File : //lib/python3/dist-packages/babel/messages/__pycache__/jslexer.cpython-312.pyc |
� ƪb� � �. � d Z ddlmZ ddlZ eg d�ed�� Zddd d dd�Z ej d ej � Z ej dej � Z ej d� Z ej dej � Z ej d� Z ej dej z � Z ej d� Z edd� Zd ej dej � fd ej d� fd ej d� fd ej dej ej z � fdefde fd ej dej( � fd ej d!ej* � fd" ej d#d$j- eej0 e� � z � fd% ej d&ej � fd' ej d(ej( ej z � fgZd)� Zd*� Zd+� Zd-d,�Zy).z� babel.messages.jslexer ~~~~~~~~~~~~~~~~~~~~~~ A simple JavaScript 1.5 lexer which is used for the JavaScript extractor. :copyright: (c) 2013-2022 by the Babel Team. :license: BSD, see LICENSE for more details. � )� namedtupleN)+�+�-�*�%z!=z==�<�>z<=z>=�=z+=z-=z*=z%=z<<z>>z>>>z<<=z>>=z>>>=�&z&=�|z|=z&&z||�^z^=�(�)�[�]�{�}�!�--�++�~�,�;�.�:T)�key�reverse��� � � )�b�f�n�r�tz[\w$_][\w\d$_]*z[\w$_][\w\d$_.]*[\w\d$_.]z/=?z%/(?:[^/\\]*(?:\\.[^/\\]*)*)/[a-zA-Z]*z(\r\n|\n|\r)z\\z[a-fA-F0-9]{1,4}�Tokenztype value linenoz\s+z<!--.*�linecommentz//.*�multilinecommentz /\*.*?\*/�dotted_name�name�numberzb( (?:0|[1-9]\d*) (\.\d+)? ([eE][-+]?\d+)? | (0x[a-fA-F0-9]+) )�jsx_tagz(?:</?[^>\s]+|/>)�operatorz(%s)r �template_stringz`(?:[^`\\]*(?:\\.[^`\\]*)*)`�stringzT( '(?:[^'\\]*(?:\\.[^'\\]*)*)' | "(?:[^"\\]*(?:\\.[^"\\]*)*)" )c � � g }t D ]3 \ }}| s|rd|v r�|s|dk( r�|dk( r|s�d}|j ||f� �5 |S )ze Get a tokenization rule list given the passed syntax options. Internal to this module. �jsxr0 r+ r, )�_rules�append)r3 �dottedr0 �rules� token_type�rules �8/usr/lib/python3/dist-packages/babel/messages/jslexer.py� get_rulesr; 8 se � � �E�"� )�� �D��z�e�z�&9���:�1B�#B����&����J� ���j�$�'�(� )� �L� c �X � | j dk( r| j dv S | j dv S )zzA helper function that helps the tokenizer to decide if the current token may be followed by a division operator. r/ )r r r r r )r, r- r1 �regexp)�type�value)�tokens r: �indicates_divisionrB L s0 � � �z�z�Z���{�{�9�9�9��:�:�?�?�?r<