aboutsummaryrefslogtreecommitdiff
path: root/build2/test/script/parser
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2016-11-04 08:47:35 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2016-11-04 09:26:26 +0200
commit3eb0cd7fe3c1dec0bb3b7e1d225107e55ca4b435 (patch)
treef7c06695b1c8974ab0b4777b416db7343f5ebbae /build2/test/script/parser
parent1270101f4267ecd187bb604190d004daaae341b7 (diff)
Various testscript lexer/parser fixes (testscript)
Diffstat (limited to 'build2/test/script/parser')
-rw-r--r--build2/test/script/parser14
1 files changed, 13 insertions, 1 deletions
diff --git a/build2/test/script/parser b/build2/test/script/parser
index f9fbd98..adff8a3 100644
--- a/build2/test/script/parser
+++ b/build2/test/script/parser
@@ -40,7 +40,7 @@ namespace build2
//
protected:
void
- parse_script (token&, token_type&);
+ parse_script ();
void
parse_script_line (token&, token_type&);
@@ -63,6 +63,18 @@ namespace build2
virtual lookup
lookup_variable (name&&, string&&, const location&) override;
+ // Number of quoted tokens since last reset. Note that this includes
+ // the peeked token, if any.
+ //
+ protected:
+ size_t
+ quoted () const;
+
+ void
+ reset_quoted (token& current);
+
+ size_t replay_quoted_;
+
protected:
using base_parser = build2::parser;