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

Skip to content
< 8000 div data-target="react-app.reactRoot">

feat: set values (#316) - #14

Merged
adityamukho merged 1 commit into
v3from
feat/316-set-values
Oct 24, 2026
Merged

adityamukho merged 1 commit into
v3from
feat/316-set-values

Conversation

@adityamukho
Copy link
Copy Markdown
Contributor

Step 24 of the minigraf#316 plan (PR 4), Swift.

  • Shim synced with minigraf-binding-template#8: MiniGrafValue.set both ways, a nested set is API-021, execute() JSON returns a set as an array, wildcard arms for core's #[non_exhaustive] Value.
  • Sugar: a new MinigrafSetElement protocol (Bool, Int/Int32/Int64, Double/Float, String, UUID as a ref, MiniGrafValue) and Set: MinigrafBindable where Element: MinigrafSetElement. A computed property can't throw, so non-value elements are rejected at compile time; mixed types use Set<MiniGrafValue>.
  • Pin core v3 → 7c8c5540 (Cargo.lock too).
  • Tests (Tests/swift/main.swift): Swift/empty/typed sets, equality with a stored set, JSON array, fact record, UUID element, API-021. Consumer contract: a set comes back and binds.

No local Swift toolchain, so the first compile happens in CI. 35 cargo tests pass locally.

Depends on minigraf-binding-template#8 (same shim).

🤖 Generated with Claude Code

https://claude.ai/code/session_01TcpoiFyFeQQQELL872LfQF

Shim synced with the binding template: MiniGrafValue.set both ways, a
nested set is API-021, execute() returns a set as an array. A Swift Set of
MinigrafSetElement binds a set value (UUID elements are refs). Pin core v3
at 7c8c5540.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TcpoiFyFeQQQELL872LfQF
@adityamukho
adityamukho merged commit 9a9c06f into v3 Oct 24, 2026
5 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