Skip to content

Tokenize the method reference sign of Visual X# - #21

Merged
Leitwolf11 merged 1 commit into
mainfrom
feature/vxs-method-reference
Oct 9, 2026
Merged

Leitwolf11 merged 1 commit into
mainfrom
feature/vxs-method-reference

Conversation

@Leitwolf11

Copy link
Copy Markdown
Contributor

UI or model change

The syntax module owns this. VisualXSharpTokenizer lists the signs of the Visual X# lexer, and Visual X# 0.5.0 (Progmasoft/tala#42, not merged yet) adds ::, the method reference of Type::Method. Without it the editor showed a reference as two colons of punctuation. :: is now one operator token, listed ahead of the single colon, as in the compiler.

Nothing else of 0.5.0 needs a change here: the keyword list already matches the compiler's lexer, names written through a namespace are names and dots, and a conditional over strings tokenizes as before. Operators keep the editor's text colour, so the visible change is small; the token boundary is what later features read.

No XIT change.

Verification

  • Relevant Kotlin tests and check were run.
  • UI state, keyboard interaction, accessibility, and Windows/macOS behavior were considered if affected.
  • Document persistence or compiler-process failure behavior was tested if affected.
  • Formatting, generated files, licenses, and git diff --check were checked.

Commands and results (including anything not run):

./gradlew :modules:syntax:test    passed
./gradlew check                   passed (Windows 11)
git diff --check                  clean

Not run: macOS and Linux. The UI and persistence items are unchecked because neither is affected.

Screenshots or recordings for visual changes: none; operators are not coloured.

Visual X# 0.5.0 implements the method reference `Type::Method`, and its
lexer has `::` as one sign. The tokenizer that colours Visual X# listed
the compiler's signs without it, so the reference was two colons of
punctuation. `::` is now an operator of the list, ahead of the single
colon, as in the compiler.

The tests hold a reference between two names, a reference whose type is
written through its namespace, that a single colon is still the
punctuation of a conditional, and a conditional that selects strings.
@Leitwolf11
Leitwolf11 marked this pull request as ready for review October 9, 2026 20:50
@Leitwolf11
Leitwolf11 merged commit a9bc94b into main Oct 9, 2026
6 checks passed
@Leitwolf11
Leitwolf11 deleted the feature/vxs-method-reference branch October 9, 2026 20:50
@codecov

codecov Bot commented Oct 9, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

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