2024-09-21 18:38:18 +02:00

42 lines
481 B
ANTLR

grammar Config;
lineStatement
: (entry | leadingComment | WHITESPACE?) EOF
;
entry
: WHITESPACE? key? separator? value? leadingComment?
;
separator
: WHITESPACE
;
key
: STRING
;
value
: (STRING WHITESPACE)* STRING? WHITESPACE?
;
leadingComment
: HASH WHITESPACE? (STRING WHITESPACE?)+
;
HASH
: '#'
;
WHITESPACE
: [ \t]+
;
STRING
: ~(' ' | '\t' | '\r' | '\n' | '#')+
;
NEWLINE
: '\r'? '\n'
;