aboutsummaryrefslogtreecommitdiff
path: root/build/parser
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2015-09-09 14:10:24 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2015-09-09 14:10:24 +0200
commit7a2f5753a12a68e87f8556f6e833710f147533b2 (patch)
tree850bfc8e3b0a40671db5656e695d640488bdda0a /build/parser
parente3b6dc455ab5c98606e38983bd19426ae346f469 (diff)
Add support for evaluation context
For now it acts as just the value mode that can be enabled anywhere variable expansion is supported, for example: (foo=bar): And the primary use currently is to enable/test quoted and indirect variable expansion: "foo bar" = FOO BAR print $"foo bar" # Invalid. print $("foo bar") # Yeah, baby. foo = FOO FOO = foo print $($foo) Not that you should do something like this...
Diffstat (limited to 'build/parser')
-rw-r--r--build/parser3
1 files changed, 3 insertions, 0 deletions
diff --git a/build/parser b/build/parser
index b5155be..0678a62 100644
--- a/build/parser
+++ b/build/parser
@@ -77,6 +77,9 @@ namespace build
variable_name (names_type&&, const location&);
names_type
+ eval (token&, token_type&);
+
+ names_type
names (token& t, token_type& tt)
{
names_type ns;