o
    i                     @   s$   d dl m  mZ G dd dZdS )    Nc                   @   s    e Zd Zdd Zedd ZdS )NamedTensorc                 C   s   t |tjjjtjjjB stdt| |jd u rt	dt
|jt
|jkr9t	dt
|j dt
|j || _|| _d S )Nz2Value must be a Tensor/ConvertibleTensor, but got zValue must have a shapezShape mismatch: z vs )
isinstancetracer	signature	classicalTensorConvertibleTensor	TypeErrortypeshape
ValueErrortuplevalueexpr)selfr   r    r   U/home/ubuntu/.local/lib/python3.10/site-packages/einx/_src/namedtensor/namedtensor.py__init__   s   
 
zNamedTensor.__init__c                 C   s   t | jjS )N)lenr   r   )r   r   r   r   ndim   s   zNamedTensor.ndimN)__name__
__module____qualname__r   propertyr   r   r   r   r   r      s    
r   )einx._src.tracer_srcr   r   r   r   r   r   <module>   s    