
    %
i                        d Z ddlmZ ddlZddlZddlZddlZddlZddl	m
Z
 ddlmZ dZej        ej                 Zej        ej        fZ G d d          Z G d d	ej        j        j                  Zd
 Zd ZdS )zdynamic dispatch objects for AX Script.

This is an IDispatch object that a scripting host may use to
query and invoke methods on the main script.  Not may hosts use
this yet, so it is not well tested!
    )annotationsN)Dispatch)COMExceptionc                  *    e Zd ZU g Zded<   d Zd ZdS )ScriptDispatchz	list[str]_public_methods_c                "    || _         || _        d S N)enginescriptNamespace)selfr   r   s      C:\Users\Dell Inspiron 16\Desktop\tws\AgrotaPowerBi\back-agrota-powerbi\mcp-client-agrota\venv\Lib\site-packages\win32comext/axscript/client/scriptdispatch.py__init__zScriptDispatch.__init__   s    .    c                   | j                                          | j                                          |t          j        z  r	 t          | j        |          }t          |t                    st          |          g }|D ]O}t          |t                    r#|                    t          |                     :|                    |           P| j                             d |t          |                    S # t          $ r, |t          j        z  st!          t"          j                  Y nw xY w|t          j        z  r	 t          | j        |          }t          |t                    rt          |          nQ# t          $ r t!          t"          j                  t           $ r}	 d }	~	w | j                                         }Y nxY w|S t!          t"          j                  N)scode)r   RegisterNewNamedItemsProcessNewNamedItemsConnections	pythoncomINVOKE_FUNCgetattrr   
isinstance_CallableTypesAttributeErrorPyIDispatchTypeappendr   ApplyInScriptedSectiontupleDISPATCH_PROPERTYGETr   winerrorDISP_E_MEMBERNOTFOUNDHandleException)
r   namelcidwFlagsargsfuncrealArgsargretinstances
             r   	_dynamic_zScriptDispatch._dynamic_"   s   ))+++33555I)) 	MMt3T::!$77 /(... - -C!#77 - 6666 ,,,,{99$eHooVVV! M M M	 >> M&X-KLLLLM MM I22 		4d2D99c>22 /(.../! I I I")GHHHH   4k1133J!?@@@@s+   B5C9 93D/.D/9E< <-G
)F**G
N)__name__
__module____qualname__r   __annotations__r   r-    r   r   r   r      sK         "$$$$$/ / /$A $A $A $A $Ar   r   c                       e Zd Zd Zd Zd ZdS )StrictDynamicPolicyc                    t           j        j        j                            | |           t          | j        d          r:t          | j        j                  D ]"}|| j	        | 
                    |d          <   !d S d S )Nr   r   )win32comserverpolicyDynamicPolicy_wrap_hasattr_obj_dirr   _dyn_dispid_to_name__getdispid_)r   objectr$   s      r   r:   zStrictDynamicPolicy._wrap_J   s    ,33D&AAA4:011 	LDJ677 L LGK)$*:*:4*C*CDD	L 	LL Lr   c                    	 t          | j        |                   S # t          $ r t          t          j        d          w xY w)NzName not found)r   desc)strr>   KeyErrorr   r!   DISP_E_UNKNOWNNAME)r   dispids     r   _getmembername_z#StrictDynamicPolicy._getmembername_P   sT    	Yt08999 	Y 	Y 	YX%@GWXXXX	Ys	    &Ac                    	 t          | j        j        t          |                    }n(# t          $ r t          t          j                  w xY wt          j	        j
        j                            | ||          S r   )r   r<   r   rC   r   r   r!   r"   r6   r7   r8   r9   r?   )r   r$   fdexr(   s       r   r?   zStrictDynamicPolicy._getdispid_V   sy    	E4:5s4yyAADD 	E 	E 	EX%CDDDD	E %3??dDQQQs	   '* %AN)r.   r/   r0   r:   rG   r?   r2   r   r   r4   r4   I   sL        L L LY Y YR R R R Rr   r4   c                    t           rt          j        j        j        nd }t          j        j                            | t          |          S )N)	usePolicyuseDispatcher)	debuggingr6   r7   r8   DispatcherWin32traceutilwrapr4   )objrL   s     r   _wraprR   _   sD    CLVHO*??RVM?$$*- %   r   c                <    t          t          | |                    S r
   )rR   r   )r   	namespaces     r   MakeScriptDispatchrU   f   s    	22333r   )__doc__
__future__r   typesr   win32com.server.policyr6   win32com.server.utilr!   win32com.clientr   win32com.server.exceptionr   rM   TypeIIDsIID_IDispatchr   FunctionType
MethodTyper   r   r7   r8   r9   r4   rR   rU   r2   r   r   <module>ra      s7    # " " " " "               $ $ $ $ $ $ 2 2 2 2 2 2	$Y%<= $e&67+A +A +A +A +A +A +A +A\R R R R R(/0> R R R,  4 4 4 4 4r   