summaryrefslogtreecommitdiff
path: root/examples/api/datatypes-new.cpp
diff options
context:
space:
mode:
authorAndrew Reynolds <andrew.j.reynolds@gmail.com>2019-11-17 20:19:24 -0600
committerGitHub <noreply@github.com>2019-11-17 20:19:24 -0600
commit11bc0e4c3147b0fce3033b6a4290d8730aa401ad (patch)
treece273375634b5e9ea3981855f57f693125b6f8cd /examples/api/datatypes-new.cpp
parent990ff24487fd0b6998231894825eb9cd4610494e (diff)
Updates to the unit tests, api, and examples for datatypes (#3459)
* Updates to the unit tests, api, and examples for datatypes * Format
Diffstat (limited to 'examples/api/datatypes-new.cpp')
-rw-r--r--examples/api/datatypes-new.cpp12
1 files changed, 9 insertions, 3 deletions
diff --git a/examples/api/datatypes-new.cpp b/examples/api/datatypes-new.cpp
index 8c6257725..efbd33645 100644
--- a/examples/api/datatypes-new.cpp
+++ b/examples/api/datatypes-new.cpp
@@ -27,7 +27,7 @@ void test(Solver& slv, Sort& consListSort)
// the complete spec for the datatype from the DatatypeSort, and
// this Datatype object has constructor symbols (and others) filled in.
- Datatype consList = consListSort.getDatatype();
+ const Datatype& consList = consListSort.getDatatype();
// t = cons 0 nil
//
@@ -103,7 +103,7 @@ void test(Solver& slv, Sort& consListSort)
Sort paramConsIntListSort =
paramConsListSort.instantiate(std::vector<Sort>{slv.getIntegerSort()});
- Datatype paramConsList = paramConsListSort.getDatatype();
+ const Datatype& paramConsList = paramConsListSort.getDatatype();
std::cout << "parameterized datatype sort is " << std::endl;
for (const DatatypeConstructor& ctor : paramConsList)
@@ -169,7 +169,13 @@ int main()
<< ">>> Alternatively, use declareDatatype" << std::endl;
std::cout << std::endl;
- std::vector<DatatypeConstructorDecl> ctors = {cons, nil};
+ DatatypeConstructorDecl cons2("cons");
+ DatatypeSelectorDecl head2("head", slv.getIntegerSort());
+ DatatypeSelectorDecl tail2("tail", DatatypeDeclSelfSort());
+ cons2.addSelector(head2);
+ cons2.addSelector(tail2);
+ DatatypeConstructorDecl nil2("nil");
+ std::vector<DatatypeConstructorDecl> ctors = {cons2, nil2};
Sort consListSort2 = slv.declareDatatype("list2", ctors);
test(slv, consListSort2);
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback