Z3
Public Member Functions | Data Fields
PropClosures Class Reference

Public Member Functions

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

Data Fields

 bases
 
 lock
 

Detailed Description

Definition at line 11233 of file z3py.py.

Constructor & Destructor Documentation

◆ __init__()

def __init__ (   self)

Definition at line 11234 of file z3py.py.

11234  def __init__(self):
11235  self.bases = {}
11236  self.lock = None
11237 

Member Function Documentation

◆ get()

def get (   self,
  ctx 
)

Definition at line 11243 of file z3py.py.

11243  def get(self, ctx):
11244  if self.lock:
11245  with self.lock:
11246  r = self.bases[ctx]
11247  else:
11248  r = self.bases[ctx]
11249  return r
11250 

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

◆ insert()

def insert (   self,
  r 
)

Definition at line 11258 of file z3py.py.

11258  def insert(self, r):
11259  if self.lock:
11260  with self.lock:
11261  id = len(self.bases) + 3
11262  self.bases[id] = r
11263  else:
11264  id = len(self.bases) + 3
11265  self.bases[id] = r
11266  return id
11267 
11268 

◆ set()

def set (   self,
  ctx,
  r 
)

Definition at line 11251 of file z3py.py.

11251  def set(self, ctx, r):
11252  if self.lock:
11253  with self.lock:
11254  self.bases[ctx] = r
11255  else:
11256  self.bases[ctx] = r
11257 

◆ set_threaded()

def set_threaded (   self)

Definition at line 11238 of file z3py.py.

11238  def set_threaded(self):
11239  if self.lock is None:
11240  import threading
11241  self.lock = threading.Lock()
11242 

Field Documentation

◆ bases

bases

Definition at line 11235 of file z3py.py.

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

◆ lock

lock