diff options
author | Shea Levy <shea@shealevy.com> | 2014-01-06 10:27:26 -0500 |
---|---|---|
committer | Eelco Dolstra <eelco.dolstra@logicblox.com> | 2014-01-14 14:00:15 +0100 |
commit | f9913f4422d1317af3c6b5aff37ad18b78083eb5 (patch) | |
tree | b18e070f5e266bfaff2abed726b767760412809f /src/libexpr | |
parent | e640d671443e291b3ca5cc0575919d6fcf14a157 (diff) |
Allow "bare" dynamic attrs
Now, in addition to a."${b}".c, you can write a.${b}.c (applicable
wherever dynamic attributes are valid).
Signed-off-by: Shea Levy <shea@shealevy.com>
Diffstat (limited to 'src/libexpr')
-rw-r--r-- | src/libexpr/lexer.l | 2 | ||||
-rw-r--r-- | src/libexpr/parser.y | 1 |
2 files changed, 3 insertions, 0 deletions
diff --git a/src/libexpr/lexer.l b/src/libexpr/lexer.l index 5d0360401..911850cc5 100644 --- a/src/libexpr/lexer.l +++ b/src/libexpr/lexer.l @@ -117,6 +117,8 @@ or { return OR_KW; } return INT; } +\$\{ { return DOLLAR_CURLY; } + \" { BEGIN(STRING); return '"'; } <STRING>([^\$\"\\]|\$[^\{\"]|\\.)+ { /* !!! Not quite right: we want a follow restriction on diff --git a/src/libexpr/parser.y b/src/libexpr/parser.y index 28972cf72..230584388 100644 --- a/src/libexpr/parser.y +++ b/src/libexpr/parser.y @@ -509,6 +509,7 @@ attr string_attr : '"' string_parts '"' { $$ = $2; } + | DOLLAR_CURLY expr '}' { $$ = $2; } ; expr_list |