Commit 8d6a551
authored
Implement optional scenarios (#372)
## Usage and product changes
We implement scenarios testing the functionality of optional reads, and
add scenarios to verify the behaviour of disjunctions with regards to
shared and non-shared variables in each branch.
Highlights:
- Sibling optionals cannot share optional variables, though they can
re-use any variables from parent scopes
- Optionals can be nested
- Optionals cannot be used in negations or disjunctions (at least until
disjunctions can also return optional answers)
- We call the value returned in a Variable when it is a failed optional
`None`, instead of `empty`.1 parent 5761cb0 commit 8d6a551
File tree
13 files changed
+367
-188
lines changed- query
- functions
- language
13 files changed
+367
-188
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
41 | 41 | | |
42 | 42 | | |
43 | 43 | | |
44 | | - | |
| 44 | + | |
45 | 45 | | |
46 | 46 | | |
47 | 47 | | |
| |||
107 | 107 | | |
108 | 108 | | |
109 | 109 | | |
110 | | - | |
| 110 | + | |
111 | 111 | | |
112 | 112 | | |
113 | 113 | | |
| |||
184 | 184 | | |
185 | 185 | | |
186 | 186 | | |
187 | | - | |
188 | | - | |
| 187 | + | |
| 188 | + | |
189 | 189 | | |
190 | 190 | | |
191 | 191 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
53 | 53 | | |
54 | 54 | | |
55 | 55 | | |
56 | | - | |
57 | | - | |
58 | | - | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
59 | 59 | | |
60 | 60 | | |
61 | 61 | | |
| |||
100 | 100 | | |
101 | 101 | | |
102 | 102 | | |
| 103 | + | |
| 104 | + | |
| 105 | + | |
| 106 | + | |
| 107 | + | |
| 108 | + | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
| 116 | + | |
| 117 | + | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
| 132 | + | |
| 133 | + | |
| 134 | + | |
| 135 | + | |
| 136 | + | |
| 137 | + | |
| 138 | + | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
| 145 | + | |
| 146 | + | |
| 147 | + | |
| 148 | + | |
| 149 | + | |
| 150 | + | |
| 151 | + | |
| 152 | + | |
| 153 | + | |
| 154 | + | |
| 155 | + | |
| 156 | + | |
| 157 | + | |
103 | 158 | | |
104 | 159 | | |
105 | 160 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
75 | 75 | | |
76 | 76 | | |
77 | 77 | | |
78 | | - | |
79 | 78 | | |
80 | 79 | | |
81 | 80 | | |
| |||
85 | 84 | | |
86 | 85 | | |
87 | 86 | | |
88 | | - | |
89 | 87 | | |
90 | 88 | | |
91 | 89 | | |
| |||
96 | 94 | | |
97 | 95 | | |
98 | 96 | | |
99 | | - | |
100 | 97 | | |
101 | 98 | | |
102 | 99 | | |
| |||
110 | 107 | | |
111 | 108 | | |
112 | 109 | | |
113 | | - | |
114 | 110 | | |
115 | 111 | | |
116 | 112 | | |
| |||
198 | 194 | | |
199 | 195 | | |
200 | 196 | | |
201 | | - | |
202 | | - | |
| 197 | + | |
| 198 | + | |
203 | 199 | | |
204 | 200 | | |
205 | 201 | | |
| |||
243 | 239 | | |
244 | 240 | | |
245 | 241 | | |
246 | | - | |
247 | 242 | | |
248 | 243 | | |
249 | 244 | | |
250 | 245 | | |
251 | 246 | | |
252 | 247 | | |
253 | 248 | | |
254 | | - | |
255 | 249 | | |
256 | 250 | | |
257 | 251 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1596 | 1596 | | |
1597 | 1597 | | |
1598 | 1598 | | |
1599 | | - | |
1600 | | - | |
1601 | | - | |
1602 | | - | |
| 1599 | + | |
| 1600 | + | |
| 1601 | + | |
| 1602 | + | |
1603 | 1603 | | |
1604 | 1604 | | |
1605 | 1605 | | |
| |||
1615 | 1615 | | |
1616 | 1616 | | |
1617 | 1617 | | |
1618 | | - | |
1619 | | - | |
| 1618 | + | |
| 1619 | + | |
1620 | 1620 | | |
1621 | 1621 | | |
1622 | 1622 | | |
| |||
1731 | 1731 | | |
1732 | 1732 | | |
1733 | 1733 | | |
1734 | | - | |
1735 | | - | |
1736 | | - | |
1737 | | - | |
| 1734 | + | |
| 1735 | + | |
| 1736 | + | |
| 1737 | + | |
1738 | 1738 | | |
1739 | 1739 | | |
1740 | 1740 | | |
| |||
1751 | 1751 | | |
1752 | 1752 | | |
1753 | 1753 | | |
1754 | | - | |
1755 | | - | |
| 1754 | + | |
| 1755 | + | |
1756 | 1756 | | |
1757 | 1757 | | |
1758 | 1758 | | |
| |||
2113 | 2113 | | |
2114 | 2114 | | |
2115 | 2115 | | |
2116 | | - | |
2117 | | - | |
2118 | | - | |
| 2116 | + | |
| 2117 | + | |
| 2118 | + | |
2119 | 2119 | | |
2120 | 2120 | | |
2121 | 2121 | | |
| |||
2357 | 2357 | | |
2358 | 2358 | | |
2359 | 2359 | | |
2360 | | - | |
2361 | | - | |
2362 | | - | |
2363 | | - | |
| 2360 | + | |
| 2361 | + | |
| 2362 | + | |
| 2363 | + | |
2364 | 2364 | | |
2365 | 2365 | | |
2366 | 2366 | | |
| |||
2376 | 2376 | | |
2377 | 2377 | | |
2378 | 2378 | | |
2379 | | - | |
2380 | | - | |
| 2379 | + | |
| 2380 | + | |
2381 | 2381 | | |
2382 | 2382 | | |
2383 | 2383 | | |
| |||
2452 | 2452 | | |
2453 | 2453 | | |
2454 | 2454 | | |
2455 | | - | |
2456 | | - | |
2457 | | - | |
2458 | | - | |
| 2455 | + | |
| 2456 | + | |
| 2457 | + | |
| 2458 | + | |
2459 | 2459 | | |
2460 | 2460 | | |
2461 | 2461 | | |
| |||
2472 | 2472 | | |
2473 | 2473 | | |
2474 | 2474 | | |
2475 | | - | |
2476 | | - | |
| 2475 | + | |
| 2476 | + | |
2477 | 2477 | | |
2478 | 2478 | | |
2479 | 2479 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1142 | 1142 | | |
1143 | 1143 | | |
1144 | 1144 | | |
1145 | | - | |
1146 | | - | |
| 1145 | + | |
| 1146 | + | |
1147 | 1147 | | |
1148 | 1148 | | |
1149 | 1149 | | |
| |||
1173 | 1173 | | |
1174 | 1174 | | |
1175 | 1175 | | |
1176 | | - | |
1177 | | - | |
1178 | | - | |
| 1176 | + | |
| 1177 | + | |
| 1178 | + | |
1179 | 1179 | | |
1180 | 1180 | | |
1181 | 1181 | | |
| |||
1204 | 1204 | | |
1205 | 1205 | | |
1206 | 1206 | | |
1207 | | - | |
1208 | | - | |
1209 | | - | |
| 1207 | + | |
| 1208 | + | |
| 1209 | + | |
1210 | 1210 | | |
1211 | 1211 | | |
1212 | 1212 | | |
| |||
1222 | 1222 | | |
1223 | 1223 | | |
1224 | 1224 | | |
1225 | | - | |
1226 | | - | |
| 1225 | + | |
| 1226 | + | |
1227 | 1227 | | |
1228 | 1228 | | |
1229 | 1229 | | |
| |||
1899 | 1899 | | |
1900 | 1900 | | |
1901 | 1901 | | |
| 1902 | + | |
1902 | 1903 | | |
1903 | 1904 | | |
1904 | 1905 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1412 | 1412 | | |
1413 | 1413 | | |
1414 | 1414 | | |
1415 | | - | |
1416 | | - | |
1417 | | - | |
1418 | | - | |
| 1415 | + | |
| 1416 | + | |
| 1417 | + | |
| 1418 | + | |
1419 | 1419 | | |
1420 | 1420 | | |
1421 | 1421 | | |
| |||
2536 | 2536 | | |
2537 | 2537 | | |
2538 | 2538 | | |
2539 | | - | |
2540 | | - | |
2541 | | - | |
| 2539 | + | |
| 2540 | + | |
| 2541 | + | |
2542 | 2542 | | |
2543 | 2543 | | |
2544 | 2544 | | |
| |||
3012 | 3012 | | |
3013 | 3013 | | |
3014 | 3014 | | |
3015 | | - | |
3016 | | - | |
3017 | | - | |
| 3015 | + | |
| 3016 | + | |
| 3017 | + | |
3018 | 3018 | | |
3019 | 3019 | | |
3020 | 3020 | | |
| |||
3423 | 3423 | | |
3424 | 3424 | | |
3425 | 3425 | | |
3426 | | - | |
3427 | | - | |
3428 | | - | |
| 3426 | + | |
| 3427 | + | |
| 3428 | + | |
3429 | 3429 | | |
3430 | 3430 | | |
3431 | 3431 | | |
| |||
0 commit comments