o
    i0                     @  s  d Z ddlmZ ddlmZ dZerddlmZ ddlm	Z	m
Z
mZmZmZ ddlmZ ddlmZ ed	 Zeeee eee	f f Zed
 ZeeedB edB ee f eedB edB ee edB edB ee f eedB edB ee edB edB ee edB edB ee f	 f ZG dd deZdZdZ	 dZ	 G dd deddZedddddddZ	 G dd de Z!G dd de!Z"G dd dZ#G dd  d Z$G d!d" d"e#e$Z%dS )#ak  
This is the Docutils (Python Documentation Utilities) package.

Package Structure
=================

Modules:

- __init__.py: Contains component base classes, exception classes, and
  Docutils version information.

- core.py: Contains the ``Publisher`` class and ``publish_*()`` convenience
  functions.

- frontend.py: Runtime settings (command-line interface, configuration files)
  processing, for Docutils front-ends.

- io.py: Provides a uniform API for low-level input and output.

- nodes.py: Docutils document tree (doctree) node class library.

- statemachine.py: A finite state machine specialized for
  regular-expression-based text filters.

Subpackages:

- languages: Language-specific mappings of terms.

- parsers: Syntax-specific input parser modules or packages.

- readers: Context-specific input handlers which understand the data
  source and manage a parser.

- transforms: Modules used by readers and writers to modify
  the Docutils document tree.

- utils: Contains the ``Reporter`` system warning class and miscellaneous
  utilities used by readers, writers, and transforms.

  utils/urischemes.py: Contains a complete mapping of known URI addressing
  scheme names to descriptions.

- utils/math: Contains functions for conversion of mathematical notation
  between different formats (LaTeX, MathML, text, ...).

- writers: Format-specific output translators.
    )annotations)
namedtupleF)Sequence)AnyClassVarLiteralProtocolUnion)Element)	Transform)readerparserwriterinputoutputalphabeta	candidatefinalNc                   @  s$   e Zd ZU dZded< ddd	Zd
S )_UnknownReferenceResolveru-   Deprecated. Will be removed in Docutils 1.0.intprioritynoder
   returnboolc                C  s   d S N )selfr   r   r   W/var/www/html/karishye-ai-python/venv/lib/python3.10/site-packages/docutils/__init__.py__call__S   s   z"_UnknownReferenceResolver.__call__N)r   r
   r   r   )__name__
__module____qualname____doc____annotations__r    r   r   r   r   r   M   s   
 r   reStructuredTextz0.22.3 c                      s   e Zd ZU dZded< ded< ded< ded< ded< d	ed
< 			dd fddZdddZdddZdddZdddZ	  Z
S )VersionInfor   r   majorminormicro_ReleaseLevelsreleaselevelserialr   releaser   r   Tr   c              	     sV   d}||vrt d|f |dkr|st d|dkrt dt | ||||||S )Nr   zreleaselevel must be one of %r.r   z{releaselevel "final" must not be used with development versions (leads to wrong version ordering of the related __version__r   z%"serial" must be 0 for final releases)
ValueErrorsuper__new__)clsr)   r*   r+   r-   r.   r/   releaselevels	__class__r   r   r2   u   s   zVersionInfo.__new__otherobjectc                 C     t |tr	t| }t| |S r   )
isinstancetupler(   __lt__r   r7   r   r   r   r<         
zVersionInfo.__lt__c                 C  r9   r   )r:   r;   r(   __gt__r=   r   r   r   r?      r>   zVersionInfo.__gt__c                 C  r9   r   )r:   r;   r(   __le__r=   r   r   r   r@      r>   zVersionInfo.__le__c                 C  r9   r   )r:   r;   r(   __ge__r=   r   r   r   rA      r>   zVersionInfo.__ge__)r   r   r   r   r   T)r)   r   r*   r   r+   r   r-   r,   r.   r   r/   r   r   r(   )r7   r8   r   r   )r!   r"   r#   	__slots__r%   r2   r<   r?   r@   rA   __classcell__r   r   r5   r   r(   j   s    
 


r(   z-major minor micro releaselevel serial release      r   T)r)   r*   r+   r-   r.   r/   c                   @     e Zd ZdS )ApplicationErrorNr!   r"   r#   r   r   r   r   rG          rG   c                   @  rF   )	DataErrorNrH   r   r   r   r   rJ      rI   rJ   c                   @  sd   e Zd ZU dZdZded< 	 dZded< 	 dZded< 	 dZd	ed
< 	 dZ	ded< 	 dZ
ded< dS )SettingsSpecz
    Runtime setting specification base class.

    SettingsSpec subclass objects used by `docutils.frontend.OptionParser`.
    r   zClassVar[_SettingsSpecTuple]settings_specNzClassVar[dict[str, Any] | None]settings_defaultssettings_default_overridesClassVar[tuple[str, ...]]relative_path_settingszClassVar[str | None]config_sectionz ClassVar[tuple[str, ...] | None]config_section_dependencies)r!   r"   r#   r$   rL   r%   rM   rN   rP   rQ   rR   r   r   r   r   rK      s   
 &rK   c                   @  s4   e Zd ZU dZdddZdZded< dZd	ed
< dS )TransformSpeca  
    Runtime transform specification base class.

    Provides the interface to register "transforms" and helper functions
    to resolve references with a `docutils.transforms.Transformer`.

    https://docutils.sourceforge.io/docs/ref/transforms.html
    r   list[type[Transform]]c                 C  s,   | j dkrddl}|dt t| j S g S )z;Transforms required by this class.  Override in subclasses.r   r   NzwTransformSpec: the "default_transforms" attribute will be removed in Docutils 2.0.
Use get_transforms() method instead.)default_transformswarningswarnDeprecationWarninglist)r   rV   r   r   r   get_transforms  s   

zTransformSpec.get_transformsr   zClassVar[tuple[()]]rU   z#Sequence[_UnknownReferenceResolver]unknown_reference_resolversN)r   rT   )r!   r"   r#   r$   rZ   rU   r%   r[   r   r   r   r   rS     s   
 
	rS   c                   @  s8   e Zd ZU dZdZded< 	 dZded< 	 dddZdS )	Componentz#Base class for Docutils components.NzClassVar[_Components | None]component_typer   rO   	supportedformatstrr   r   c                 C  s
   || j v S )z
        Is `format` supported by this component?

        To be used by transforms to ask the dependent component if it supports
        a certain input context or output format.
        )r^   )r   r_   r   r   r   supportsN  s   
zComponent.supports)r_   r`   r   r   )r!   r"   r#   r$   r]   r%   r^   ra   r   r   r   r   r\   C  s   
 r\   )&r$   
__future__r   collectionsr   TYPE_CHECKINGcollections.abcr   typingr   r   r   r   r	   docutils.nodesr
   docutils.transformsr   _Componentsr;   r`   rY   dict_OptionTupler,   _SettingsSpecTupler   __docformat____version____version_details__r(   __version_info__	ExceptionrG   rJ   rK   rS   r\   r   r   r   r   <module>   s\   0		
5T>