File: //usr/lib/python3/dist-packages/pygments/lexers/__pycache__/_postgres_builtins.cpython-310.pyc
o
���a�/ � @ s� d Z dZdZdZeeee�eeej e�� ��ZdZ
edkrcddlZzddl
mZ W n ey9 ddlmZ Y nw dd lmZ d
Zed Zed Zd
d� Zdd� Zdd� Zdd� Zdd� Ze� dS dS )z�
pygments.lexers._postgres_builtins
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Self-updating data files for PostgreSQL lexer.
:copyright: Copyright 2006-2021 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� ASSERTION�
ASSIGNMENT�
ASYMMETRIC�AT�ATTACH� ATTRIBUTE�
AUTHORIZATION�BACKWARD�BEFORE�BEGIN�BETWEEN�BIGINT�BINARY�BIT�BOOLEAN�BOTH�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�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�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�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� 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�anycompatiblenonarray�anycompatiblerange�
anyelement�anyenum�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�RAISE�RETURN�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 C sx t t��� jddd�} t| �� �}t|�}t|�}t t��� jddd�} t | �}t
td|� t
td|� t
td|� 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�keywords� r; �D/usr/lib/python3/dist-packages/pygments/lexers/_postgres_builtins.py�
update_myselfC s r= c C sB g }t �d| �D ]}|�|�d��� � q|std��|�� |S )NzPG_KEYWORD\("(.+?)"� zno keyword found)�re�finditer�append�group�upper�
ValueError�sort)�f�kw�mr; r; r< r3 P s r3 c C s� t � }| D ]A}d|v r
n:d|vrqt�dd|�}t�dd|�}dd� |�d�D �D ]}|�d �D ]}|�� }|s:q1|�d
�|�� �� q1q*qt|�}|�� |S )Nz<sect1z
<entry><type>z <replaceable>[^<]+</replaceable>� z<[^>]+>c S s( g | ]}|� d �D ]}d|vr |�q qS )�]�()�split)�.0�tmp�tr; r; r< �
<listcomp>l s �
�z#parse_datatypes.<locals>.<listcomp>�[�,� ) �setr? �subrL �strip�add�joinr. rE )rF �dtr� rN rO r; r; r< r0 [ s$ ��r0 c C s� g }t �d�}t �d�}t �d�}t| �} | D ]}|�|�d ur" nqtd��| D ]}|�|�}|d ur<|�|�d�� |�|�d urE nq)td��|sPtd��|�� |S )Nz*\s*<table id="datatype-pseudotypes-table">z$\s*<entry><type>(.+?)</type></entry>z\s*</table>z pseudo datatypes table not foundr> z'end of pseudo datatypes table not foundzpseudo datatypes not found)r? �compile�iter�matchrD rA rB rE )rF rY �re_start�re_entry�re_endr� rH r; r; r< r1 w s,
�
�r1 c C s� t | ��}|�� }W d � n1 sw Y t�d| tjtjB �}|�|�}|s2td|f ��t||�}|d |� � � | ||�
� d � }t | ddd��}|�|� W d � d S 1 saw Y d S )Nz^%s\s*=\s*\($.*?^\s*\)$z)Could not find existing definition for %s�w�
)�newline)�openr, r? rZ �M�S�searchrD r% �start�end�write)�filename� constnamer6 rF �data�re_matchrH � new_blockr; r; r< r4 � s
�
�
$"�r4 )�__doc__r* r( r) �tuple�sortedrT �map�str�lower�PLPGSQL_KEYWORDS�__name__r? �urllibr$ �ImportError�urllib.request�
pygments.utilr% �
SOURCE_URLr2 r+ r= r3 r0 r1 r4 r; r; r; r< �<module> s6
H> �
�