
    i 
                        S SK Jr  S SKJrJr  S SKJrJrJr  \(       a  S SK	J
r
JrJr  S SKJr  S SKJr   " S S5      r " S	 S
\\\5      rg)    )annotations)TYPE_CHECKINGAny)DelMembersMixinGetMembersMixinSetMembersMixin)	ItemsViewKeysView
ValuesView)Path)Modulec                  h    \ rS rSrSrSS jrSS jrSS jrSS jrSS jr	SS jr
SS	 jrSS
 jrSrg)LinesCollection   z=A simple dictionary containing the modules source code lines.c                    0 U l         gzInitialize the collection.N_dataselfs    V/home/james-whalen/.local/lib/python3.13/site-packages/griffe/_internal/collections.py__init__LinesCollection.__init__   s	    ,.
    c                     U R                   U   $ )zGet the lines of a file path.r   )r   keys     r   __getitem__LinesCollection.__getitem__   s    zz#r   c                     X R                   U'   g)zSet the lines of a file path.Nr   )r   r   values      r   __setitem__LinesCollection.__setitem__   s    

3r   c                    XR                   ;   $ )z*Check if a file path is in the collection.r   r   items     r   __contains__LinesCollection.__contains__    s    zz!!r   c                    g)z&A lines collection is always true-ish.T r   s    r   __bool__LinesCollection.__bool__$       r   c                6    U R                   R                  5       $ )z?Return the collection keys.

Returns:
    The collection keys.
)r   keysr   s    r   r.   LinesCollection.keys(   s     zz  r   c                6    U R                   R                  5       $ )zCReturn the collection values.

Returns:
    The collection values.
)r   valuesr   s    r   r1   LinesCollection.values0   s     zz  ""r   c                6    U R                   R                  5       $ )zAReturn the collection items.

Returns:
    The collection items.
)r   itemsr   s    r   r4   LinesCollection.items8   s     zz!!r   r   NreturnNone)r   r   r7   	list[str])r   r   r    r9   r7   r8   )r%   r   r7   boolr7   r:   )r7   r
   )r7   r   )r7   r	   )__name__
__module____qualname____firstlineno____doc__r   r   r!   r&   r*   r.   r1   r4   __static_attributes__r)   r   r   r   r      s-    G/ "!#"r   r   c                  P    \ rS rSrSrSr S
S jrSS jrSS jr\	SS j5       r
Srg	)ModulesCollectionA   z9A collection of modules, allowing easy access to members.Tc                    0 U l         gr   membersr   s    r   r   ModulesCollection.__init__G   s    *,2r   c                    g)z(A modules collection is always true-ish.Tr)   r   s    r   r*   ModulesCollection.__bool__L   r,   r   c                    XR                   ;   $ )z'Check if a module is in the collection.rF   r$   s     r   r&   ModulesCollection.__contains__P   s    ||##r   c                    U R                   $ )zMembers of the collection.

This property is overwritten to simply return `self.members`,
as `all_members` does not make sense for a modules collection.
rF   r   s    r   all_membersModulesCollection.all_membersT   s     ||r   rF   Nr6   r;   )r%   r   r7   r:   )r7   zdict[str, Module])r<   r=   r>   r?   r@   is_collectionr   r*   r&   propertyrN   rA   r)   r   r   rC   rC   A   s0    CM;3
$  r   rC   N)
__future__r   typingr   r   griffe._internal.mixinsr   r   r   collections.abcr	   r
   r   pathlibr   griffe._internal.modelsr   r   rC   r)   r   r   <module>rX      s=    # % U U??.-" -"`/ r   