
    !<i                         d dl Z d dlmZmZ d dlmZmZmZ d dlm	Z	 ed         eegef         z  Z
e
ee
         z  Zdededeegdf         d	efd
ZdS )    N)CallableIterable)AnyLiteralcast)is_iterable)return_valuecall_if_callable%print_non_int_return_int_as_exit_code!print_str_return_int_as_exit_codeprint_str_return_zero&print_non_none_return_int_as_exit_codeprint_non_none_return_zero!return_int_as_exit_code_else_zeroprint_non_int_sys_exitsys_exitreturn_nonereturn_zeroprint_return_zerosys_exit_zeroprint_sys_exit_zeroresultactionprint_fnreturnc                    t          |          r6t          t          t                   |          D ]}t	          | ||          } | S t          |          r ||           S |xdk    r t          | t                    rt          j	        | rdnd           dS t          | t                    rt          j	        |            dS | ! ||            t          j	        d           dS t          j	        d           dS xdk    r | S xdk    r t          |           r
 |             S | S xdk    rq t          | t                    rt          j	        | rdnd           dS t          | t                    rt          j	        |            dS t          j	        d           dS xdk    rD t          | t                    r| rdndS t          | t                    r| S |  ||            dS dS xd	k    rW t          | t                    r ||            dS t          | t                    r| rdndS t          | t                    r| S dS xd
k    r# t          | t                    r ||            dS xdk    rB |  ||            t          | t                    r| rdndS t          | t                    r| S dS xdk    r |  ||            dS xdk    r5 t          | t                    r| rdndS t          | t                    r| S dS xdk    r dS xdk    r dS xdk    r  ||            dS xdk    r t          j	        d           dS dk    r! ||            t          j	        d           dS 	 t          )u  Handle command result based on result_action.

    When ``action`` is a sequence, actions are applied left-to-right in a pipeline,
    where each action receives the result of the previous action. For example,
    with ``result_action=[uppercase, add_greeting]``:

        result → uppercase(result) → add_greeting(uppercase(result))

    Parameters
    ----------
    result : Any
        The command's return value.
    action : ResultAction
        The action (or sequence of actions) to take with the result.
        If a sequence, actions are chained left-to-right.
    print_fn : Callable[[Any], None]
        Function to call to print output (e.g., console.print).

    Returns
    -------
    Any
        Processed result based on action (may call sys.exit() and not return).
    r   r      Nr	   r
   r   r   r   r   r   r   r   r   r   r   r   r   )r   r   r   ResultActionSinglehandle_result_actioncallable
isinstanceboolsysexitintstr
ValueError)r   r   r   single_actions       /Users/kimhansen/Desktop/03 Workspace/ceo-agents/chl-effectiveness/mcp-servers/whoop/.venv/lib/python3.11/site-packages/cyclopts/_result_action.pyr   r      s=   8 6 !(+=">GG 	K 	KM)&-JJFF vf~~
%%%%%&$'' f+!,,,,,FC((      #   ^^^^M  vxxMZZZZ&$'' f+!,,,,,FC((      44444&$'' ")qq)FC(( #   qq00000&#&&    qFD)) ")qq)FC(( q$$$$$&#&& !   155555!   &$'' ")qq)FC(( 1)))))!   100000&$'' ")qq)FC(( q]]]]4]]]]1     HV1____HQKKKKK"""HVHQKKKKK    )r#   collections.abcr   r   typingr   r   r   cyclopts.utilsr   r   ResultActionr    r*   r)   <module>r0      s    



 . . . . . . . . % % % % % % % % % % & & & & & & 	" ucz# * "H-?$@@ttt ud{#t 		t t t t t tr*   