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