aboutsummaryrefslogtreecommitdiff
path: root/build2/test/script/lexer.hxx
diff options
context:
space:
mode:
Diffstat (limited to 'build2/test/script/lexer.hxx')
-rw-r--r--build2/test/script/lexer.hxx94
1 files changed, 0 insertions, 94 deletions
diff --git a/build2/test/script/lexer.hxx b/build2/test/script/lexer.hxx
deleted file mode 100644
index ad1c386..0000000
--- a/build2/test/script/lexer.hxx
+++ /dev/null
@@ -1,94 +0,0 @@
-// file : build2/test/script/lexer.hxx -*- C++ -*-
-// copyright : Copyright (c) 2014-2019 Code Synthesis Ltd
-// license : MIT; see accompanying LICENSE file
-
-#ifndef BUILD2_TEST_SCRIPT_LEXER_HXX
-#define BUILD2_TEST_SCRIPT_LEXER_HXX
-
-#include <libbuild2/types.hxx>
-#include <libbuild2/utility.hxx>
-
-#include <libbuild2/lexer.hxx>
-
-#include <build2/test/script/token.hxx>
-
-namespace build2
-{
- namespace test
- {
- namespace script
- {
- struct lexer_mode: build2::lexer_mode
- {
- using base_type = build2::lexer_mode;
-
- enum
- {
- command_line = base_type::value_next,
- first_token, // Expires at the end of the token.
- second_token, // Expires at the end of the token.
- variable_line, // Expires at the end of the line.
- command_expansion,
- here_line_single,
- here_line_double,
- description_line // Expires at the end of the line.
- };
-
- lexer_mode () = default;
- lexer_mode (value_type v): base_type (v) {}
- lexer_mode (base_type v): base_type (v) {}
- };
-
- class lexer: public build2::lexer
- {
- public:
- using base_lexer = build2::lexer;
- using base_mode = build2::lexer_mode;
-
- lexer (istream& is,
- const path& name,
- lexer_mode m,
- const char* escapes = nullptr)
- : base_lexer (is,
- name,
- 1 /* line */,
- nullptr /* escapes */,
- false /* set_mode */)
- {
- mode (m, '\0', escapes);
- }
-
- virtual void
- mode (base_mode,
- char = '\0',
- optional<const char*> = nullopt) override;
-
- // Number of quoted (double or single) tokens since last reset.
- //
- size_t
- quoted () const {return quoted_;}
-
- void
- reset_quoted (size_t q) {quoted_ = q;}
-
- virtual token
- next () override;
-
- protected:
- token
- next_line ();
-
- token
- next_description ();
-
- virtual token
- word (state, bool) override;
-
- protected:
- size_t quoted_;
- };
- }
- }
-}
-
-#endif // BUILD2_TEST_SCRIPT_LEXER_HXX