File: //lib/python3/dist-packages/pygments/lexers/__pycache__/_postgres_builtins.cpython-311.pyc
�
�E�c0 � � � d Z dZdZdZ e e ee� � e eej e� � � � z
� � � � ZdZ
edk r7ddlZddl
mZ dd lmZ d
Zedz Zedz Zd
� Zd� Zd� Zd� Zd� Z e� � dS dS )a#
pygments.lexers._postgres_builtins
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Self-updating data files for PostgreSQL lexer.
Run with `python -I` to update itself.
:copyright: Copyright 2006-2022 by the Pygments team, see AUTHORS.
:license: BSD, see LICENSE for details.
(� �ABORT�ABSOLUTE�ACCESS�ACTION�ADD�ADMIN�AFTER� AGGREGATE�ALL�ALSO�ALTER�ALWAYS�ANALYSE�ANALYZE�AND�ANY�ARRAY�AS�ASC�
ASENSITIVE� ASSERTION�
ASSIGNMENT�
ASYMMETRIC�AT�ATOMIC�ATTACH� ATTRIBUTE�
AUTHORIZATION�BACKWARD�BEFORE�BEGIN�BETWEEN�BIGINT�BINARY�BIT�BOOLEAN�BOTH�BREADTH�BY�CACHE�CALL�CALLED�CASCADE�CASCADED�CASE�CAST�CATALOG�CHAIN�CHAR� CHARACTER�CHARACTERISTICS�CHECK�
CHECKPOINT�CLASS�CLOSE�CLUSTER�COALESCE�COLLATE� COLLATION�COLUMN�COLUMNS�COMMENT�COMMENTS�COMMIT� COMMITTED�COMPRESSION�CONCURRENTLY�
CONFIGURATION�CONFLICT�
CONNECTION�
CONSTRAINT�CONSTRAINTS�CONTENT�CONTINUE�
CONVERSION�COPY�COST�CREATE�CROSS�CSV�CUBE�CURRENT�CURRENT_CATALOG�CURRENT_DATE�CURRENT_ROLE�CURRENT_SCHEMA�CURRENT_TIME�CURRENT_TIMESTAMP�CURRENT_USER�CURSOR�CYCLE�DATA�DATABASE�DAY�
DEALLOCATE�DEC�DECIMAL�DECLARE�DEFAULT�DEFAULTS�
DEFERRABLE�DEFERRED�DEFINER�DELETE� DELIMITER�
DELIMITERS�DEPENDS�DEPTH�DESC�DETACH�
DICTIONARY�DISABLE�DISCARD�DISTINCT�DO�DOCUMENT�DOMAIN�DOUBLE�DROP�EACH�ELSE�ENABLE�ENCODING� ENCRYPTED�END�ENUM�ESCAPE�EVENT�EXCEPT�EXCLUDE� EXCLUDING� EXCLUSIVE�EXECUTE�EXISTS�EXPLAIN�
EXPRESSION� EXTENSION�EXTERNAL�EXTRACT�FALSE�FAMILY�FETCH�FILTER�FINALIZE�FIRST�FLOAT� FOLLOWING�FOR�FORCE�FOREIGN�FORWARD�FREEZE�FROM�FULL�FUNCTION� FUNCTIONS� GENERATED�GLOBAL�GRANT�GRANTED�GREATEST�GROUP�GROUPING�GROUPS�HANDLER�HAVING�HEADER�HOLD�HOUR�IDENTITY�IF�ILIKE� IMMEDIATE� IMMUTABLE�IMPLICIT�IMPORT�IN�INCLUDE� INCLUDING� INCREMENT�INDEX�INDEXES�INHERIT�INHERITS� INITIALLY�INLINE�INNER�INOUT�INPUT�INSENSITIVE�INSERT�INSTEAD�INT�INTEGER� INTERSECT�INTERVAL�INTO�INVOKER�IS�ISNULL� ISOLATION�JOIN�KEY�LABEL�LANGUAGE�LARGE�LAST�LATERAL�LEADING� LEAKPROOF�LEAST�LEFT�LEVEL�LIKE�LIMIT�LISTEN�LOAD�LOCAL� LOCALTIME�LOCALTIMESTAMP�LOCATION�LOCK�LOCKED�LOGGED�MAPPING�MATCH�MATERIALIZED�MAXVALUE�METHOD�MINUTE�MINVALUE�MODE�MONTH�MOVE�NAME�NAMES�NATIONAL�NATURAL�NCHAR�NEW�NEXT�NFC�NFD�NFKC�NFKD�NO�NONE� NORMALIZE�
NORMALIZED�NOT�NOTHING�NOTIFY�NOTNULL�NOWAIT�NULL�NULLIF�NULLS�NUMERIC�OBJECT�OF�OFF�OFFSET�OIDS�OLD�ON�ONLY�OPERATOR�OPTION�OPTIONS�OR�ORDER�
ORDINALITY�OTHERS�OUT�OUTER�OVER�OVERLAPS�OVERLAY�
OVERRIDING�OWNED�OWNER�PARALLEL�PARSER�PARTIAL� PARTITION�PASSING�PASSWORD�PLACING�PLANS�POLICY�POSITION� PRECEDING� PRECISION�PREPARE�PREPARED�PRESERVE�PRIMARY�PRIOR�
PRIVILEGES�
PROCEDURAL� PROCEDURE�
PROCEDURES�PROGRAM�PUBLICATION�QUOTE�RANGE�READ�REAL�REASSIGN�RECHECK� RECURSIVE�REF�
REFERENCES�REFERENCING�REFRESH�REINDEX�RELATIVE�RELEASE�RENAME�
REPEATABLE�REPLACE�REPLICA�RESET�RESTART�RESTRICT�RETURN� RETURNING�RETURNS�REVOKE�RIGHT�ROLE�ROLLBACK�ROLLUP�ROUTINE�ROUTINES�ROW�ROWS�RULE� SAVEPOINT�SCHEMA�SCHEMAS�SCROLL�SEARCH�SECOND�SECURITY�SELECT�SEQUENCE� SEQUENCES�SERIALIZABLE�SERVER�SESSION�SESSION_USER�SET�SETOF�SETS�SHARE�SHOW�SIMILAR�SIMPLE�SKIP�SMALLINT�SNAPSHOT�SOME�SQL�STABLE�
STANDALONE�START� STATEMENT�
STATISTICS�STDIN�STDOUT�STORAGE�STORED�STRICT�STRIP�SUBSCRIPTION� SUBSTRING�SUPPORT� SYMMETRIC�SYSID�SYSTEM�TABLE�TABLES�TABLESAMPLE�
TABLESPACE�TEMP�TEMPLATE� TEMPORARY�TEXT�THEN�TIES�TIME� TIMESTAMP�TO�TRAILING�TRANSACTION� TRANSFORM�TREAT�TRIGGER�TRIM�TRUE�TRUNCATE�TRUSTED�TYPE�TYPES�UESCAPE� UNBOUNDED�UNCOMMITTED�UNENCRYPTED�UNION�UNIQUE�UNKNOWN�UNLISTEN�UNLOGGED�UNTIL�UPDATE�USER�USING�VACUUM�VALID�VALIDATE� VALIDATOR�VALUE�VALUES�VARCHAR�VARIADIC�VARYING�VERBOSE�VERSION�VIEW�VIEWS�VOLATILE�WHEN�WHERE�
WHITESPACE�WINDOW�WITH�WITHIN�WITHOUT�WORK�WRAPPER�WRITE�XML�
XMLATTRIBUTES� XMLCONCAT�
XMLELEMENT� XMLEXISTS� XMLFOREST�
XMLNAMESPACES�XMLPARSE�XMLPI�XMLROOT�XMLSERIALIZE�XMLTABLE�YEAR�YES�ZONE);�bigint� bigserial�bitzbit varying�bool�boolean�box�bytea�char� characterzcharacter varying�cidr�circle�date�decimalzdouble precision�float4�float8�inet�int�int2�int4�int8�integer�interval�json�jsonb�line�lseg�macaddr�macaddr8�money�numeric�path�pg_lsn�pg_snapshot�point�polygon�real�serial�serial2�serial4�serial8�smallint�smallserial�text�time� timestamp�timestamptz�timetz�tsquery�tsvector�
txid_snapshot�uuid�varbit�varcharzwith time zonezwithout time zone�xml)�any�anyarray�
anycompatible�anycompatiblearray�anycompatiblemultirange�anycompatiblenonarray�anycompatiblerange�
anyelement�anyenum�
anymultirange�anynonarray�anyrange�cstring�
event_trigger�fdw_handler�index_am_handler�internal�language_handler�pg_ddl_command�record�table_am_handler�trigger�tsm_handler�unknown�void)�ALIAS�CONSTANT�DIAGNOSTICS�ELSIF� EXCEPTION�EXIT�FOREACH�GET�LOOP�NOTICE�OPEN�PERFORM�QUERY�RAISErG �REVERSE�SQLSTATE�WHILE�__main__� N)�urlopen)�format_linesz/https://github.com/postgres/postgres/raw/masterz/src/include/parser/kwlist.hz/doc/src/sgml/datatype.sgmlc � � t t � � � � � � dd�� � } t | � � � � � }t
|� � }t |� � }t t � � � � � � dd�� � } t | � � }t t d|� � t t d|� � t t d|� � d S )Nzutf-8�ignore)�errors� DATATYPES�PSEUDO_TYPES�KEYWORDS)r- �
DATATYPES_URL�read�decode�list�
splitlines�parse_datatypes�
parse_pseudos�KEYWORDS_URL�parse_keywords�
update_consts�__file__)�content� data_file� datatypes�pseudos�keywordss �D/usr/lib/python3/dist-packages/pygments/lexers/_postgres_builtins.py�
update_myselfrF J s� � ��-�(�(�-�-�/�/�6�6�w�x�6�P�P����+�+�-�-�.�.� �#�I�.�.� �� �*�*���,�'�'�,�,�.�.�5�5�g�h�5�O�O��!�'�*�*���h��Y�7�7�7��h���8�8�8��h�
�H�5�5�5�5�5� c � � g }t j d| � � D ]<}|� |� d� � � � � � � �=|st d� � �|� � � |S )NzPG_KEYWORD\("(.+?)"� zno keyword found)�re�finditer�append�group�upper�
ValueError�sort)�f�kw�ms rE r= r= W sw � �
����3�Q�7�7� *� *�A��I�I�a�g�g�a�j�j�&�&�(�(�)�)�)�)�� 1��/�0�0�0�
��� � � �� rG c � � t � � }| D ]�}d|v r n�d|vr�
t j dd|� � }t j dd|� � }d� |� d� � D � � D ]k}|� d� � D ]S}|� � � }|s�|� d � |� � � � � � � �T�l��t |� � }|� � � |S )
Nz<sect1z
<entry><type>z <replaceable>[^<]+</replaceable>� z<[^>]+>c �J � g | ] }|� d � � D ]}d|v�|�� �!S )�]�()�split)�.0�tmp�ts rE �
<listcomp>z#parse_datatypes.<locals>.<listcomp>s sH � � A� A� A�c�!$���3���A� A��3�a�<�<� �3?�<�<�<rG �[�,� ) �setrJ �subrY �strip�add�joinr8 rP )rQ �dtr� r[ r\ s rE r: r: b s � �
�U�U��� 0� 0�D��4������d�*�*�� �6�<�b�$�G�G�D��6�)�R��.�.�D�A� A�T�Z�Z��_�_� A� A� A�
0�
0�����3��� 0� 0�A���� � �A��&�h��F�F�3�8�8�A�G�G�I�I�.�.�/�/�/�/�0�
0� �"�X�X��
��� � � �� rG c � � g }t j d� � }t j d� � }t j d� � }t | � � } | D ]}|� |� � � n�t d� � �| D ]X}|� |� � }|�(|� |� d� � � � |� |� � � n�Yt d� � �|st d� � �|� � � |S )Nz*\s*<table id="datatype-pseudotypes-table">z$\s*<entry><type>(.+?)</type></entry>z\s*</table>z pseudo datatypes table not foundrI z'end of pseudo datatypes table not foundzpseudo datatypes not found)rJ �compile�iter�matchrO rL rM rP )rQ rf �re_start�re_entry�re_endr� rS s rE r; r; ~ s � �
���:�K�L�L���:�E�F�F����N�+�+����G�G��� A� A�D��~�~�d�#�#�/��� 0� �?�@�@�@�� H� H�D����t�$�$�A��}�� � �!�'�'�!�*�*�%�%�%��|�|�D�!�!�-��� .� �F�G�G�G�� ;��9�:�:�:�
��� � � �� rG c �D � t | � � 5 }|� � � }d d d � � n# 1 swxY w Y t j d|z t j t j z � � }|� |� � }|st d|��� � �t ||� � }|d |� � � � |z ||�
� � d � z }t | dd�� � 5 }|� |� � d d d � � d S # 1 swxY w Y d S )Nz^%s\s*=\s*\($.*?^\s*\)$z'Could not find existing definition for �w�
)�newline)�openr6 rJ rh �M�S�searchrO r. �start�end�write)�filename� constnamer@ rQ �data�re_matchrS � new_blocks rE r> r> � s� � �
�(�^�^� �q��6�6�8�8�D� � � � � � � � � � � ���� � � � � �:�8�9�D�b�d�R�T�k�R�R���O�O�D�!�!��� +��*�'�i�*� +� +�
+� !��G�4�4� ��J�Q�W�W�Y�Y�J��)�+�d�1�5�5�7�7�8�8�n�<��
�(�C��
.�
.�
.� �!�
�G�G�D�M�M�M� � � � � � � � � � � � ���� � � � � � s �1�5�5�2D�D�D)�__doc__r4 r2 r3 �tuple�sortedra �map�str�lower�PLPGSQL_KEYWORDS�__name__rJ �urllib.requestr- �
pygments.utilr. �
SOURCE_URLr< r5 rF r= r: r; r> � rG rE �<module>r� s. ��
�
�J��X<
� �|��: �u�V�V�C�C��-�-���C�C�� �8�4L�4L�0M�0M�M�N�N�O�O��� � �z���
�I�I�I�&�&�&�&�&�&�*�*�*�*�*�*� C�J�� >�>�L��!>�>�M�6� 6� 6� � � �� � �8� � �:� � �"