o
    i                     @  s  d Z ddlmZ ddlmZ ddlmZ er4ddlm	Z	m
Z
 ddlmZmZ ddlmZ dd	lmZmZ ed
e erdrddZdsddZdtddZduddZdvddZdwddZdxd!d"Zdyd$d%Zdzd&d'Zd{d+d,Zd|d-d.Zd}d0d1Zdrd2d3Zdrd4d5Z d~d7d8Z!dd9d:Z"dd;d<Z#dd=d>Z$dd@dAZ%ddBdCZ&ddFdGZ'ddIdJZ(ddLdMZ)ddNdOZ*ddPdQZ+ddRdSZ,ddTdUZ-ddVdWZ.ddXdYZ/ddZd[Z0dd\d]Z1dd^d_Z2dd`daZ3ddbdcZ4drdddeZ5d|dfdgZ6ddhdiZ7drdjdkZ8ddldmZ9ddndoZ:g dpZ;dqS )zFFI API.    )annotations   )init_ffi_api)TYPE_CHECKING)MappingSequence)ModuleObject)
AccessPath)AnyCallableffiargsr   returnc                  G     d S N r   r   r   M/home/ubuntu/veenaModal/venv/lib/python3.10/site-packages/tvm_ffi/_ffi_api.pyArray&       r   _0Sequence[Any]_1intc                C  r   r   r   r   r   r   r   r   ArrayGetItem'   r   r   c                C  r   r   r   r   r   r   r   	ArraySize(   r   r   boolc                C  r   r   r   r   r   r   r   ArrayContains)   r   r    bytesc                C  r   r   r   r   r   r   r   Bytes*   r   r"   c                C  r   r   r   r   r   r   r   FromJSONGraph+   r   r#   strc                C  r   r   r   r   r   r   r   FromJSONGraphString,   r   r%   Callable[..., Any]c                   C  r   r   r   r   r   r   r   FunctionListGlobalNamesFunctor-   r   r'   c                C  r   r   r   r   r   r   r   FunctionRemoveGlobal.   r   r(   _2_3$tuple[AccessPath, AccessPath] | Nonec                C  r   r   r   )r   r   r)   r*   r   r   r   GetFirstStructuralMismatch/   r   r,   c                C  r   r   r   r   r   r   r   GetGlobalFuncMetadata0   r   r-   Sequence[str]c                   C  r   r   r   r   r   r   r   GetRegisteredTypeKeys1   r   r/   c                  G  r   r   r   r   r   r   r   MakeObjectFromPackedArgs2   r   r0   c                  G  r   r   r   r   r   r   r   Map3   r   r1   Mapping[Any, Any]c                C  r   r   r   r   r   r   r   MapCount4   r   r3   c                C  r   r   r   r   r   r   r   MapForwardIterFunctor5   r   r4   c                C  r   r   r   r   r   r   r   
MapGetItem6   r   r5   c                C  r   r   r   r   r   r   r   MapGetItemOrMissing7   r   r6   r	   c                   C  r   r   r   r   r   r   r   MapGetMissingObject8   r   r7   c                C  r   r   r   r   r   r   r   MapSize9   r   r8   r   Nonec                C  r   r   r   r   r   r   r   ModuleClearImports:   r   r:   Callable[..., Any] | Nonec                C  r   r   r   r   r   r)   r   r   r   ModuleGetFunction;   r   r=   
str | Nonec                C  r   r   r   r<   r   r   r   ModuleGetFunctionDoc<   r   r?   c                C  r   r   r   r<   r   r   r   ModuleGetFunctionMetadata=   r   r@   c                C  r   r   r   r   r   r   r   ModuleGetKind>   r   rA   c                C  r   r   r   r   r   r   r   ModuleGetPropertyMask?   r   rB   c                C  r   r   r   r   r   r   r   ModuleGetWriteFormats@   r   rC   c                C  r   r   r   r   r   r   r   ModuleGlobalsAddA   r   rD   c                C  r   r   r   r   r   r   r   ModuleGlobalsRemoveB   r   rE   c                C  r   r   r   r<   r   r   r   ModuleImplementsFunctionC   r   rF   c                C  r   r   r   r   r   r   r   ModuleImportModuleD   r   rG   c                C  r   r   r   r   r   r   r   ModuleInspectSourceE   r   rH   c                C  r   r   r   r   r   r   r   ModuleLoadFromFileF   r   rI   c                C  r   r   r   r<   r   r   r   ModuleWriteToFileG   r   rJ   c                  G  r   r   r   r   r   r   r   ShapeH   r   rK   c                C  r   r   r   r   r   r   r   StringI   r   rL   c                C  r   r   r   r<   r   r   r   StructuralHashJ   r   rM   c                  G  r   r   r   r   r   r   r   	SystemLibK   r   rN   c                C  r   r   r   r   r   r   r   ToJSONGraphL   r   rO   c                C  r   r   r   r   r   r   r   ToJSONGraphStringM   r   rP   )(r   r    r   r   r"   r#   r%   r'   r(   r,   r-   r/   r0   r1   r3   r4   r5   r6   r7   r8   r:   r=   r?   r@   rA   rB   rC   rD   rE   rF   rG   rH   rI   rJ   rK   rL   rM   rN   rO   rP   N)r   r   r   r   )r   r   r   r   r   r   )r   r   r   r   )r   r   r   r   r   r   )r   r!   r   r!   )r   r   r   r   )r   r$   r   r   )r   r&   )r   r$   r   r   )
r   r   r   r   r)   r   r*   r   r   r+   )r   r$   r   r$   )r   r.   )r   r2   r   r   r   r   )r   r2   r   r&   )r   r2   r   r   r   r   )r   r	   )r   r2   r   r   )r   r   r   r9   )r   r   r   r$   r)   r   r   r;   )r   r   r   r$   r)   r   r   r>   )r   r   r   r$   )r   r   r   r   )r   r   r   r.   )r   r   r   r$   r)   r   r   r   )r   r   r   r   r   r9   )r   r   r   r$   r   r$   )r   r$   r   r   )r   r   r   r$   r)   r$   r   r9   )r   r   r   r   r)   r   r   r   )r   r   r   r   r   r   )r   r   r   r   r   r$   )<__doc__
__future__r   registryr   _FFI_INIT_FUNCtypingr   collections.abcr   r   tvm_ffir   r	   tvm_ffi.access_pathr
   r   r   __name__r   r   r   r    r"   r#   r%   r'   r(   r,   r-   r/   r0   r1   r3   r4   r5   r6   r7   r8   r:   r=   r?   r@   rA   rB   rC   rD   rE   rF   rG   rH   rI   rJ   rK   rL   rM   rN   rO   rP   __all__r   r   r   r   <module>   sh   








































