+
    2j                        R t ^ RIHt ^ RIt^ RIHt ^RIHtHtH	t	H
t
HtHtHtHtHtHtHtHt ]'       d   ^ RIHt ^RIHt  ! R R]4      t ! R	 R
]4      t ! R R4      tR# )z=Process URI templates per http://tools.ietf.org/html/rfc6570.)annotationsN)TYPE_CHECKING)CommaExpansion	ExpansionFormStyleQueryContinuationFormStyleQueryExpansionFragmentExpansionLabelExpansionLiteralPathExpansionPathStyleExpansionReservedCommaExpansionReservedExpansionSimpleExpansion)Iterable)Variablec                  >    ] tR t^t$ RtR]R&   R R ltR R ltRtR	# )
ExpansionReservedErrorz9Exception thrown for reserved but unsupported expansions.str	expansionc                    V ^8  d   QhRRRR/#    r   r   returnNone )formats   "c/home/user/billing-ledger-validation/.venv/lib/python3.14/site-packages/uri_template/uritemplate.py__annotate__#ExpansionReservedError.__annotate__        # ## #$ #    c                	    Wn         R # Nr   selfr   s   &&r   __init__ExpansionReservedError.__init__       "r!   c                   V ^8  d   QhRR/# r   r   r   r   )r   s   "r   r   r      s     : : :r!   c                (    RV P                   ,           # )Convert to string.zUnsupported expansion: r$   r&   s   &r   __str__ExpansionReservedError.__str__   s    (4>>99r!   r$   N	__name__
__module____qualname____firstlineno____doc____annotations__r'   r/   __static_attributes__r   r!   r   r   r      s    CN#: :r!   r   c                  >    ] tR t^ t$ RtR]R&   R R ltR R ltRtR	# )
ExpansionInvalidErrorz(Exception thrown for unknown expansions.r   r   c                    V ^8  d   QhRRRR/# r   r   )r   s   "r   r   "ExpansionInvalidError.__annotate__%   r    r!   c                	    Wn         R # r#   r$   r%   s   &&r   r'   ExpansionInvalidError.__init__%   r)   r!   c                   V ^8  d   QhRR/# r+   r   )r   s   "r   r   r<   (   s     2 2 2r!   c                (    RV P                   ,           # )r-   zBad expansion: r$   r.   s   &r   r/   ExpansionInvalidError.__str__(   s     4>>11r!   r$   Nr1   r   r!   r   r:   r:       s    2N#2 2r!   r:   c                      ] tR t^-t$ RtR]R&   R R lt]R R l4       t]R R	 l4       t	R
 R lt
R R lt]R R l4       tR R ltR R ltRtR# )URITemplatezu
URI Template object.

Constructor may raise ExpansionReservedError, ExpansionInvalidError, or VariableInvalidError.
zlist[Expansion]
expansionsc                    V ^8  d   QhRRRR/# )r   templater   r   r   r   )r   s   "r   r   URITemplate.__annotate__6   s     $: $: $: $:r!   c                	   . V n         \        P                  ! R V4      pV EF  pV'       g   K  RV^ ,          8X  Edg   RVR,          8X  EdX   V^R p\        P                  ! RV4      '       d'   V P                   P	                  \        V4      4       Kt  RV^,          8X  d'   V P                   P	                  \        V4      4       K  RV^,          8X  d'   V P                   P	                  \        V4      4       K  RV^,          8X  d(   V P                   P	                  \        V4      4       EK  RV^,          8X  d(   V P                   P	                  \        V4      4       EKF  RV^,          8X  d(   V P                   P	                  \        V4      4       EK{  R	V^,          8X  d(   V P                   P	                  \        V4      4       EK  R
V^,          8X  d(   V P                   P	                  \        V4      4       EK  RV^,          8X  dm   ^\        V4      8  d6   RV^,          8X  d(   V P                   P	                  \        V4      4       EK8  V P                   P	                  \        V4      4       EK_  V^,          R9   d   \!        V4      h\#        V4      hRV9  d/   RV9  d(   V P                   P	                  \%        V4      4       EK  \#        V4      h	  R# )z(\{[^\}]*\}){}z*^([a-zA-Z0-9_]|%[0-9a-fA-F][0-9a-fA-F]).*$+#./;?&,z=!@|N)rD   resplitmatchappendr   r   r   r	   r   r   r   r   lenr   r   r   r:   r
   )r&   rF   partspartr   s   &&   r   r'   URITemplate.__init__6   s   (3DDG^#b/ $Qr
I!MyYY..y/IJa.../@/KLa.../@/KLa...~i/HIa...}Y/GHa.../A)/LMa.../Fy/QRa.../I)/TUa.T]Q OO223I)3TU OO22>)3LMq'V+4T::3D99Ds$..wt}=3D99C r!   c                   V ^8  d   QhRR/# )r   r   zIterable[Variable]r   )r   s   "r   r   rG   ]   s      - r!   c                    / pV P                    F$  pVP                   F  pW1VP                  &   K  	  K&  	  VP                  4       # )zGet all variables in template.rD   	variablesnamevaluesr&   varsr   vars   &   r   r_   URITemplate.variables\   s@     %'I **!$SXX + ) {{}r!   c                   V ^8  d   QhRR/# )r   r   zIterable[str]r   )r   s   "r   r   rG   f   s     3 3 3r!   c                    / pV P                    F$  pVP                   F  pW1VP                  &   K  	  K&  	  VP                  4        Uu. uF  q3P                  NK  	  up# u upi )z'Get names of all variables in template.r^   rb   s   &   r   variable_namesURITemplate.variable_namese   sT     %'I **!$SXX + ) %)KKM2MSM222s   	A c                   V ^8  d   QhRR/# r+   r   )r   s   "r   r   rG   n   s     Y Y# Yr!   c                    V P                    Uu. uF  q"P                  V4      NK  	  ppRP                  V Uu. uF
  q"f   K  VNK  	  up4      # u upi u upi )zv
Expand the template.

May raise ExpansionFailed if a composite value is passed to a variable with a prefix modifier.
 )rD   expandjoinr&   kwargsr   expandeds   &,  r   rm   URITemplate.expandn   sO     ?CooNo$$V,oNww8W8i		8WXX OWs   AAAc                   V ^8  d   QhRR/# )r   r   rC   r   )r   s   "r   r   rG   w   s     . .; .r!   c                    V P                    Uu. uF  q"P                  V4      NK  	  pp\        RP                  V4      4      # u upi )z
Expand the template, preserving expansions for missing variables.

May raise ExpansionFailed if a composite value is passed to a variable with a prefix modifier.
rl   )rD   partialrC   rn   ro   s   &,  r   ru   URITemplate.partialw   sA     @DO)%%f-O2778,-- Ps   Ac                   V ^8  d   QhRR/# )r   r   boolr   )r   s   "r   r   rG      s     , ,$ ,r!   c                :    \        V 4      V P                  4       8H  # )z(Determine if template is fully expanded.)r   rm   r.   s   &r   rq   URITemplate.expanded   s     D	T[[]*+r!   c                   V ^8  d   QhRR/# r+   r   )r   s   "r   r   rG      s     J J Jr!   c                t    RP                  V P                   Uu. uF  p\        V4      NK  	  up4      # u upi )-Convert to string, returns original template.rl   )rn   rD   r   r%   s   & r   r/   URITemplate.__str__   s+    wwH9IHIIHs   5c                   V ^8  d   QhRR/# r+   r   )r   s   "r   r   rG      s      # r!   c                    \        V 4      # )r}   )r   r.   s   &r   __repr__URITemplate.__repr__   s    4yr!   )rD   N)r2   r3   r4   r5   r6   r7   r'   propertyr_   rh   rm   ru   rq   r/   r   r8   r   r!   r   rC   rC   -   sl      $:L   3 3Y. , ,J r!   rC   )r6   
__future__r   rT   typingr   rD   r   r   r   r   r   r	   r
   r   r   r   r   r   collections.abcr   variabler   	Exceptionr   r:   rC   r   r!   r   <module>r      sX    C " 	  U U U U ("
:Y 
:
2I 
2^ ^r!   