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.
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...