
    kj                         S SK Jr  S SKJr  S SKJr   " S S5      r\" SS9 " S S	\5      5       r " S
 S\5      r\" SS9 " S S\5      5       r	\" SS9 " S S\5      5       r
\" SS9 " S S\5      5       rg)    )	dataclass)Enum)ComponentValuec                   *    \ rS rSrSS\S\4S jjrSrg)GrammarNode   indentreturnc                     [         e)N)NotImplementedErrorselfr	   s     [/mnt/mint/home/seanl/mnt/public/Repos/ladybird/Meta/Utils/CSSGrammar/Parser/grammar_node.pydumpGrammarNode.dump   s    !!     Nr   )__name__
__module____qualname____firstlineno__intstrr   __static_attributes__r   r   r   r   r      s    "3 "s " "r   r   T)frozenc                   6    \ rS rSr% \\S'   SS\S\4S jjrSr	g)	ComponentValueGrammarNode   component_valuer	   r
   c                 R    SSU 3 S3U R                   R                  US-   5      -   $ )N  >zComponentValue
   )r    r   r   s     r   r   ComponentValueGrammarNode.dump   s3    RxK 01D4H4H4M4MfWXj4YYYr   r   Nr   )
r   r   r   r   r   __annotations__r   r   r   r   r   r   r   r   r      s$    ##Z3 Zs Z Zr   r   c                       \ rS rSrSrSrSrg)CombinatorType   JuxtapositionAlternativesr   N)r   r   r   r   JUXTAPOSITIONALTERNATIVESr   r   r   r   r(   r(      s     $M "Lr   r(   c                   F    \ rS rSr% \\S'   \\   \S'   S	S\S\	4S jjr
Srg)
CombinatorGrammarNode    combinator_typechildrenr	   r
   c                     SSU 3 SU R                   R                   S3nU R                   H  nX#R                  US-   5      -  nM     U$ )Nr"   r#   zCombinator(z):
r$   )r1   valuer2   r   )r   r	   outputchilds       r   r   CombinatorGrammarNode.dump%   sS    r&k?+d.B.B.H.H-IN]]Ejj!,,F # r   r   Nr   )r   r   r   r   r(   r&   listr   r   r   r   r   r   r   r   r/   r/       s+    ##;3 s  r   r/   c                   6    \ rS rSr% \\S'   SS\S\4S jjrSr	g)	GroupGrammarNode.   r6   r	   r
   c                 R    SSU 3 S3U R                   R                  US-   5      -   $ )Nr"   r#   zGroup:
r$   r6   r   r   s     r   r   GroupGrammarNode.dump2   s-    RxK)DJJOOFQJ,GGGr   r   Nr   
r   r   r   r   r   r&   r   r   r   r   r   r   r   r:   r:   .   s$    H3 Hs H Hr   r:   c                   6    \ rS rSr% \\S'   SS\S\4S jjrSr	g)	OptionalGrammarNode6   r6   r	   r
   c                 R    SSU 3 S3U R                   R                  US-   5      -   $ )Nr"   r#   z
Optional:
r$   r=   r   s     r   r   OptionalGrammarNode.dump:   s-    RxK,tzzvz/JJJr   r   Nr   r?   r   r   r   rA   rA   6   s$    K3 Ks K Kr   rA   N)dataclassesr   enumr   (Utils.CSSGrammar.Parser.component_valuesr   r   r   r(   r/   r:   rA   r   r   r   <module>rH      s    !  C" " $Z Z Z"T " $
K 
 
 $H{ H H $K+ K Kr   