Ë
    Ìi	  ã                   ó&   — d dl mZ  G d„ de«      Zy)é    )ÚComputationc                   ó$   — e Zd ZdZdd„Zd„ Zd„ Zy)ÚFormulaaß  
    Apply an arbitrary function to each row.

    :param data_type:
        The data type this formula will return.
    :param func:
        The function to be applied to each row. Must return a valid value for
        the specified data type.
    :param cast:
        If :code:`True`, each return value will be cast to the specified
        :code:`data_type` to ensure it is valid. Only disable this if you are
        certain your formula always returns the correct type.
    c                 ó.   — || _         || _        || _        y ©N)Ú
_data_typeÚ_funcÚ_cast)ÚselfÚ	data_typeÚfuncÚcasts       ú[/var/www/html/strategist-ai/venv/lib/python3.12/site-packages/agate/computations/formula.pyÚ__init__zFormula.__init__   s   € Ø#ˆŒØˆŒ
Øˆ�
ó    c                 ó   — | j                   S r   )r   )r   Útables     r   Úget_computed_data_typezFormula.get_computed_data_type   s   € Ø�‰Ðr   c                 ó¾   — g }|j                   D ]K  }| j                  |«      }| j                  r| j                  j	                  |«      }|j                  |«       ŒM |S r   )Úrowsr	   r
   r   r   Úappend)r   r   Ú
new_columnÚrowÚvs        r   ÚrunzFormula.run   sX   € Øˆ
à—:‘:ò 	!ˆCØ—
‘
˜3“ˆAà�zŠzØ—O‘O×(Ñ(¨Ó+�à×Ñ˜aÕ ð	!ð Ðr   N)T)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r   © r   r   r   r      s   „ ñóò
ór   r   N)Úagate.computations.baser   r   r    r   r   ú<module>r"      s   ðÝ /ô!ˆkõ !r   