o
    ÞË·ey  ã                   @   s4   d dl mZmZ ddlmZ dgZG dd„ dƒZdS )é    )ÚListÚOptionalé   )ÚKeyPressÚ
EmacsStatec                   @   sJ   e Zd ZdZddd„Zddd„Zedefdd	„ƒZdd
d„Z	ddd„Z
dS )r   z5
    Mutable class to hold Emacs specific state.
    ÚreturnNc                 C   s   g | _ d | _d S ©N)ÚmacroÚcurrent_recording©Úself© r   ú]/var/www/ideatree/venv/lib/python3.10/site-packages/prompt_toolkit/key_binding/emacs_state.pyÚ__init__   s   
zEmacsState.__init__c                 C   s
   d | _ d S r   ©r
   r   r   r   r   Úreset   s   
zEmacsState.resetc                 C   s
   | j duS )z&Tell whether we are recording a macro.Nr   r   r   r   r   Úis_recording   s   
zEmacsState.is_recordingc                 C   s
   g | _ dS )zStart recording macro.Nr   r   r   r   r   Ústart_macro   s   
zEmacsState.start_macroc                 C   s   | j | _d| _ dS )zEnd recording macro.N)r
   r	   r   r   r   r   Ú	end_macro!   s   
zEmacsState.end_macro)r   N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   ÚpropertyÚboolr   r   r   r   r   r   r   r   
   s    


N)Útypingr   r   Úkey_processorr   Ú__all__r   r   r   r   r   Ú<module>   s
    ÿ