mirror of
https://github.com/Myzel394/config-lsp.git
synced 2025-06-19 07:25:27 +02:00
43 lines
519 B
ANTLR
43 lines
519 B
ANTLR
grammar Config;
|
|
|
|
lineStatement
|
|
: (entry | (WHITESPACE? leadingComment) | WHITESPACE?) EOF
|
|
;
|
|
|
|
entry
|
|
: WHITESPACE? key? WHITESPACE value? WHITESPACE? leadingComment?
|
|
;
|
|
|
|
key
|
|
: STRING
|
|
;
|
|
|
|
value
|
|
: STRING
|
|
;
|
|
|
|
leadingComment
|
|
: HASH WHITESPACE? (STRING WHITESPACE?)+
|
|
;
|
|
|
|
|
|
HASH
|
|
: '#'
|
|
;
|
|
|
|
MATCH
|
|
: ('M' | 'm') ('A' | 'a') ('T' | 't') ('C' | 'c') ('H' | 'h')
|
|
;
|
|
|
|
WHITESPACE
|
|
: [ \t]+
|
|
;
|
|
|
|
STRING
|
|
: ~(' ' | '\t' | '\r' | '\n' | '#')+
|
|
;
|
|
|
|
NEWLINE
|
|
: '\r'? '\n'
|
|
;
|