6 # whitespace, non-printables
8 newline = ('\r\n' | '\n\r' | '\n' | '\f');
9 escaped_newline = '\\' newline;
10 nonnewline = any - [\r\n\f];
11 nonprintable_char = cntrl - [\r\n\f];
15 hex_num = 0 [xX] [a-fA-F0-9]+;
17 integer = [+\-]? (hex_num | oct_num | dec_num);
18 float = [+\-]? ((digit* '.' digit+) | (digit+ '.' digit*) | digit+)
24 if (!line_contains_code && !line_start) line_start = ts;
25 line_contains_code = 1;
29 if (!line_contains_code) {
30 whole_line_comment = 1;
31 if (!line_start) line_start = ts;
38 p == buffer || *(p-1) == '\r' || *(p-1) == '\n' || *(p-1) == '\f'
41 p == buffer || *(p-2) == '\r' || *(p-2) == '\n' || *(p-2) == '\f'