o
    iJ                     @   s   d dl mZ d dlmZ d dlmZ dd Zdd ZG dd	 d	ejZ	G d
d de	Z
egejj_ejejj_egejj_ejejj_ejgejj_dS )    )ffi)opaque_pointers_enabled)c_boolc                   C      t tjtS N)
ContextRefr   libLLVMPY_ContextCreater    r
   r
   U/home/ubuntu/veenaModal/venv/lib/python3.10/site-packages/llvmlite/binding/context.pycreate_context      
r   c                   C   r   r   )GlobalContextRefr   r   LLVMPY_GetGlobalContextr   r
   r
   r
   r   get_global_context   r   r   c                       s$   e Zd Z fddZdd Z  ZS )r   c                    s   t t| | d S r   )superr   __init__)selfcontext_ptr	__class__r
   r   r      s   zContextRef.__init__c                 C   s   t j|  d S r   )r   r   LLVMPY_ContextDisposer   r
   r
   r   _dispose   s   zContextRef._dispose)__name__
__module____qualname__r   r   __classcell__r
   r
   r   r   r      s    r   c                   @   s   e Zd Zdd ZdS )r   c                 C   s   d S r   r
   r   r
   r
   r   r      s   zGlobalContextRef._disposeN)r   r   r   r   r
   r
   r
   r   r      s    r   N)llvmlite.bindingr   llvmliter   ctypesr   r   r   	ObjectRefr   r   r   r   argtypesLLVMContextRefrestyper	   r   r
   r
   r
   r   <module>   s    