Microsoft.Automata.Z3.RankedAlphabet.MkTree C# (CSharp) Метод

MkTree() публичный Метод

Make a tree with the given constructor, attribute, and subtrees.
public MkTree ( FuncDecl f, Expr attribute ) : Expr
f Microsoft.Z3.FuncDecl
attribute Microsoft.Z3.Expr
Результат Microsoft.Z3.Expr
        public Expr MkTree(FuncDecl f, Expr attribute, params Expr[] subtrees)
        {
            int r = ((int)f.Arity)-1;
            if (subtrees.Length != r)
                throw new AutomataException(AutomataExceptionKind.RankedAlphabet_IvalidNrOfSubtrees);
            for (int i = 0; i < r; i++)
                if (subtrees[i] == null || !tt.Z.GetSort(subtrees[i]).Equals(alphabetSort))
                    throw new AutomataException(AutomataExceptionKind.RankedAlphabet_InvalidSubtree);
            Expr[] attribute_and_subtrees = new Expr[subtrees.Length + 1];
            attribute_and_subtrees[0] = attribute;
            Array.Copy(subtrees, 0, attribute_and_subtrees, 1, subtrees.Length);
            var res = tt.Z.MkApp(f, attribute_and_subtrees);
            return res;
        }

Same methods

RankedAlphabet::MkTree ( string constructor, Expr attribute ) : Expr