kdl-org / kdl

the kdl document language specifications
https://kdl.dev
Other
1.1k stars 61 forks source link

Minimal fix to #200, banning string-like idents #241

Closed tabatkins closed 9 months ago

tabatkins commented 2 years ago

Rather than banning # in idents altogether, as #204 does, this takes the same approach as our number-like handling, and just bans idents from looking like a raw string in their first two characters: just as an ident can't start with digit or sign digit, it now can't start with r# or r" either. (That last isn't an ident, but it prevents a naive parser not using first-wins collision resolution from reading it as an ident r followed by junk.)

It also refactors the bare-ident production a bit to make the structure clearer, as it was already getting a bit messy just trying to ban number-likes.

zkat commented 9 months ago

This is already in the v2 branch. Closing.