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 11105 of file z3py.py.

Constructor & Destructor Documentation

◆ __init__()

def __init__ (   self)

Definition at line 11106 of file z3py.py.

11106  def __init__(self):
11107  self.bases = {}
11108  self.lock = None
11109 

Member Function Documentation

◆ get()

def get (   self,
  ctx 
)

Definition at line 11115 of file z3py.py.

11115  def get(self, ctx):
11116  if self.lock:
11117  with self.lock:
11118  r = self.bases[ctx]
11119  else:
11120  r = self.bases[ctx]
11121  return r
11122 

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

◆ insert()

def insert (   self,
  r 
)

Definition at line 11130 of file z3py.py.

11130  def insert(self, r):
11131  if self.lock:
11132  with self.lock:
11133  id = len(self.bases) + 3
11134  self.bases[id] = r
11135  else:
11136  id = len(self.bases) + 3
11137  self.bases[id] = r
11138  return id
11139 
11140 

◆ set()

def set (   self,
  ctx,
  r 
)

Definition at line 11123 of file z3py.py.

11123  def set(self, ctx, r):
11124  if self.lock:
11125  with self.lock:
11126  self.bases[ctx] = r
11127  else:
11128  self.bases[ctx] = r
11129 

◆ set_threaded()

def set_threaded (   self)

Definition at line 11110 of file z3py.py.

11110  def set_threaded(self):
11111  if self.lock is None:
11112  import threading
11113  self.lock = threading.Lock()
11114 

Field Documentation

◆ bases

bases

Definition at line 11107 of file z3py.py.

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

◆ lock

lock