blob: 39766326510250eeba1b09efa62984285b7ef501 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
|
[Options]
case-insensitive
classname = QCssScanner_Generated
[Code Generator Options]
MapToCode[a-z] = (ch.unicode() >= 'a' && ch.unicode() <= 'z') || ch.unicode() >= 256
TokenPrefix = QCss::
FileHeader = ../moc/licenseheader.txt
[Macros]
escape = \\[^\r\n\f0-9a-f]
nmstart = [_a-z]|{escape}
nmchar = [_a-z0-9-]|{escape}
nl = \n|\r\n|\r|\f
string1 = \"([^\n\r\f\\"]|\\{nl}|{escape})*\"
string2 = \'([^\n\r\f\\']|\\{nl}|{escape})*\'
invalid1 = \"([^\n\r\f\\"]|\\{nl}|{escape})*
invalid2 = \'([^\n\r\f\\']|\\{nl}|{escape})*
ident = -?{nmstart}{nmchar}*
name = {nmchar}+
num = [0-9]+|[0-9]*"."[0-9]+
string = {string1}|{string2}
invalid = {invalid1}|{invalid2}
url = ([!#$%&*-~]|{escape})*
s = [ \t\r\n\f]
w = {s}*
[Tokens]
S = {s}+
handleCommentStart() = \/\*
CDO = "<!--"
CDC = "-->"
INCLUDES = "~="
DASHMATCH = "|="
LBRACE = {w}"{"
PLUS = {w}"+"
GREATER = {w}">"
COMMA = {w}","
STRING = {string}
INVALID = {invalid}
IDENT = {ident}
HASH = "#"{name}
ATKEYWORD_SYM = "@"{ident}
EXCLAMATION_SYM = "!"
#EMS = {num}em
#EXS = {num}ex
#LENGTH = {num}px
#LENGTH = {num}cm
#LENGTH = {num}mm
#LENGTH = {num}in
#LENGTH = {num}pt
#LENGTH = {num}pc
#ANGLE = {num}deg
#ANGLE = {num}rad
#ANGLE = {num}grad
#TIME = {num}ms
#TIME = {num}s
#FREQ = {num}hz
#FREQ = {num}khz
#DIMENSION = {num}{ident}
LENGTH = {num}{ident}
PERCENTAGE = {num}%
NUMBER = {num}
#URI = "url("{w}{string}{w}")"
#URI = "url("{w}{url}{w}")"
FUNCTION = {ident}"("
COLON = :
SEMICOLON = ;
RBRACE = \}
SLASH = /
MINUS = -
DOT = \.
STAR = \*
LBRACKET = \[
RBRACKET = \]
EQUAL = \=
LPAREN = \(
RPAREN = \)
OR = \|
|