20using System.Diagnostics;
35 Debug.Assert(p !=
null);
36 Native.Z3_params_validate(
Context.nCtx, p.NativeObject, NativeObject);
44 Debug.Assert(name !=
null);
45 return (
Z3_param_kind)Native.Z3_param_descrs_get_kind(
Context.nCtx, NativeObject, name.NativeObject);
53 Debug.Assert(name !=
null);
54 return Native.Z3_param_descrs_get_documentation(
Context.nCtx, NativeObject, name.NativeObject);
64 uint sz = Native.Z3_param_descrs_size(
Context.nCtx, NativeObject);
66 for (uint i = 0; i < sz; ++i) {
67 names[i] =
Symbol.Create(
Context, Native.Z3_param_descrs_get_name(
Context.nCtx, NativeObject, i));
78 get {
return Native.Z3_param_descrs_size(
Context.nCtx, NativeObject); }
86 return Native.Z3_param_descrs_to_string(
Context.nCtx, NativeObject);
93 Debug.Assert(ctx !=
null);
96 internal class DecRefQueue : IDecRefQueue
98 public DecRefQueue() : base() { }
99 public DecRefQueue(uint move_limit) : base(move_limit) { }
100 internal override void IncRef(Context ctx, IntPtr obj)
102 Native.Z3_param_descrs_inc_ref(ctx.nCtx, obj);
105 internal override void DecRef(Context ctx, IntPtr obj)
107 Native.Z3_param_descrs_dec_ref(ctx.nCtx, obj);
111 internal override void IncRef(IntPtr o)
117 internal override void DecRef(IntPtr o)
The main interaction with Z3 happens via the Context.
IDecRefQueue ParamDescrs_DRQ
ParamDescrs DRQ
A ParamDescrs describes a set of parameters.
string GetDocumentation(Symbol name)
Retrieve documentation of parameter.
Symbol[] Names
Retrieve all names of parameters.
void Validate(Params p)
validate a set of parameters.
uint Size
The size of the ParamDescrs.
override string ToString()
Retrieves a string representation of the ParamDescrs.
Z3_param_kind GetKind(Symbol name)
Retrieve kind of parameter.
A Params objects represents a configuration in the form of Symbol/value pairs.
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_param_kind
The different kinds of parameters that can be associated with parameter sets. (see Z3_mk_params).