
    Vi              	          S SK Jr  S SK Jr  S SK Jr  S SKJs  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 S
KJr  S\S\S\S\4S jrS\\R*                     S\\R,                     S\\\R*                  \R,                  4      4S jrg)    )Iterator)List)TupleN)InvalidSpecifier)SpecifierSetcompare_golang_specifiercompare_maven_specifier)SemgrepError)	Ecosystem	ecosystemrangeversionreturnc           	        ^ U [        [        R                  " 5       5      :X  aD  UR                  S5       Vs/ s H  o3R	                  S5      PM     nn[        U4S jU 5       5      $ U [        [        R                  " 5       5      :X  a  [        TR                  S5      5      S:  a5   [        U5      n[        [        UR                  T/5      5      5      S:  nU$ UR                  S5       Vs/ s H  o3R	                  S5      PM     nn [        U4S jU 5       5      nU$  [        U5      n[        [        UR                  T/5      5      5      S:  nU$ s  snf ! [         a    [        SU 35      ef = fs  snf ! [         a  n[        S	T S
U SU 35      eS nAff = f! [         a    [        SU 35      ef = f)N, c              3   <   >#    U  H  n[        UT5      v   M     g 7fNr
   .0sr   s     n/home/james-whalen/.local/share/pipx/venvs/semgrep/lib/python3.13/site-packages/semdep/package_restrictions.py	<genexpr>is_in_range.<locals>.<genexpr>   s     K
1*1g66
   -   r   z/unknown package version comparison expression: c              3   <   >#    U  H  n[        UT5      v   M     g 7fr   r   r   s     r   r   r   +   s     V:a5aAA:r   z5bad golang module version comparison between version z and spec range z: )r   outMavensplitstripallGomodlenr   listfilterr   r   	Exception)	r   r   r   r   
specifiersssmatchedresultes	     `      r   is_in_ranger0      s   Iciik**,1KK,<=,<qggcl,<
=K
KKK	i		,	,w}}S!"Q&!%(d299gY#789A= 16C0@A0@1''#,0@JAV:VV M	e$B$ryy'3459GN5 > $ "EeWM 
 B  "KG9Tdejdkkmnompq    	A%I 	s;   E)3E 0E:E? %3F% E7?
F"	FF"%F>search_for_ranges	have_depsc              #     #    U H{  nU  Hr  nUR                   UR                   :X  d  M  UR                  UR                  :X  d  M;  [        UR                   UR                  UR                  5      (       d  Mm  X24v   Mt     M}     g 7fr   )r   packager0   semver_ranger   )r1   r2   have_deptarget_ranges       r   dependencies_range_match_anyr8   >   st      -L&&(*<*<< ((H,<,<< **L,E,ExGWGW  $.. . s   #BB.B7B)typingr   r   r   ,semgrep.semgrep_interfaces.semgrep_output_v1semgrep_interfacessemgrep_output_v1r!   $semdep.external.packaging.specifiersr   r   semdep.golang_versionr	   semdep.maven_versionr   semgrep.errorr   r   strboolr0   
ScaPatternFoundDependencyr8        r   <module>rG      s       : : A = : 8 & B 9  S  3  4  H/CNN+/C''(/ eCNNC$7$7789/rF   