
    z	i                     *    S r SSKJr   " S S\5      rg)z$Calculate the size of a DAG circuit.    )AnalysisPassc                   :   ^  \ rS rSrSrSS.U 4S jjrS rSrU =r$ )Size   zeCalculate the size of a DAG circuit.

The result is saved in ``property_set['size']`` as an integer.
Frecursec                .   > [         TU ]  5         Xl        g)z
Args:
    recurse: whether to allow recursion into control flow.  If this is ``False`` (default),
        the pass will throw an error when control flow is present, to avoid returning a
        number with little meaning.
N)super__init__r   )selfr   	__class__s     `/home/james-whalen/.local/lib/python3.13/site-packages/qiskit/transpiler/passes/analysis/size.pyr   Size.__init__   s     	    c                 P    UR                  U R                  S9U R                  S'   g)zRun the Size pass on `dag`.r   sizeN)r   r   property_set)r   dags     r   runSize.run"   s!    $'HHT\\H$B&!r   )	__name__
__module____qualname____firstlineno____doc__r   r   __static_attributes____classcell__)r   s   @r   r   r      s#    
 #(  C Cr   r   N)r   qiskit.transpiler.basepassesr   r    r   r   <module>r       s    + 5C< Cr   