8000 feat: set values (#316) by adityamukho · Pull Request #12 · project-minigraf/minigraf-c · GitHub
[go: up one dir, main page]

Skip to content

feat: set values (#316) - #12

Merged
adityamukho merged 2 commits into
v3from
feat/316-set-values
Oct 24, 2026
Merged

adityamukho merged 2 commits into
v3from
feat/316-set-values

Conversation

@adityamukho
Copy link
Copy Markdown
Contributor

Step 25 of the minigraf#316 plan (PR 4), C.

  • bindings_json takes {"type": "set", "value": [...]}. Elements are plain values or typed value objects; an element of another kind (entity, txCount, timestamp, anyValidTime, an array) is API-017, a set inside a set is API-021, and a non-array value is API-017.
  • ValueJson gains set (an array of typed values) for fact records and the log writer; value_to_json returns arrays; wildcard arms for core's #[non_exhaustive] Value.
  • Pin core v3 → 7c8c5540; include/minigraf.h regenerated with cbindgen 0.29.2.
  • Tests: sets in in?, equality with a stored set (keyword element), JSON array output, every rejection path, ValueJson set round trip and API-021. Consumer contract: a set comes back and binds.

Local run: 19 Rust tests and the C contract pass.

🤖 Generated with Claude Code

https://claude.ai/code/session_01TcpoiFyFeQQQELL872LfQF

adityamukho and others added 2 commits October 25, 2026 02:25
A set binds as {"type": "set", "value": [...]}; elements are plain or
typed value objects, another kind is API-017, a nested set API-021. Fact
records carry {"type": "set"}; execute returns a set as an array. Pin
core v3 at 7c8c5540; header regenerated.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TcpoiFyFeQQQELL872LfQF
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TcpoiFyFeQQQELL872LfQF
@adityamukho
adityamukho merged commit 93a3169 into v3 Oct 24, 2026
15 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

0