Z3
Public Member Functions | Data Fields
PropClosures Class Reference

Public Member Functions

def __init__ (self)
 
def set_threaded ()
 
def get (self, ctx)
 
def set (self, ctx, r)
 
def insert (self, r)
 

Data Fields

 bases
 
 lock
 

Detailed Description

Definition at line 11072 of file z3py.py.

Constructor & Destructor Documentation

◆ __init__()

def __init__ (   self)

Definition at line 11073 of file z3py.py.

11073 def __init__(self):
11074 self.bases = {}
11075 self.lock = None
11076

Member Function Documentation

◆ get()

def get (   self,
  ctx 
)

Definition at line 11082 of file z3py.py.

11082 def get(self, ctx):
11083 if self.lock:
11084 self.lock.acquire()
11085 r = self.bases[ctx]
11086 if self.lock:
11087 self.lock.release()
11088 return r
11089

Referenced by Goal.__getitem__(), and Goal.as_expr().

◆ insert()

def insert (   self,
  r 
)

Definition at line 11097 of file z3py.py.

11097 def insert(self, r):
11098 if self.lock:
11099 self.lock.acquire()
11100 id = len(self.bases) + 3
11101 self.bases[id] = r
11102 if self.lock:
11103 self.lock.release()
11104 return id
11105
11106

◆ set()

def set (   self,
  ctx,
  r 
)

Definition at line 11090 of file z3py.py.

11090 def set(self, ctx, r):
11091 if self.lock:
11092 self.lock.acquire()
11093 self.bases[ctx] = r
11094 if self.lock:
11095 self.lock.release()
11096

◆ set_threaded()

def set_threaded ( )

Definition at line 11077 of file z3py.py.

11077 def set_threaded():
11078 if self.lock is None:
11079 import threading
11080 self.lock = threading.thread.Lock()
11081

Field Documentation

◆ bases

bases

Definition at line 11074 of file z3py.py.

Referenced by PropClosures.get(), PropClosures.insert(), and PropClosures.set().

◆ lock

lock