
    l i3                           G d  d          Z dS )c                   J    e Zd ZdZdeddfdZdefdZdefdZde	de
fd	ZdS )
Docat  Define the documentation of a type annotation using `Annotated`, to be
        used in class attributes, function and method parameters, return values,
        and variables.

    The value should be a positional-only string literal to allow static tools
    like editors and documentation generators to use it.

    This complements docstrings.

    The string value passed is available in the attribute `documentation`.

    Example:

    ```Python
    from typing import Annotated
    from annotated_doc import Doc

    def hi(name: Annotated[str, Doc("Who to say hi to")]) -> None:
        print(f"Hi, {name}!")
    ```
    documentationreturnNc                    || _         d S Nr   )selfr   s     I/var/www/findabus/venv/lib/python3.11/site-packages/annotated_doc/main.py__init__zDoc.__init__   s    *    c                     d| j         dS )NzDoc()r   r	   s    r
   __repr__zDoc.__repr__   s    -d(----r   c                 *    t          | j                  S r   )hashr   r   s    r
   __hash__zDoc.__hash__   s    D&'''r   otherc                 Z    t          |t                    st          S | j        |j        k    S r   )
isinstancer   NotImplementedr   )r	   r   s     r
   __eq__z
Doc.__eq__!   s+    %%% 	"!!!U%888r   )__name__
__module____qualname____doc__strr   r   intr   objectboolr    r   r
   r   r      s         ,+c + + + + +.# . . . .(# ( ( ( (9F 9t 9 9 9 9 9 9r   r   N)r   r!   r   r
   <module>r"      s7   #9 #9 #9 #9 #9 #9 #9 #9 #9 #9r   