
h(                 @   s  d  Z  Gd d   d e  Z e   Z e j Z e j Z e j Z e j Z e j Z e j	 Z	 e j
 Z
 e j Z e j Z e j Z e j Z e j Z e j Z e j Z e e _ e e _ e e _ d d   Z d d   Z e d e d e d e d	 e d
 e d e	 d e	 j d e	 j d e	 j d e	 j d e	 j d e	 j d e
 d e
 j d e
 j d e
 j j d e
 j d e
 j d e
 j d e
 j d e
 j d e
 j  d e
 j  j! d e
 j" d e
 j# d e
 j d  e
 j d! e
 j$ d" e
 j% d# e
 j% j d$ e
 j% j& d% e
 j% j' d& e
 j% j! d' e d( e j( d) e d* e j) d+ e j* d, e j+ d- e j, d. e j- d/ e j. d0 e j d1 e j/ d2 e j0 d3 e j d4 e j1 d5 e j2 d6 e j3 d7 e d8 e j4 d9 e j5 d: e j6 d; e j7 d< e j7 j8 d= e j9 d> e d? e j: d@ e dA e j; dB e dC e j< dD e j= dE e j> dF e j? dG e j2 dH e j@ dI e dJ e jA dK e jB dL e j dM e jC dN e jD dO e jE dP e jF dQ e jG dR e jH dS e jI dT iO ZJ dU S)Vz
    pygments.token
    ~~~~~~~~~~~~~~

    Basic token types and the standard tokens.

    :copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
c               @   sj   e  Z d  Z d Z d d   Z d d   Z d d   Z d d	   Z d
 d   Z d d   Z	 d d   Z
 d S)
_TokenTypeNc             C   sC   g  } |  } x& | d  k	 r4 | j  |  | j } q W| j   | S)N)appendparentreverse)selfbufnode r   k/home/www/lekema-backend.kofcorporation.com/venv/lib/python3.12/site-packages/pip/_vendor/pygments/token.pysplit   s    
z_TokenType.splitc             G   s   t    |  _ d  S)N)setsubtypes)r   argsr   r   r	   __init__   s    z_TokenType.__init__c             C   s;   |  | k p: t  |  |  j k o: | d  t |    |  k S)N)type	__class__len)r   valr   r   r	   __contains__   s    z_TokenType.__contains__c             C   sh   | s | d j    r( t j |  |  St |  | f  } t |  | |  |  j j |  |  | _ | S)N    )isuppertuple__getattribute__r   setattrr   addr   )r   r   newr   r   r	   __getattr__"   s    	z_TokenType.__getattr__c             C   s!   d |  r d p d d j  |   S)NToken. )join)r   r   r   r	   __repr__+   s    z_TokenType.__repr__c             C   s   |  S)Nr   )r   r   r   r	   __copy__.   s    z_TokenType.__copy__c             C   s   |  S)Nr   )r   memor   r   r	   __deepcopy__2   s    z_TokenType.__deepcopy__)__name__
__module____qualname__r   r
   r   r   r   r    r!   r#   r   r   r   r	   r      s   		r   c             C   s
   |  | k S)z
    Return True if ``ttype`` is a subtype of ``other``.

    exists for backwards compatibility. use ``ttype in other`` now.
    r   )Zttypeotherr   r   r	   is_token_subtypeU   s    r(   c             C   sP   t  |  t  r |  S|  s t St } x& |  j d  D] } t | |  } q3 W| S)a}  
    Convert a string into a token type::

        >>> string_to_token('String.Double')
        Token.Literal.String.Double
        >>> string_to_token('Token.Literal.Number')
        Token.Literal.Number
        >>> string_to_token('')
        Token

    Tokens that are already tokens are returned unchanged:

        >>> string_to_token(String)
        Token.Literal.String
    r   )
isinstancer   r   r
   getattr)sr   itemr   r   r	   string_to_tokentype^   s    r-   r   wescerrxkZkcZkdZknZkpZkrZktnZnaZnbZbpZncnoZndZnineZnfZfmpynlZnnZnxntZnvZvcZvgZviZvmlZldr+   ZsaZsbZscZdlZsds2ZseZshZsiZsxsrs1ZssmZmbZmfZmhZmiZilZmooZowpZpmcZchZcmcpZcpfZc1ZcsgZgdgeZgrZghZgiZgoZgpZgsZgugtN)K__doc__r   r   r   ZText
WhitespaceZEscapeErrorZOtherZKeywordNameZLiteralStringNumberZPunctuationOperatorCommentZGenericr(   r-   ZConstantZDeclarationZ	NamespaceZPseudoZReservedZTypeZ	AttributeZBuiltinZClassZ	DecoratorZEntity	ExceptionZFunctionZMagicZPropertyZLabelZTagZVariableZGlobalZInstanceZDateZAffixZBacktickZCharZ	DelimiterZDocDoubleZHeredocZInterpolZRegexSingleZSymbolZBinZFloatZHexZIntegerZLongZOctZWordZMarkerZHashbangZ	MultilineZPreprocZPreprocFileSpecialZDeletedZEmphZHeadingZInsertedZOutputZPromptZStrongZ
SubheadingZ	TracebackZSTANDARD_TYPESr   r   r   r	   <module>	   s   +																																																																											