mirror of
https://github.com/asterisk/asterisk.git
synced 2025-10-12 15:45:18 +00:00
These changes allow AEL to better check ${} constructs within $[...], that are concatenated with text.
I modified and added rules in ast_expr2.fl to better handle the concatenations. I added some default routines to ast_expr2.y so the standalone would compile. It also looks like I haven't run this thru bison since 2.1, so it's good to get this updated. The Makefile has comments added now for check_expr2 and check_expr to explain what they are for, and how to run them. The testexpr2s stuff has been removed, in favor of check_expr2. expr2.testinput has been updated to include the two expressions that inspired these changes (from mcnobody on #asterisk this morning) The regression has been run and all looks well. git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@179807 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -158,6 +158,12 @@ HIBIT [\x80-\xff]
|
||||
return TOKEN;
|
||||
}
|
||||
|
||||
([a-zA-Z0-9\.';\\_^#@]|{HIBIT}|($[^{]))+\$\{ {
|
||||
curlycount = 0;
|
||||
BEGIN(var);
|
||||
yymore();
|
||||
}
|
||||
|
||||
|
||||
<var>[^{}]*\} {
|
||||
curlycount--;
|
||||
@@ -182,6 +188,12 @@ HIBIT [\x80-\xff]
|
||||
return TOKEN;
|
||||
}
|
||||
|
||||
<trail>[^-\t\r \n$():?%/+=*<>!|&]*\$\{ {
|
||||
curlycount = 0;
|
||||
BEGIN(var);
|
||||
yymore();
|
||||
}
|
||||
|
||||
<trail>[-\t\r \n$():?%/+=*<>!|&] {
|
||||
char c = yytext[yyleng-1];
|
||||
BEGIN(0);
|
||||
@@ -191,12 +203,6 @@ HIBIT [\x80-\xff]
|
||||
return TOKEN;
|
||||
}
|
||||
|
||||
<trail>\$\{ {
|
||||
curlycount = 0;
|
||||
BEGIN(var);
|
||||
yymore();
|
||||
}
|
||||
|
||||
<trail><<EOF>> {
|
||||
BEGIN(0);
|
||||
SET_COLUMNS;
|
||||
|
Reference in New Issue
Block a user