
    XaJj                     V    d Z ddlZddlZ ej                  e      Zd Z G d d      Zy))informal_protocol    Nc                 ,    | t         v rt         |    d   S y )N)_selToProtocolMapping)sels    a/Users/ahmed/devFolder/claude-voice/.venv/lib/python3.12/site-packages/objc/_informal_protocol.py_informal_protocol_for_selectorr	      s    
##$S)"--    c                   ,    e Zd ZdZdZd Zd Zd Zd Zy)r   )__name__	selectorsobjcc                    t        |t              s!t        dt        |      j                         || _        t        |      | _        t        | j                        D ]r  \  }}t        |t        j                        st        d| d      t        |t        j                        rt        d| d      |j                  et        d| d       | j                  D ]$  }t        |j                     j                  |        & y )Nz0informal_protocol() argument 1 must be str, not zItem z is not a selectorz is a native selectorz has a callable)
isinstancestr	TypeErrortyper   tupler   	enumerater   selectornative_selectorcallabler   append)selfnamer   idxitems        r   __init__zinformal_protocol.__init__   s    $$B4:CVCVBWX  y)"4>>2ICdDMM2%u,> ?@@$ 4 45%u,A BCC}}(%uO <== 3 NND!$--077= #r
   c                 L    d| j                   dt        t        |              dS )Nz<objc.informal_protocol z at 0x>)r   hexid)r   s    r   __repr__zinformal_protocol.__repr__,   s$    )$--):&RXqQQr
   c                     | j                   D cg c]2  }|j                  r$|j                  |j                  |j                  d4 c}S c c}w )zS
        Return a list of all class methods that are part of this protocol
        r   typestrrequiredr   isClassMethodr   	signature
isRequiredr   r   s     r   classMethodszinformal_protocol.classMethods/   sQ     ~~
 &    LL==NN
 &
 	
 
   7A	c                     | j                   D cg c]2  }|j                  s$|j                  |j                  |j                  d4 c}S c c}w )zV
        Return a list of all instance methods that are part of this protocol
        r%   r(   r,   s     r   instanceMethodsz!informal_protocol.instanceMethods=   sQ     ~~
 &$$  LL==NN
 &
 	
 
r.   N)r   
__module____qualname__	__slots__r   r#   r-   r0    r
   r   r   r      s!    )IJ>&R

r
   r   )__all__r   collectionsdefaultdictlistr   r	   r   r4   r
   r   <module>r9      s4   
    0//5 4
 4
r
   