3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-06-19 04:13:38 +00:00

move some functions to using var pattern #5900

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
Nikolaj Bjorner 2022-03-16 16:29:54 -07:00
parent 3d87d86c28
commit 0b230ee703

View file

@ -202,8 +202,8 @@ namespace Microsoft.Z3
/// </summary> /// </summary>
public UninterpretedSort MkUninterpretedSort(string str) public UninterpretedSort MkUninterpretedSort(string str)
{ {
using var sym = MkSymbol(str);
return MkUninterpretedSort(MkSymbol(str)); return MkUninterpretedSort(sym);
} }
/// <summary> /// <summary>
@ -312,8 +312,9 @@ namespace Microsoft.Z3
public EnumSort MkEnumSort(string name, params string[] enumNames) public EnumSort MkEnumSort(string name, params string[] enumNames)
{ {
Debug.Assert(enumNames != null); Debug.Assert(enumNames != null);
using var sname = MkSymbol(name);
return new EnumSort(this, MkSymbol(name), MkSymbols(enumNames)); using var snames = MkSymbols(enumNames);
return new EnumSort(this, sname, snames);
} }
/// <summary> /// <summary>
@ -337,7 +338,8 @@ namespace Microsoft.Z3
Debug.Assert(elemSort != null); Debug.Assert(elemSort != null);
CheckContextMatch(elemSort); CheckContextMatch(elemSort);
return new ListSort(this, MkSymbol(name), elemSort); using var sname = MkSymbol(name);
return new ListSort(this, sname, elemSort);
} }
/// <summary> /// <summary>
@ -364,8 +366,8 @@ namespace Microsoft.Z3
/// <param name="size">The size of the sort</param> /// <param name="size">The size of the sort</param>
public FiniteDomainSort MkFiniteDomainSort(string name, ulong size) public FiniteDomainSort MkFiniteDomainSort(string name, ulong size)
{ {
using var sname = MkSymbol(name);
return new FiniteDomainSort(this, MkSymbol(name), size); return new FiniteDomainSort(this, sname, size);
} }
@ -399,8 +401,10 @@ namespace Microsoft.Z3
/// <returns></returns> /// <returns></returns>
public Constructor MkConstructor(string name, string recognizer, string[] fieldNames = null, Sort[] sorts = null, uint[] sortRefs = null) public Constructor MkConstructor(string name, string recognizer, string[] fieldNames = null, Sort[] sorts = null, uint[] sortRefs = null)
{ {
using var sname = MkSymbol(name);
return new Constructor(this, MkSymbol(name), MkSymbol(recognizer), MkSymbols(fieldNames), sorts, sortRefs); using var srecognizer = MkSymbol(recognizer);
using var sfieldNames = MkSymbols(fieldNames);
return new Constructor(this, sname, srecognizer, sfieldNames, sorts, sortRefs);
} }
/// <summary> /// <summary>
@ -427,7 +431,8 @@ namespace Microsoft.Z3
Debug.Assert(constructors.All(c => c != null)); Debug.Assert(constructors.All(c => c != null));
CheckContextMatch<Constructor>(constructors); CheckContextMatch<Constructor>(constructors);
return new DatatypeSort(this, MkSymbol(name), constructors); using var sname = MkSymbol(name);
return new DatatypeSort(this, sname, constructors);
} }
/// <summary> /// <summary>
@ -475,8 +480,8 @@ namespace Microsoft.Z3
Debug.Assert(names.Length == c.Length); Debug.Assert(names.Length == c.Length);
//Debug.Assert(Contract.ForAll(0, c.Length, j => c[j] != null)); //Debug.Assert(Contract.ForAll(0, c.Length, j => c[j] != null));
//Debug.Assert(names.All(name => name != null)); //Debug.Assert(names.All(name => name != null));
var snames = MkSymbols(names);
return MkDatatypeSorts(MkSymbols(names), c); return MkDatatypeSorts(snames, c);
} }
/// <summary> /// <summary>
@ -537,7 +542,8 @@ namespace Microsoft.Z3
CheckContextMatch<Sort>(domain); CheckContextMatch<Sort>(domain);
CheckContextMatch(range); CheckContextMatch(range);
return new FuncDecl(this, MkSymbol(name), domain, range); using var sname = MkSymbol(name);
return new FuncDecl(this, sname, domain, range);
} }
/// <summary> /// <summary>
@ -550,7 +556,8 @@ namespace Microsoft.Z3
CheckContextMatch<Sort>(domain); CheckContextMatch<Sort>(domain);
CheckContextMatch(range); CheckContextMatch(range);
return new FuncDecl(this, MkSymbol(name), domain, range, true); using var sname = MkSymbol(name);
return new FuncDecl(this, sname, domain, range, true);
} }
/// <summary> /// <summary>
@ -578,8 +585,9 @@ namespace Microsoft.Z3
CheckContextMatch(domain); CheckContextMatch(domain);
CheckContextMatch(range); CheckContextMatch(range);
using var sname = MkSymbol(name);
Sort[] q = new Sort[] { domain }; Sort[] q = new Sort[] { domain };
return new FuncDecl(this, MkSymbol(name), q, range); return new FuncDecl(this, sname, q, range);
} }
/// <summary> /// <summary>
@ -618,7 +626,8 @@ namespace Microsoft.Z3
Debug.Assert(range != null); Debug.Assert(range != null);
CheckContextMatch(range); CheckContextMatch(range);
return new FuncDecl(this, MkSymbol(name), null, range); using var sname = MkSymbol(name);
return new FuncDecl(this, sname, null, range);
} }
/// <summary> /// <summary>
@ -685,8 +694,8 @@ namespace Microsoft.Z3
public Expr MkConst(string name, Sort range) public Expr MkConst(string name, Sort range)
{ {
Debug.Assert(range != null); Debug.Assert(range != null);
using var sname = MkSymbol(name);
return MkConst(MkSymbol(name), range); return MkConst(sname, range);
} }
/// <summary> /// <summary>
@ -727,8 +736,8 @@ namespace Microsoft.Z3
/// </summary> /// </summary>
public BoolExpr MkBoolConst(string name) public BoolExpr MkBoolConst(string name)
{ {
using var sname = MkSymbol(name);
return (BoolExpr)MkConst(MkSymbol(name), BoolSort); return (BoolExpr)MkConst(sname, BoolSort);
} }
/// <summary> /// <summary>
@ -776,8 +785,8 @@ namespace Microsoft.Z3
public BitVecExpr MkBVConst(Symbol name, uint size) public BitVecExpr MkBVConst(Symbol name, uint size)
{ {
Debug.Assert(name != null); Debug.Assert(name != null);
using var sort = MkBitVecSort(size);
return (BitVecExpr)MkConst(name, MkBitVecSort(size)); return (BitVecExpr)MkConst(name, sort);
} }
/// <summary> /// <summary>
@ -785,8 +794,8 @@ namespace Microsoft.Z3
/// </summary> /// </summary>
public BitVecExpr MkBVConst(string name, uint size) public BitVecExpr MkBVConst(string name, uint size)
{ {
using var sort = MkBitVecSort(size);
return (BitVecExpr)MkConst(name, MkBitVecSort(size)); return (BitVecExpr)MkConst(name, sort);
} }
#endregion #endregion
@ -2042,8 +2051,9 @@ namespace Microsoft.Z3
{ {
Debug.Assert(domain != null); Debug.Assert(domain != null);
Debug.Assert(range != null); Debug.Assert(range != null);
using var sort = MkArraySort(domain, range);
return (ArrayExpr)MkConst(MkSymbol(name), MkArraySort(domain, range)); using var sname = MkSymbol(name);
return (ArrayExpr)MkConst(sname, sort);
} }
@ -3837,8 +3847,8 @@ namespace Microsoft.Z3
/// <seealso cref="MkSolver(Symbol)"/> /// <seealso cref="MkSolver(Symbol)"/>
public Solver MkSolver(string logic) public Solver MkSolver(string logic)
{ {
using var slogic = MkSymbol(logic);
return MkSolver(MkSymbol(logic)); return MkSolver(slogic);
} }
/// <summary> /// <summary>