
    <iW                     f    S SK Jr  S SKJr  S SKJr  S SKJr  S SKJ	r	  S SK
Jr  Sr " S S	\5      rg)
    )Enum)ATN)	ATNConfig)ATNConfigSet)RuleStopState)SemanticContextNc                   t   \ rS rSrSrSrSr\S\S\	4S j5       r
\S\	4S j5       r\S\	4S	 j5       r\S
\4S j5       r\S
\4S j5       r\S
\4S j5       r\S
\4S j5       r\S
\4S j5       r\S
\4S j5       r\S
\4S j5       r\S\	4S j5       r\S\	4S j5       r\S\	4S j5       r\S
\4S j5       rSrg)PredictionMode   r         modeconfigsc                 t   U R                  U5      (       a  gU[        R                  :X  aO  UR                  (       a>  [	        5       nU H,  n[        U[        R                  S9nUR                  U5        M.     UnU R                  U5      nU R                  U5      =(       a    U R                  U5      (       + $ )NT)configsemantic)allConfigsInRuleStopStatesr
   SLLhasSemanticContextr   r   r   NONEaddgetConflictingAltSubsetshasConflictingAltSethasStateAssociatedWithOneAlt)clsr   r   dupcaltsetss         S/home/james-whalen/.local/lib/python3.13/site-packages/antlr4/atn/PredictionMode.py#hasSLLConflictTerminatingPrediction2PredictionMode.hasSLLConflictTerminatingPrediction   s     ))'22 >%%% ))"n A!_5I5IJAGGAJ !  ..w7''0b9Y9YZa9b5bb    c                 &    [        S U 5       5      $ )Nc              3   V   #    U  H  n[        UR                  [        5      v   M!     g 7fN
isinstancestater   .0cfgs     r   	<genexpr>:PredictionMode.hasConfigInRuleStopState.<locals>.<genexpr>        K7C:cii777   ')anyr   r   s     r   hasConfigInRuleStopState'PredictionMode.hasConfigInRuleStopState       K7KKKr"   c                 &    [        S U 5       5      $ )Nc              3   V   #    U  H  n[        UR                  [        5      v   M!     g 7fr%   r&   r)   s     r   r,   <PredictionMode.allConfigsInRuleStopStates.<locals>.<genexpr>   r.   r/   )allr2   s     r   r   )PredictionMode.allConfigsInRuleStopStates   r5   r"   r   c                 $    U R                  U5      $ r%   )getSingleViableAltr   r   s     r   resolvesToJustOneViableAlt)PredictionMode.resolvesToJustOneViableAltp  s    %%g..r"   c                 .    U R                  U5      (       + $ r%   )hasNonConflictingAltSetr=   s     r   allSubsetsConflict!PredictionMode.allSubsetsConflict|  s    ..w777r"   c                 &    [        S U 5       5      $ )Nc              3   >   #    U  H  n[        U5      S :H  v   M     g7fr   Nlenr*   altss     r   r,   9PredictionMode.hasNonConflictingAltSet.<locals>.<genexpr>  s     6gd3t9>g   r0   r=   s     r   rA   &PredictionMode.hasNonConflictingAltSet  s    6g666r"   c                 &    [        S U 5       5      $ )Nc              3   >   #    U  H  n[        U5      S :  v   M     g7frF   rG   rI   s     r   r,   6PredictionMode.hasConflictingAltSet.<locals>.<genexpr>  s     5WT3t9q=WrL   r0   r=   s     r   r   #PredictionMode.hasConflictingAltSet  s    5W555r"   c                 x   ^ U(       d  g[        [        U5      5      m[        U4S j[        U5       5       5      $ )NTc              3   ,   >#    U  H	  oT:H  v   M     g 7fr%    )r*   rJ   firsts     r   r,   1PredictionMode.allSubsetsEqual.<locals>.<genexpr>  s     ;]T5=]s   )nextiterr9   )r   r   rU   s     @r   allSubsetsEqualPredictionMode.allSubsetsEqual  s,    T']#;T'];;;r"   c                     U R                  U5      n[        U5      S:X  a  [        [        U5      5      $ [        R
                  $ Nr   )getAltsrH   rW   rX   r   INVALID_ALT_NUMBER)r   r   r9   s      r   getUniqueAltPredictionMode.getUniqueAlt  s5    kk'"s8Q;S	?"%%%r"   c                 (    [         R                  " U6 $ r%   )setunionr=   s     r   r]   PredictionMode.getAlts  s    yy'""r"   c                    [        5       nU Hl  n[        UR                  R                  UR                  45      nUR                  US 5      nUc  [        5       nXRU'   UR                  UR                  5        Mn     UR                  5       $ r%   )
dicthashr(   stateNumbercontextgetrb   r   altvalues)r   r   configToAltsr   hrJ   s         r   r   'PredictionMode.getConflictingAltSubsets  su    vAagg))19956A##At,D|u"&QHHQUUO  ""$$r"   c                     [        5       nU HU  nUR                  UR                  S 5      nUc  [        5       nXBUR                  '   UR	                  UR
                  5        MW     U$ r%   )rf   rj   r(   rb   r   rk   )r   r   mr   rJ   s        r   getStateToAltMapPredictionMode.getStateToAltMap  sT    FA55$'D|u!!''
HHQUUO  r"   c                 `    [        S U R                  U5      R                  5        5       5      $ )Nc              3   >   #    U  H  n[        U5      S :H  v   M     g7frF   rG   rI   s     r   r,   >PredictionMode.hasStateAssociatedWithOneAlt.<locals>.<genexpr>  s     U.Td3t9>.TrL   )r1   rr   rl   r2   s     r   r   +PredictionMode.hasStateAssociatedWithOneAlt  s'    Uc.B.B7.K.R.R.TUUUr"   c                     [        5       nU H@  n[        U5      nUR                  U5        [        U5      S:  d  M0  [        R
                  s  $    [        U5      $ r\   )rb   minr   rH   r   r^   )r   r   
viableAltsrJ   minAlts        r   r<   !PredictionMode.getSingleViableAlt  sL    U
DYFNN6":q ---	 
 :r"   rT   N)__name__
__module____qualname____firstlineno__r   LLLL_EXACT_AMBIG_DETECTIONclassmethodr
   r   r    r3   r   listr>   rB   rA   r   rY   r_   r]   r   rr   r   r<   __static_attributes__rT   r"   r   r
   r
      s   , C& 
B$  !~ cn cl c cF Ll L L L L L` / / / 8 8 8 7T 7 7 6$ 6 6 <T < < &$ & & #T # # 	%l 	% 	%& l   V, V V   r"   r
   )enumr   antlr4.atn.ATNr   antlr4.atn.ATNConfigr   antlr4.atn.ATNConfigSetr   antlr4.atn.ATNStater   antlr4.atn.SemanticContextr   r
   rT   r"   r   <module>r      s,      * 0 - 6^T ^r"   