You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
In the past, topdown would bind set[x] to true. This resulted in
confusion when people attempted to write joins with set elements.
With this change, topdown treats sets like objects/arrays, except that
set[x] is bound to x. This allows users to write queries that
dereference sets just like objects and arrays.
Also, fix handling of self-joins where previously a recursive binding
could be added. The "self-join" test case was added to cover this.
Fixesopen-policy-agent#243
In the past, topdown would bind set[x] to true. This resulted in
confusion when people attempted to write joins with set elements.
With this change, topdown treats sets like objects/arrays, except that
set[x] is bound to x. This allows users to write queries that
dereference sets just like objects and arrays.
Also, fix handling of self-joins where previously a recursive binding
could be added. The "self-join" test case was added to cover this.
Fixes#243
Today, queries cannot dereference sets (doing so results in a runtime error). It would be nice if this wasn't the case.
Instead of:
We could write:
To deal with this, we will bind set references to their value. We can explain this as
s[x].foo = bar
is syntactic sugar fors[x], x.foo = bar
.With respect to implementation, we must handle the following case:
The text was updated successfully, but these errors were encountered: