
    9j{                     n    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             Zy)	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Sequence)	GuardsSet   )	GuardFailGuardFilterEntryc                   z    e Zd ZU dZeegdf   dz  ed<   dZeegdf   dz  ed<   dZ	ee
e   ge
e   f   dz  ed<   y)HooksNguard_export_fnguard_fail_fnguard_filter_fn)__name__
__module____qualname__r   r   r   __annotations__r   r   r   r   r   bool     S/media/conek/DATA/Code/OCR/venv/lib/python3.12/site-packages/torch/_dynamo/hooks.pyr
   r
      sc    :>OXyk4/047>8<M8YK-.5< Xx(89:HTNJKdR r   r
   )__doc__dataclassescollections.abcr   r   torch._guardsr   typesr   r   	dataclassr
   r   r   r   <module>r      s7   	  . # .   r   