fix: Add set literal formatting support (Phase 6 of #164)#178
fix: Add set literal formatting support (Phase 6 of #164)#178andreasronge merged 1 commit intomainfrom
Conversation
- Add {:set, elems} clause to format/1 in formatter.ex
- Output uses properly escaped # character: #{...}
- Add comprehensive tests for set formatting
- Add roundtrip tests (parse -> format -> parse)
- All 1010 tests pass
Fixes #177
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
PR Review: fix: Add set literal formatting support (Phase 6 of #164)SummaryClean implementation of set formatting for PTC-Lisp, adding the What's Good
Issues (Must Fix)None found. The implementation is correct and complete. Suggestions (Optional)
SecurityNo concerns - this is a pure formatting function with no external I/O or user input handling. DocumentationNo updates needed - this is an internal change. The spec document ( VerdictApprove - Implementation is correct, matches specification, tests pass, and follows established patterns. |
Auto-Triage SummaryReview AnalysisThe automated PR review found zero issues requiring fixes. The implementation is correct, complete, and matches the specification exactly. Decisions Made
Status
Next StepsAll checks passed. Adding |
Summary
Implements Phase 6 (Formatter) of the set literal epic (#164). Adds support for formatting
{:set, elems}AST nodes to#{...}syntax.formatter.ex#character to avoid Elixir string interpolation issuesTest Results
All 1010 tests passing ✅
Changes
lib/ptc_runner/lisp/formatter.ex: Addformat({:set, elems})clausetest/ptc_runner/lisp/formatter_test.exs: Add 8 new tests + 3 roundtrip testsFixes #177
🤖 Generated with Claude Code