Z3
 
Loading...
Searching...
No Matches
PropClosures Class Reference

Public Member Functions

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

Data Fields

dict bases = {}
 
 lock = None
 
dict lock = self.bases[ctx]
 
int lock = len(self.bases) + 3
 

Detailed Description

Definition at line 11543 of file z3py.py.

Constructor & Destructor Documentation

◆ __init__()

__init__ ( self)

Definition at line 11544 of file z3py.py.

11544 def __init__(self):
11545 self.bases = {}
11546 self.lock = None
11547

Member Function Documentation

◆ get()

get ( self,
ctx )

Definition at line 11553 of file z3py.py.

11553 def get(self, ctx):
11554 if self.lock:
11555 with self.lock:
11556 r = self.bases[ctx]
11557 else:
11558 r = self.bases[ctx]
11559 return r
11560

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

◆ insert()

insert ( self,
r )

Definition at line 11568 of file z3py.py.

11568 def insert(self, r):
11569 if self.lock:
11570 with self.lock:
11571 id = len(self.bases) + 3
11572 self.bases[id] = r
11573 else:
11574 id = len(self.bases) + 3
11575 self.bases[id] = r
11576 return id
11577
11578

◆ set()

set ( self,
ctx,
r )

Definition at line 11561 of file z3py.py.

11561 def set(self, ctx, r):
11562 if self.lock:
11563 with self.lock:
11564 self.bases[ctx] = r
11565 else:
11566 self.bases[ctx] = r
11567

◆ set_threaded()

set_threaded ( self)

Definition at line 11548 of file z3py.py.

11548 def set_threaded(self):
11549 if self.lock is None:
11550 import threading
11551 self.lock = threading.Lock()
11552

Field Documentation

◆ bases

dict bases = {}

Definition at line 11545 of file z3py.py.

◆ lock [1/3]

lock = None

Definition at line 11546 of file z3py.py.

◆ lock [2/3]

dict lock = self.bases[ctx]

Definition at line 11555 of file z3py.py.

◆ lock [3/3]

int lock = len(self.bases) + 3

Definition at line 11570 of file z3py.py.