isl_basic_set_opt: avoid invalid access on error path
[platform/upstream/isl.git] / interface / isl.py.top
1 from ctypes import *
2
3 isl = cdll.LoadLibrary("libisl.so")
4 libc = cdll.LoadLibrary("libc.so.6")
5
6 class Error(Exception):
7     pass
8
9 class Context:
10     defaultInstance = None
11
12     def __init__(self):
13         ptr = isl.isl_ctx_alloc()
14         self.ptr = ptr
15
16     def __del__(self):
17         isl.isl_ctx_free(self)
18
19     def from_param(self):
20         return self.ptr
21
22     @staticmethod
23     def getDefaultInstance():
24         if Context.defaultInstance == None:
25             Context.defaultInstance = Context()
26         return Context.defaultInstance
27
28 isl.isl_ctx_alloc.restype = c_void_p
29 isl.isl_ctx_free.argtypes = [Context]