Skip to content

feat: model argument names as syntax nodes - #96

Merged
Seddryck merged 2 commits into
mainfrom
codex/first-class-argument-names
Aug 19, 2026
Merged

feat: model argument names as syntax nodes#96
Seddryck merged 2 commits into
mainfrom
codex/first-class-argument-names

Conversation

@Seddryck

Copy link
Copy Markdown
Owner

Summary

  • introduce dedicated public, private, and quoted argument-name grammar nodes
  • add ArgumentNameSyntax with semantic value, visibility, quoting style, exact text, and span
  • make named arguments expose [Name, Value] as their typed children
  • share argument-name and record-field-name lexical definitions

Impact

Named argument labels are no longer represented as function identifiers. Private names such as __NONAME_0 and quoted names retain their authored spelling and metadata, leaving the syntax model extensible for future name forms.

Validation

  • npm run generate
  • focused Tree-sitter corpus tests for named, mixed, private, and quoted argument names: passed
  • full Tree-sitter corpus: all affected cases pass; eight existing Windows CRLF snapshot differences remain
  • dotnet test bindings/csharp/Expressif.Syntax.Tests/Expressif.Syntax.Tests.csproj --no-restore --nologo -m:1: 158/158 passed on .NET 8, .NET 9, and .NET 10

Close #95

@coderabbitai

coderabbitai Bot commented Aug 19, 2026

Copy link
Copy Markdown
Contributor

Important

  • 🔍 Trigger review

This repository does not receive automatic reviews because it has fewer than 10 stars.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: c6e39770-7ee4-4f08-a93b-223399470122


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

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.

Make argument names a first-class syntax concept

1 participant