ó
    6°h   ã                  óÀ   • S SK Jr  S SKrS SKJrJrJrJrJrJ	r	J
r
   " S S\	5      r " S S\	5      r\
\\\
S\
\\4   \\4      4   r " S S	\	5      r " S
 S\	5      rg)é    )ÚannotationsN)ÚCallableÚDictÚIteratorÚListÚOptionalÚProtocolÚTuplec                  óh   • \ rS rSrSr\R                  SS j5       r\R                  SS j5       rSr	g)	ÚIHooksé   zžA collection of hook functions that can be used to extend a
function's behavior. Hooks are called in lexicographic order,
based on the names of their sources.c                ó   • g ©N© )ÚselfÚsourceÚhooks      Ú;/usr/lib/python3/dist-packages/mercurial/interfaces/misc.pyÚaddÚ
IHooks.add   ó   € àó    c                ó   • g r   r   )r   Úargss     r   Ú__call__ÚIHooks.__call__   r   r   r   N)r   Úbytesr   r   )Úreturnr   )
Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__ÚabcÚabstractmethodr   r   Ú__static_attributes__r   r   r   r   r      s;   † ñ,ð 	×Ñóó ðð 	×Ñóó ór   r   c                  ó¸   • \ rS rSrSr\R                  S	S j5       r\R                  S	S j5       r\R                  S
S j5       r	\R                  SS j5       r
Srg)ÚIDirsé!   z6a multiset of directory names from a set of file pathsc                ó   • g r   r   ©r   Úpaths     r   ÚaddpathÚIDirs.addpath$   r   r   c                ó   • g r   r   r+   s     r   ÚdelpathÚIDirs.delpath(   r   r   c                ó   • g r   r   ©r   s    r   Ú__iter__ÚIDirs.__iter__,   r   r   c                ó   • g r   r   )r   Úds     r   Ú__contains__ÚIDirs.__contains__0   r   r   r   N)r,   r   r   ÚNone)r   zIterator[bytes])r7   r   r   Úbool)r   r    r!   r"   r#   r$   r%   r-   r0   r4   r8   r&   r   r   r   r(   r(   !   sk   † Ù@à×Ñóó ðð 	×Ñóó ðð 	×Ñóó ðð 	×Ñóó ór   r(   c                  ó2  • \ rS rSr% SrS\S'   S\S'   S\S'   S\S'   S\S'   S\S	'   S\S
'   S\S'   \R                  SS j5       r\R                  SS j5       r	\R                  SS j5       r
\R                  SS j5       r\R                  SS j5       rSrg)ÚIUrléB   aý  Reliable URL parser.

This parses URLs and provides attributes for the following
components:

<scheme>://<user>:<passwd>@<host>:<port>/<path>?<query>#<fragment>

Missing components are set to None. The only exception is
fragment, which is set to '' if present but empty.

If parsefragment is False, fragment is included in query. If
parsequery is False, query is included in path. If both are
False, both fragment and query are included in path.

See http://www.ietf.org/rfc/rfc2396.txt for more information.
úOptional[bytes]r,   ÚschemeÚuserÚpasswdÚhostÚportÚqueryÚfragmentc                ó   • g r   r   r3   s    r   ÚcopyÚ	IUrl.copy]   r   r   c                ó   • g r   r   r3   s    r   ÚauthinfoÚIUrl.authinfoa   r   r   c                ó   • g r   r   r3   s    r   ÚisabsÚ
IUrl.isabse   r   r   c                ó   • g r   r   r3   s    r   Ú	localpathÚIUrl.localpathi   r   r   c                ó   • g r   r   r3   s    r   ÚislocalÚIUrl.islocalm   r   r   r   N)r   r=   )r   Ú	AuthInfoT©r   r;   )r   r   )r   r    r!   r"   r#   Ú__annotations__r$   r%   rH   rK   rN   rQ   rT   r&   r   r   r   r=   r=   B   s¹   ‡ ñð" ÓØÓØ
ÓØÓØ
ÓØ
ÓØÓØÓà×Ñóó ðð 	×Ñóó ðð 	×Ñóó ðð 	×Ñóó ðð 	×Ñóó ór   r=   c                  ó  • \ rS rSr% SrS\S'   S\S'   S\S'   S\S	'   S\S
'   S\S'   S\S'   \R                  SSS jj5       r\	\R                  SS j5       5       r
\R                  SS j5       r\	\R                  SS j5       5       rSrg)ÚIPathér   z4Represents an individual path and its configuration.r   ÚnamezOptional[IPath]Ú	main_pathr=   ÚurlÚraw_urlÚbranchÚrawlocÚlocNc                ó   • g r   r   )r   Únew_raw_locations     r   rH   Ú
IPath.copy}   r   r   c                ó   • g)z-is this a path variant to be used for pushingNr   r3   s    r   Úis_push_variantÚIPath.is_push_variant�   ó   � r   c                ó   • g)zºget a "copy" of the path, but suitable for pushing

This means using the value of the `pushurl` option (if any) as the url.

The original path is available in the `main_path` attribute.
Nr   r3   s    r   Úget_push_variantÚIPath.get_push_variant†   ri   r   c                ó   • g)zkReturn sub-options and their values for this path.

This is intended to be used for presentation purposes.
Nr   r3   s    r   Ú
suboptionsÚIPath.suboptions�   ri   r   r   r   )rd   r?   r   rZ   rW   )r   rZ   )r   zDict[bytes, bytes])r   r    r!   r"   r#   rX   r$   r%   rH   Úpropertyrg   rk   rn   r&   r   r   r   rZ   rZ   r   sŸ   ‡ Ù>à
ƒKØÓØ	ƒIØƒMØƒMØƒMØ	ƒJà×Ñõó ðð Ø×Ñó<ó ó ð<ð 	×Ñóó ðð Ø×Ñóó ó ór   rZ   )Ú
__future__r   r$   Útypingr   r   r   r   r   r	   r
   r   r(   r   rV   r=   rZ   r   r   r   Ú<module>rs      s‹   ðõ #ã 
÷÷ ñ ôˆXô ôˆHô ð( Ø	ØØØØ�%˜�,ÑØØðñ	
ñðñ
€	ô-ˆ8ô -ô`#ˆHõ #r   