Format: application/x-python-code
⬇ Download File (2.2 KB)
   1  o
   2  
   3  ��h0�@s,dZddlZddlmZGdd�de�ZdS)z>String dispatch class to match regexps and dispatch commands.
   4  �N)�CommandChainDispatcherc@sLeZdZdZdd�Zddd�Zddd�Zd	d
   5  �Zdd�Zd
   6  d�Z	dd�Z
   7  dS)�StrDispatchaDispatch (lookup) a set of strings / regexps for match.
   8  
   9      Example:
  10  
  11      >>> dis = StrDispatch()
  12      >>> dis.add_s('hei',34, priority = 4)
  13      >>> dis.add_s('hei',123, priority = 2)
  14      >>> dis.add_re('h.i', 686)
  15      >>> print(list(dis.flat_matches('hei')))
  16      [123, 34, 686]
  17      cCsi|_i|_dS)N��strs�regexs��self�r	�Oc:\Users\shubh\Videos\agent\nova\Lib\site-packages\IPython/utils/strdispatch.py�__init__s
  18  zStrDispatch.__init__rcC�*|j�|t��}|�||�||j|<dS)z( Adds a target 'string' for dispatching N)r�getr�add)r�s�obj�priority�chainr	r	r
  19  �add_s�zStrDispatch.add_scCr)z& Adds a target regexp for dispatching N)rr
  20  rr)r�regexrrrr	r	r
  21  �add_re#rzStrDispatch.add_reccsF�||jvr|j|V|j��D]\}}t�||�r|Vq	qdS)z2 Get a seq of Commandchain objects that match key N)rr�items�re�match)r�key�rrr	r	r
  22  �dispatch*s�
  23  �zStrDispatch.dispatchcCsd|j|jfS)Nz<Strdispatch %s, %s>rrr	r	r
  24  �__repr__6szStrDispatch.__repr__ccs.�||jvrdS|j|D]}|dVq
  25  dS)N�)r)rr�elr	r	r
  26  �	s_matches9s�
  27  �zStrDispatch.s_matchesccs*�|�|�D]}|D]}|dVq
  28  qdS)z- Yield all 'value' targets, without priority rN)r)rr�valrr	r	r
  29  �flat_matches?s��zStrDispatch.flat_matchesN)r)�__name__�
  30  __module__�__qualname__�__doc__rrrrrr r"r	r	r	r
  31  rs
  32  
  33  r)r&rZIPython.core.hooksr�objectrr	r	r	r
  34  �<module>s