Draft: [SUS-2996] Ignore every word in functional comments ($ sign) if not in *POIN section
https://its.cern.ch/jira/browse/SUS-2996 \
Summary of changes:
- Lexer state variable (_inFunctionalComment): Tracks whether we're inside a functional comment on the current line
- Lexer logic: When $ is seen, set _inFunctionalComment = true. All subsequent tokens on that line are returned as WORD (bypassing keyword matching)
- Line boundaries: Reset _inFunctionalComment at the start of each new line
- Grammar simplification: Back to a single FunctionalCommentString rule that accepts WORD | DOLLAR | Number — which is now safe because keywords like SX, SY, SZ inside comments are returned as WORD
This means:
- In *POIN sections, in functional comments, ignore everything after DCUM and Spad ID
- In *PLR3D and other measure sections, everything after $ is treated as comment (no keyword matching) (FunctionalCommentStringMeasures)
Edited by Simon Huang