Z3
Public Member Functions | Data Fields
ParamsRef Class Reference

Parameter Sets. More...

Public Member Functions

def __init__ (self, ctx=None)
 
def __del__ (self)
 
def set (self, name, val)
 
def __repr__ (self)
 
def validate (self, ds)
 

Data Fields

 ctx
 
 params
 

Detailed Description

Parameter Sets.

Set of parameters used to configure Solvers, Tactics and Simplifiers in Z3.

Consider using the function `args2params` to create instances of this object.

Definition at line 4490 of file z3py.py.

Constructor & Destructor Documentation

def __init__ (   self,
  ctx = None 
)

Definition at line 4495 of file z3py.py.

4495  def __init__(self, ctx=None):
4496  self.ctx = _get_ctx(ctx)
4497  self.params = Z3_mk_params(self.ctx.ref())
4498  Z3_params_inc_ref(self.ctx.ref(), self.params)
4499 
Z3_params Z3_API Z3_mk_params(Z3_context c)
Create a Z3 (empty) parameter set. Starting at Z3 4.0, parameter sets are used to configure many comp...
def __init__(self, ctx=None)
Definition: z3py.py:4495
void Z3_API Z3_params_inc_ref(Z3_context c, Z3_params p)
Increment the reference counter of the given parameter set.
def __del__ (   self)

Definition at line 4500 of file z3py.py.

4500  def __del__(self):
4501  Z3_params_dec_ref(self.ctx.ref(), self.params)
4502 
def __del__(self)
Definition: z3py.py:4500
void Z3_API Z3_params_dec_ref(Z3_context c, Z3_params p)
Decrement the reference counter of the given parameter set.

Member Function Documentation

def __repr__ (   self)

Definition at line 4520 of file z3py.py.

4520  def __repr__(self):
4521  return Z3_params_to_string(self.ctx.ref(), self.params)
4522 
def __repr__(self)
Definition: z3py.py:4520
Z3_string Z3_API Z3_params_to_string(Z3_context c, Z3_params p)
Convert a parameter set into a string. This function is mainly used for printing the contents of a pa...
def set (   self,
  name,
  val 
)
Set parameter name with value val.

Definition at line 4503 of file z3py.py.

4503  def set(self, name, val):
4504  """Set parameter name with value val."""
4505  if __debug__:
4506  _z3_assert(isinstance(name, str), "parameter name must be a string")
4507  name_sym = to_symbol(name, self.ctx)
4508  if isinstance(val, bool):
4509  Z3_params_set_bool(self.ctx.ref(), self.params, name_sym, val)
4510  elif isinstance(val, int):
4511  Z3_params_set_uint(self.ctx.ref(), self.params, name_sym, val)
4512  elif isinstance(val, float):
4513  Z3_params_set_double(self.ctx.ref(), self.params, name_sym, val)
4514  elif isinstance(val, str):
4515  Z3_params_set_symbol(self.ctx.ref(), self.params, name_sym, to_symbol(val, self.ctx))
4516  else:
4517  if __debug__:
4518  _z3_assert(False, "invalid parameter value")
4519 
void Z3_API Z3_params_set_uint(Z3_context c, Z3_params p, Z3_symbol k, unsigned v)
Add a unsigned parameter k with value v to the parameter set p.
def to_symbol(s, ctx=None)
Definition: z3py.py:94
void Z3_API Z3_params_set_double(Z3_context c, Z3_params p, Z3_symbol k, double v)
Add a double parameter k with value v to the parameter set p.
def set(self, name, val)
Definition: z3py.py:4503
void Z3_API Z3_params_set_symbol(Z3_context c, Z3_params p, Z3_symbol k, Z3_symbol v)
Add a symbol parameter k with value v to the parameter set p.
void Z3_API Z3_params_set_bool(Z3_context c, Z3_params p, Z3_symbol k, Z3_bool v)
Add a Boolean parameter k with value v to the parameter set p.
def validate (   self,
  ds 
)

Definition at line 4523 of file z3py.py.

4523  def validate(self, ds):
4524  _z3_assert(isinstance(ds, ParamDescrsRef), "parameter description set expected")
4525  Z3_params_validate(self.ctx.ref(), self.params, ds.descr)
4526 
def validate(self, ds)
Definition: z3py.py:4523
void Z3_API Z3_params_validate(Z3_context c, Z3_params p, Z3_param_descrs d)
Validate the parameter set p against the parameter description set d.

Field Documentation

ctx
params

Definition at line 4497 of file z3py.py.

Referenced by ParamsRef.__del__(), ParamsRef.__repr__(), ParamsRef.set(), and ParamsRef.validate().