o
    i                     @   sL   d Z ddlmZmZ G dd dZ	ddededed	edB d
ef
ddZdS )zParse link title   )
charCodeAtunescapeAllc                   @   s(   e Zd ZdZdddZdefddZdS )	_State)can_continuemarkerokposstrreturnNc                 C   s*   d| _ 	 d| _	 d| _	 d| _	 d| _d S )NF     )r   r   r   r	   r   self r   a/home/ubuntu/veenaModal/venv/lib/python3.10/site-packages/markdown_it/helpers/parse_link_title.py__init__	   s   z_State.__init__c                 C   s   | j S N)r	   r   r   r   r   __str__   s   z_State.__str__)r
   N)__name__
__module____qualname__	__slots__r   r	   r   r   r   r   r   r      s    
r   Nstringstartmaximum
prev_stater
   c                 C   s(  |}t  }|dur|j|_|j|_n*||kr|S t| |}|dkr+|dkr+|dkr+|S |d7 }|d7 }|dkr9d}||_||k rt| |}||jkra|d |_| jt| || 7  _d|_|S |dkrl|jdkrl|S |dkrz|d |k rz|d7 }|d7 }||k s@d|_| jt| || 7  _|S )	zParse link title within `str` in [start, max] range,
    or continue previous parsing if `prev_state` is defined (equal to result of last execution).
    N"   '   (      )   T\   )r   r	   r   r   r   r   r   r   )r   r   r   r   r   stater   coder   r   r   parseLinkTitle   s>   




r$   r   )__doc__common.utilsr   r   r   r	   intr$   r   r   r   r   <module>   s    