Ë
    ëÓ^j’  ã                   óP   — d Z ddlmZ ddlmZmZ ddlmZ e G d„ de«      «       Zy)uD   Exporter protocol â€” enables dependency-inversion for model export.é    )ÚPath)ÚProtocolÚruntime_checkableNc                   óF   — e Zd ZdZdej
                  deedf   dedefd„Z	y)	ÚExporterProtocolz¤Protocol for model exporters.

    Any callable or class that matches this signature can be registered as an exporter without inheriting from a base
    class.
    ÚmodelÚinput_shape.Úoutput_pathÚreturnc                  ó   — y)a<  Export *model* to *output_path*.

        Args:
            model: The PyTorch model to export.
            input_shape: Input tensor shape (excluding batch dimension).
            output_path: Destination path for the exported artifact.

        Returns:
            The resolved path to the exported file.
        N© )Úselfr   r	   r
   s       úb/var/www/ramen.bs-engineer-server.com/venv/lib/python3.12/site-packages/rfdetr/export/protocols.pyÚ__call__zExporterProtocol.__call__   s   € ð  	ó    N)
Ú__name__Ú
__module__Ú__qualname__Ú__doc__ÚnnÚModuleÚtupleÚintr   r   r   r   r   r   r      s>   „ ñðà�y‰yðð ˜3 ˜8‘_ðð ð	ð
 
ôr   r   )	r   Úpathlibr   Útypingr   r   Útorch.nnr   r   r   r   r   ú<module>r      s/   ðñ Kå ß .å ð ô�xó ó ñr   