
    'j                     ,    d dl mZ  G d d          ZdS )    )Iterablec                   >    e Zd Zd ZddedefdZdee         fdZdS )Indexc                 z    	 t          |          | _        d S # t          $ r t          |          | _        Y d S w xY wN)lenlength	TypeErrorint)selfitems     N/DATA/AppData/hermes/venv/lib/python3.11/site-packages/ezdxf/tools/indexing.py__init__zIndex.__init__	   sF    	$d))DKKK 	$ 	$ 	$d))DKKKK	$s    ::Nr   returnc                     |dk     r| j         t          |          z   }nt          |          }|rd|cxk    r| j         k     sn  |d          |S )Nr   zindex out of range)r	   r   )r   r   errorresults       r   indexzIndex.index   sh    !88[3t99,FFYYF 	.!v33333333%,---    c                     t          |d         t                    r	|d         }n	t          | }t          |                    | j                   S )Nr   )
isinstanceslicerangeindicesr	   )r   argsss      r   slicingzIndex.slicing   sE    d1gu%% 	QAAtAaii,,--r   r   )__name__
__module____qualname__r   r   r   r   r    r   r   r   r      si        $ $ $ # c    . . . . . . .r   r   N)typingr   r   r!   r   r   <module>r#      sK   
      . . . . . . . . . .r   