a
    hc                     @   sP   d Z ddlZddlmZmZ ddlmZ ddlmZm	Z	 ej
G dd dZdS )	a  Hook system for Dynamo's guard functionality.

This module provides a way to register callback functions that are triggered during
guard-related operations.

The Hooks class manages two types of hook functions:
- guard_export_fn: Called when guards need to be exported, taking a GuardsSet as input
- guard_fail_fn: Called when a guard check fails, taking a GuardFail object as input
These hooks enable customization of guard export and failure handling behaviors.
    N)CallableOptional)	GuardsSet   )	GuardFailGuardFilterEntryc                   @   sd   e Zd ZU dZeeegdf  ed< dZeee	gdf  ed< dZ
eeee gee f  ed< dS )HooksNguard_export_fnguard_fail_fnguard_filter_fn)__name__
__module____qualname__r	   r   r   r   __annotations__r
   r   r   listr   bool r   r   A/var/www/auris/lib/python3.9/site-packages/torch/_dynamo/hooks.pyr      s   
r   )__doc__Zdataclassestypingr   r   Ztorch._guardsr   typesr   r   Z	dataclassr   r   r   r   r   <module>   s   