diff options
| author | Bruce Hill <bruce@bruce-hill.com> | 2025-09-21 22:55:03 -0400 |
|---|---|---|
| committer | Bruce Hill <bruce@bruce-hill.com> | 2025-09-21 22:55:03 -0400 |
| commit | 0d36812c6af951a41caac77d5f312949f3bc521f (patch) | |
| tree | ae0f545805c524ffa467b925687bf70e88e2bc58 /src/stdlib/tables.c | |
| parent | fa7a0ddc0963deb387f0cae7bb22ca968ee9146f (diff) | |
Deprecate binary ops (other than ++) for tables. Instead use proper
methods: t.with(other), t.without(other), t.intersection(other),
t.difference(other)
Diffstat (limited to 'src/stdlib/tables.c')
| -rw-r--r-- | src/stdlib/tables.c | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/src/stdlib/tables.c b/src/stdlib/tables.c index bda55375..6698dea3 100644 --- a/src/stdlib/tables.c +++ b/src/stdlib/tables.c @@ -577,9 +577,9 @@ Table_t Table$from_entries(List_t entries, const TypeInfo_t *type) { return t; } -// And is "set intersection" in formal terms +// "set intersection" in formal terms public -Table_t Table$and(Table_t a, Table_t b, const TypeInfo_t *type) { +Table_t Table$intersection(Table_t a, Table_t b, const TypeInfo_t *type) { // Return a table such that t[k]==a[k] for all k such that a.has(k), b.has(k), and a[k]==b[k] Table_t result = {}; const size_t offset = value_offset(type); @@ -595,9 +595,9 @@ Table_t Table$and(Table_t a, Table_t b, const TypeInfo_t *type) { return result; } -// Or is "set union" in formal terms +// "set union" in formal terms public -Table_t Table$or(Table_t a, Table_t b, const TypeInfo_t *type) { +Table_t Table$with(Table_t a, Table_t b, const TypeInfo_t *type) { // return a table such that t[k]==b[k] for all k such that b.has(k), and t[k]==a[k] for all k such that a.has(k) and // not b.has(k) Table_t result = {}; @@ -617,9 +617,9 @@ Table_t Table$or(Table_t a, Table_t b, const TypeInfo_t *type) { return result; } -// Xor is "disjunctive union" or "symmetric difference" in formal terms +// "disjunctive union" or "symmetric difference" in formal terms public -Table_t Table$xor(Table_t a, Table_t b, const TypeInfo_t *type) { +Table_t Table$difference(Table_t a, Table_t b, const TypeInfo_t *type) { // return a table with elements in `a` or `b`, but not both Table_t result = {}; const size_t offset = value_offset(type); @@ -638,9 +638,9 @@ Table_t Table$xor(Table_t a, Table_t b, const TypeInfo_t *type) { return result; } -// Minus is "set difference" in formal terms +// "without" is "set difference" in formal terms public -Table_t Table$minus(Table_t a, Table_t b, const TypeInfo_t *type) { +Table_t Table$without(Table_t a, Table_t b, const TypeInfo_t *type) { // Return a table such that t[k]==a[k] for all k such that not b.has(k) or b[k] != a[k] Table_t result = {}; const size_t offset = value_offset(type); |
