20using System.Diagnostics;
35 Debug.Assert(name !=
null);
37 Native.Z3_params_set_bool(
Context.nCtx, NativeObject, name.NativeObject, (
byte)(value ? 1 : 0));
46 Debug.Assert(name !=
null);
48 Native.Z3_params_set_uint(
Context.nCtx, NativeObject, name.NativeObject, value);
57 Debug.Assert(name !=
null);
59 Native.Z3_params_set_double(
Context.nCtx, NativeObject, name.NativeObject, value);
68 Debug.Assert(value !=
null);
70 Native.Z3_params_set_symbol(
Context.nCtx, NativeObject, name.NativeObject,
Context.
MkSymbol(value).NativeObject);
79 Debug.Assert(name !=
null);
80 Debug.Assert(value !=
null);
82 Native.Z3_params_set_symbol(
Context.nCtx, NativeObject, name.NativeObject, value.NativeObject);
92 Native.Z3_params_set_bool(
Context.nCtx, NativeObject,
Context.
MkSymbol(name).NativeObject, (
byte)(value ? 1 : 0));
119 Debug.Assert(value !=
null);
121 Native.Z3_params_set_symbol(
Context.nCtx, NativeObject,
Context.
MkSymbol(name).NativeObject, value.NativeObject);
130 Debug.Assert(name !=
null);
131 Debug.Assert(value !=
null);
142 return Native.Z3_params_to_string(
Context.nCtx, NativeObject);
149 Debug.Assert(ctx !=
null);
152 internal class DecRefQueue : IDecRefQueue
154 public DecRefQueue() : base() { }
155 public DecRefQueue(uint move_limit) : base(move_limit) { }
156 internal override void IncRef(
Context ctx, IntPtr obj)
158 Native.Z3_params_inc_ref(ctx.nCtx, obj);
161 internal override void DecRef(
Context ctx, IntPtr obj)
163 Native.Z3_params_dec_ref(ctx.nCtx, obj);
167 internal override void IncRef(IntPtr o)
173 internal override void DecRef(IntPtr o)
The main interaction with Z3 happens via the Context.
IDecRefQueue Params_DRQ
Params DRQ
IntSymbol MkSymbol(int i)
Creates a new symbol using an integer.
A Params objects represents a configuration in the form of Symbol/value pairs.
Params Add(string name, uint value)
Adds a parameter setting.
Params Add(string name, string value)
Adds a parameter setting.
Params Add(string name, double value)
Adds a parameter setting.
Params Add(string name, Symbol value)
Adds a parameter setting.
Params Add(Symbol name, uint value)
Adds a parameter setting.
override string ToString()
A string representation of the parameter set.
Params Add(Symbol name, bool value)
Adds a parameter setting.
Params Add(string name, bool value)
Adds a parameter setting.
Params Add(Symbol name, double value)
Adds a parameter setting.
Params Add(Symbol name, string value)
Adds a parameter setting.
Params Add(Symbol name, Symbol value)
Adds a parameter setting.
Symbols are used to name several term and type constructors.
Internal base class for interfacing with native Z3 objects. Should not be used externally.
Context Context
Access Context object
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...