
    c	                     F   d Z ddlZddlmZ ddlmZmZ  G d de          Z G d de          Z G d	 d
e          Z	 G d de          Z
 G d de          Z G d de          Z G d de          Z G d de          Z G d de          Z G d de          ZdS )z0Definitions of types for the Autoimport program.    N)Enum)
NamedTupleOptionalc                   *    e Zd ZdZdZdZdZdZdZdZ	dS )	Sourcez:Describes the source of the package, for sorting purposes.r                  N)
__name__
__module____qualname____doc__PROJECTMANUALBUILTINSTANDARDSITE_PACKAGEUNKNOWN     <lib/python3.11/site-packages/rope/contrib/autoimport/defs.pyr   r      s2        DDGFGHLGGGr   r   c                   R    e Zd ZU dZeej                 ed<   eed<   e	ed<   e	ed<   dS )
ModuleInfoz5Descriptor of information to get names from a module.filepathmodname
underlinedprocess_importsN)
r   r   r   r   r   pathlibPath__annotations__strboolr   r   r   r   r      sL         ??w|$$$$LLLr   r   c                   F    e Zd ZU dZej        ed<   eed<   eed<   eed<   dS )
ModuleFilez=Descriptor of information to get names from a file using ast.r   r   r   r   N)	r   r   r   r   r    r!   r"   r#   r$   r   r   r   r&   r&      sG         GGlLLLr   r&   c                   6    e Zd ZU dZdZeed<   eed<   eed<   dS )ModuleCompiledz5Descriptor of information to get names using imports.Nr   r   r   )r   r   r   r   r   r#   r"   r$   r   r   r   r(   r(   &   s>         ??HLLLr   r(   c                   "    e Zd ZdZdZdZdZdZdS )PackageTypezIDescribes the type of package, to determine how to get the names from it.r   r   r	   r
   N)r   r   r   r   r   r   COMPILEDSINGLE_FILEr   r   r   r*   r*   /   s(        SSGHHKKKr   r*   c                   v    e Zd ZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdS )NameTypezMDescribes the type of Name for lsp completions. Taken from python lsp server.r   r	   r
   r   r            	   
                                                N)r   r   r   r   TextMethodFunctionConstructorFieldVariableClass	InterfaceModulePropertyUnitValuer   KeywordSnippetColorFile	ReferenceFolder
EnumMemberConstantStructEventOperatorTypeParameterr   r   r   r.   r.   8   s        WWDFHKEHEIFHDEDGGEDIFJHFEHMMMr   r.   c                   R    e Zd ZU dZeed<   eed<   eej	                 ed<   e
ed<   dS )PackagezAttributes of a package.namesourcepathtypeN)r   r   r   r   r#   r"   r   r   r    r!   r*   r   r   r   r\   r\   V   sI         ""
IIINNN
7<
    
r   r\   c                   F    e Zd ZU dZeed<   eed<   eed<   eed<   eed<   dS )Namez#A Name to be added to the database.r]   r   packager^   	name_typeN)r   r   r   r   r#   r"   r   r.   r   r   r   rb   rb   _   sH         --
IIILLLLLLNNNr   rb   c                   (    e Zd ZU dZeed<   eed<   dS )PartialNamezPartial information of a Name.r]   rd   N)r   r   r   r   r#   r"   r.   r   r   r   rf   rf   i   s-         ((
IIIr   rf   c                   <    e Zd ZU dZeed<   eed<   eed<   eed<   dS )SearchResultzSearch Result.import_statementr]   r^   itemkindN)r   r   r   r   r#   r"   intr   r   r   rh   rh   p   s=         
IIIKKKMMMMMr   rh   )r   r    enumr   typingr   r   r   r   r&   r(   r*   r.   r\   rb   rf   rh   r   r   r   <module>rn      s   6 6        ' ' ' ' ' ' ' '    T                     Z       $       t   <    j       :       *       :     r   