o
    žD®ft  ã                   @  s0   d dl mZ ddlmZ dgZG dd„ dƒZdS )é    )Úannotationsé   )ÚKeyPressÚ
EmacsStatec                   @  sF   e Zd ZdZddd„Zddd„Zedd	d
„ƒZddd„Zddd„Z	dS )r   z5
    Mutable class to hold Emacs specific state.
    ÚreturnÚNonec                 C  s   g | _ d | _d S ©N)ÚmacroÚcurrent_recording©Úself© r   ú_/home/ubuntu/webapp/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.resetÚboolc                 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_macroN)r   r   )r   r   )
Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   Úpropertyr   r   r   r   r   r   r   r   
   s    


N)Ú
__future__r   Úkey_processorr   Ú__all__r   r   r   r   r   Ú<module>   s
    ÿ