U
    luf                     @   s   d Z ddlmZmZ ddlmZ ddlmZmZm	Z	m
Z
mZ ddlmZmZmZmZmZmZmZmZmZ dgZdd Zd	Zd
ZdZG dd deZdS )z
    pygments.lexers.usd
    ~~~~~~~~~~~~~~~~~~~

    The module that parses Pixar's Universal Scene Description file format.

    :copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
    )
RegexLexerbygroups)words)COMMON_ATTRIBUTESKEYWORDS	OPERATORSSPECIAL_NAMESTYPES)	CommentKeywordNameNumberOperatorPunctuationStringText
WhitespaceUsdLexerc                 C   s   t | ddd|fgS )Nz\b)prefixsuffix)words_)r   type_ r   7/tmp/pip-unpacked-wheel-7eq1ciah/pygments/lexers/usd.py	_keywords   s    r   z(\w+(?:\[\])?)z%(\w+(?:\:\w+)*)(?:(\.)(timeSamples))?z([ \t]+)c                   @   s  e Zd ZdZdZdZddgZddgZdd	je	e
ed
eejeejeejeejeejjeefdje	e
ed
eejeejeejeejjee	fdje	e
ed
eejeejeejeejjee	fdje	e
ed
eejeejeejjeefgeeej eeej eeej dejfg eee dd eD  eeej defdejfdefdefdefde fde!fde!fde!fde!fdej"fde!j#fde!j$fdej%fdefd efd!efg iZ&d"S )#r   zi
    A lexer that parses Pixar's Universal Scene Description file format.

    .. versionadded:: 2.6
    ZUSDz1https://graphics.pixar.com/usd/release/index.htmlZusdZusdaz*.usdz*.usdarootz4(custom){_WHITESPACE}(uniform)(\s+){}(\s+){}(\s*)(=))_WHITESPACEz&(custom){_WHITESPACE}{}(\s+){}(\s*)(=)z'(uniform){_WHITESPACE}{}(\s+){}(\s*)(=)z{}{_WHITESPACE}{}(\s*)(=)z\b\w+:[\w:]+\bc                 C   s   g | ]}|d  t jfqS )z\[\])r   Type).0r   r   r   r   
<listcomp>E   s     zUsdLexer.<listcomp>z
[(){}\[\]]z#.*?$,;=z$[-]*([0-9]*[.])?[0-9]+(?:e[+-]*\d+)?z'''(?:.|\n)*?'''z"""(?:.|\n)*?"""z'.*?'z".*?"z$<(\.\./)*([\w/]+|[\w/]+\.\w+[\w:]*)>z@.*?@z\(.*"[.\\n]*".*\)z\A#usda .+$z\s+z\w+z[_:.]+N)'__name__
__module____qualname____doc__nameurlaliases	filenamesformat_TYPE_BASE_ATTRIBUTEr   r   r   Tokenr   r   r   	Attributer   ZTokensr   r   r   r   ZBuiltinsr   r   r	   r   r
   Singler   r   	NamespaceZInterpolZDocZHashbangtokensr   r   r   r   r      s                        




N)r&   Zpygments.lexerr   r   r   r   Zpygments.lexers._usd_builtinsr   r   r   r   r	   Zpygments.tokenr
   r   r   r   r   r   r   r   r   __all__r   r,   r-   r   r   r   r   r   r   <module>   s   
,