1 |
/* |
/* |
2 |
* Copyright (c) 2015-2019 Christian Schoenebeck |
* Copyright (c) 2015-2020 Christian Schoenebeck |
3 |
* |
* |
4 |
* http://www.linuxsampler.org |
* http://www.linuxsampler.org |
5 |
* |
* |
31 |
#define YY_USER_ACTION \ |
#define YY_USER_ACTION \ |
32 |
yyextra->line = yylineno - 1; \ |
yyextra->line = yylineno - 1; \ |
33 |
yyextra->column = yycolumn; \ |
yyextra->column = yycolumn; \ |
34 |
|
yyextra->offset += (int) yyleng; \ |
35 |
|
yyextra->length = (int) yyleng; \ |
36 |
yycolumn += yyleng; |
yycolumn += yyleng; |
37 |
|
|
38 |
using namespace LinuxSampler; |
using namespace LinuxSampler; |
73 |
|
|
74 |
DIGIT [0-9] |
DIGIT [0-9] |
75 |
ID [a-zA-Z][a-zA-Z0-9_]* |
ID [a-zA-Z][a-zA-Z0-9_]* |
76 |
METRIC (k|h|da|d|c|m|u) |
METRIC (k|h|(da)|d|c|m|u) |
77 |
UNIT (s|Hz|B) |
UNIT (s|(Hz)|B) |
78 |
END_ID on|while|if|select|function|synchronized |
END_ID on|while|if|select|function|synchronized |
79 |
|
|
80 |
%% |
%% |
102 |
} |
} |
103 |
|
|
104 |
<METRIC>{METRIC}{1,2} { |
<METRIC>{METRIC}{1,2} { |
105 |
yyextra->token = MetrixPrefixToken(yytext); |
yyextra->token = MetricPrefixToken(yytext); |
106 |
yy_pop_state(yyscanner); |
yy_pop_state(yyscanner); |
107 |
return yyextra->token.baseType; |
return yyextra->token.baseType; |
108 |
} |
} |
109 |
|
|
110 |
<METRIC>{METRIC}{1,2}/{UNIT} { |
<METRIC>{METRIC}{1,2}/{UNIT} { |
111 |
yyextra->token = MetrixPrefixToken(yytext); |
yyextra->token = MetricPrefixToken(yytext); |
112 |
yy_pop_state(yyscanner); |
yy_pop_state(yyscanner); |
113 |
yy_push_state(UNIT, yyscanner); |
yy_push_state(UNIT, yyscanner); |
114 |
return yyextra->token.baseType; |
return yyextra->token.baseType; |
229 |
|
|
230 |
/* Event Handler Names (only if they occur alone in a document!) */ |
/* Event Handler Names (only if they occur alone in a document!) */ |
231 |
|
|
232 |
^\s*(init|note|release|controller) { |
^\s*(init|note|release|controller|rpn|nrpn) { |
233 |
yyextra->token = EventHandlerNameToken(yytext); |
yyextra->token = EventHandlerNameToken(yytext); |
234 |
return yyextra->token.baseType; |
return yyextra->token.baseType; |
235 |
} |
} |