Repository navigation
Conversation
docs/plans/2026-10-04-binary-condition-nodes-plan.md lays out three steps on top of #1550: a collatable<Self> base writing the collation members once, collation for IS / IS NOT / IS [NOT] DISTINCT FROM as SQLite offers it, and the conditions as aliases over one node like the binary operators since #1552. TODO.md points to it. Co-Authored-By: Claude Opus 5.5
…on-nodes-plan Co-Authored-By: Claude Opus 5.5
The plan now builds on #1564, whose named factories unwrap quoted operands; step 3 keeps their unwrapped return types. Co-Authored-By: Claude Opus 5.5
…on-nodes-plan Co-Authored-By: Claude Opus 5.5
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Stacked on #1564: based on its branch, so this diff shows only the changes on top of it.
Summary
A plan, no code:
docs/plans/2026-10-04-binary-condition-nodes-plan.md, linked from the "Internals" section ofTODO.md. It lays out three steps for the binary conditions indev/ast/binary_condition.h:collatable<Self>base. It holds the five collation members (collate_binary(),collate_nocase(),collate_rtrim(),collate(name),collate<C>()) once. Today the six comparisons repeat them, 30 functions in all. No change for consumers.using add_t = binary_operator<L, R, add_string, ...>). Collatability and the result type would be carried by tags. This step would follow Move the operators to ast/ and classify them by trait #1552's merge.The plan also covers:
requires, so it needs a conditional CRTP base;It's stacked on #1564 because #1564 changed the condition factories' return types to unwrap
c()-quoted operands, and step 3 builds on that.🤖 Generated with Claude Code