From 757f42e7dea94f8b79b3d55074dedeafd853ddc5 Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Fri, 25 Nov 2016 15:17:01 +0200 Subject: Implement literal here-document support --- build2/test/script/lexer | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'build2/test/script/lexer') diff --git a/build2/test/script/lexer b/build2/test/script/lexer index 5597e9a..b812f84 100644 --- a/build2/test/script/lexer +++ b/build2/test/script/lexer @@ -29,7 +29,8 @@ namespace build2 second_token, // Expires at the end of the token. variable_line, // Expires at the end of the line. command_line, - here_line, + here_line_single, + here_line_double, description_line // Expires at the end of the line. }; @@ -48,10 +49,13 @@ namespace build2 const path& name, lexer_mode m, const char* escapes = nullptr) - : base_lexer (is, name, escapes, nullptr, false) {mode (m);} + : base_lexer (is, name, nullptr, nullptr, false) + { + mode (m, '\0', escapes); + } virtual void - mode (base_mode, char = '\0') override; + mode (base_mode, char = '\0', const char* = nullptr) override; // Number of quoted (double or single) tokens since last reset. // -- cgit v1.1