
    _OgN                        S SK rS SKrS SKrS SKJr  S SKJr  SSKJ	r	  SSKJ
r
  \R                  (       a
  S SKrSSKJr  \R                  " S5      r " S	 S
\
R"                  \R$                  R&                  5      r " S S\5      rg)    N)	urlencode)urlparse   )
exceptions)modelssessionTc                      \ rS rSrSr    SS\S\S\R                  \	   SSS	\R                  \R                  \\R                  \   4      S
\R                  \   S\R                  \R                  \\4      S\R                  \   SS4S jjrS\4S jrS\R                  \	SS4   4S jrS\	4S jrSS jrSS\SS 4S jjrS\	4S jrSrg)GitHubIterator   zCThe :class:`GitHubIterator` class powers all of the iter_* methods.Ncounturlclsr	   session.GitHubSessionparamsetagheaderslist_keyreturnc	                    [         R                  R                  U 0 U5        Xl        Xl        X l        S U l        U R
                  U l        X0l        U=(       d    0 U l	        U R                  U R                  5        S U l        [        U=(       d    0 5      U l        S U l        SU l        Xl        U(       a  U R                  R#                  SU05        [%        U R
                  5      R&                  U l        g )Nr   If-None-Match)r   
GitHubCore__init__originalr   r   last_url_apir   r   _remove_noner   dictr   last_responselast_statusr   updater   path)	selfr   r   r   r	   r   r   r   r   s	            T/Users/admin/workspace/ai/Jarvis/env/lib/python3.13/site-packages/github3/structs.pyr   GitHubIterator.__init__   s     	""4W5&+
)-	!7=|$++& &*	)-gm)<9= !2:LL$ 78!$((+00	    c                 <    SU R                    SU R                   S3$ )Nz<GitHubIterator [z, z]>)r   r#   r$   s    r%   _reprGitHubIterator._reprE   s    "4::,b2>>r'   c              #     #    U R                   U R                  sU l        nU R                  nSU R                  s=:  a  S::  a"  O  OU R                  S:w  a  U R                  US'   SU;  a  U R                  S:X  a  SUS'   U R
                  n[        U R
                  [        R                  5      (       a  [        R                  " U R
                  U S9nU R                  S:X  d  U R                  S:  Ga5  U R                  (       Ga"  U R                  U R                  XS9nX@l        UR                  U l        U(       a  S nU R                  (       d@  UR                  R!                  S5      (       a   UR                  R!                  S5      U l        U R#                  U5      nUc  g [%        U[&        5      (       a  U R(                  b   XPR(                     n[%        U[&        5      (       a  [        U R
                  [        R                  5      (       a  [,        R.                  " SU5      eUR!                  S5      (       a  US	 UR!                  S	5      (       a  US		 UR1                  5       nU HK  nUc  M  U" U5      v   U =R                  U R                  S:  a  S
OS-  sl        U R                  S:X  d  MK    O   UR2                  R!                  S0 5      nUR!                  SS5      U l        U R                  S:X  d  U R                  S:  a  U R                  (       a  GM   g g g g ! [*         a    [,        R.                  " SU5      ef = f7f)Nr   d   per_pager   )r   r   ETagz6GitHub's API returned a body that could not be handledzLast-Modifiedr   nextr    )r   r   r   r   r   r   
issubclassr   r   	functoolspartial_getr    status_coder!   r   get	_get_json
isinstancer   r   KeyErrorr   UnprocessableResponseBodyitemslinks)r$   r   r   r   responsejsonirel_nexts           r%   __iter__GitHubIterator.__iter__H   s     $$++v,,tzz S TZZ2%5!%F:V#

b(8!$F:hhdhh 1 122##DHHd;CzzR4::>t}}}yyf ! H "*'33D99!1!1!5!5f!=!=$,,008	>>(+D| $%%$--*C.D $%%dhh(9(9::$>># 
 88F##V88O,,_-zz|9!f

4::>aq8
::?   ~~))&"5H$LL3DMg zzR4::>t}}}>}>*   $>># s,   GML, C M=A(M(M,"MMc                 x    [        U S5      (       d  U R                  5       U l        [        U R                  5      $ )N__i__)hasattrrC   rF   r1   r)   s    r%   __next__GitHubIterator.__next__   s+    tW%%DJDJJr'   c                 &    U R                  US5      $ )N   )_json)r$   r?   s     r%   r9   GitHubIterator._get_json   s    zz(C((r'   conditionalc                     U R                   U l        U(       a*  U R                  (       a  U R                  U R                  S'   S U l        U R	                  5       U l        U $ )Nr   )r   r   r   r   rC   rF   )r$   rN   s     r%   refreshGitHubIterator.refresh   sA    ]]
499,0IIDLL)	]]_
r'   c                 "    U R                  5       $ )N)rH   r)   s    r%   r1   GitHubIterator.next   s    }}r'   )rF   r   r   r   r   r   r    r!   r   r   r   r   r#   r   )NNNN)r?   zrequests.models.Response)F)__name__
__module____qualname____firstlineno____doc__intstrtTyper
   OptionalMappingr   r*   	GeneratorrC   rH   r9   boolrP   r1   __static_attributes__ r'   r%   r   r      s   M ?C $37$(,1,1 ,1 VVAY	,1
 ),1 

199S!**S/%9:;,1 jjo,1 AIIc3h/0,1 **S/,1 
,1\?s ?A4!++atm4 A4F !  
)4 4D a r'   r   c                   $  ^  \ rS rSrSrSr   SS\S\S\R                  \
   SSS	\R                  \R                  \\R                  \   4      S
\R                  \   S\R                  \R                  \\4      4U 4S jjjrS rS rSrU =r$ )SearchIterator   a  This is a special-cased class for returning iterable search results.

It inherits from :class:`GitHubIterator <github3.structs.GitHubIterator>`.
All members and methods documented here are unique to instances of this
class. For other members and methods, check its parent class.

searchr   r   r   r	   r   r   r   r   c           	      F   > [         TU ]  XX4XVU5        SU l        / U l        g )Nr   )superr   total_countr=   )	r$   r   r   r   r	   r   r   r   	__class__s	           r%   r   SearchIterator.__init__   s'     	S6I !46
r'   c                 v    SR                  U R                  U R                  [        U R                  5      5      $ )Nz<SearchIterator [{}, {}?{}]>)formatr   r#   r   r   r)   s    r%   r*   SearchIterator._repr   s-    -44JJ		9T[[#9
 	
r'   c                     U R                  US5      nUR                  SU R                  5      U l        UR                  S/ 5      U l        UR                  S5      $ )NrK   ri   r=   )rL   r8   ri   r=   )r$   r?   r@   s      r%   r9   SearchIterator._get_json   sN    zz(C(  88M43C3CDXXgr*
xx  r'   )r=   ri   )NNN)rT   rU   rV   rW   rX   _ratelimit_resourcerY   rZ   r[   r\   r
   r]   r^   r   r*   r9   ra   __classcell__)rj   s   @r%   rd   rd      s     # ?C $3777 7 VVAY	7
 )7 

199S!**S/%9:;7 jjo7 AIIc3h/07 7 

! !r'   rd   )collections.abccollectionsr4   typingr[   requests.compatr   r   r2   r   r   TYPE_CHECKINGrequests.modelsrequestsr	   TypeVarr
   r   abcIteratorr   rd   rb   r'   r%   <module>r}      sc       % $  ?? IIcNHV&&(@(@ HV)!^ )!r'   