diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2021-11-23 11:20:03 +0200 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2021-11-23 11:20:03 +0200 |
commit | f5c7b962c4d3512f32df8c3bbd3370f846239b02 (patch) | |
tree | 2aff4e52f277ecac62ce1cb8bf302ffd0884666a /libbuild2/build/script/types-parsers.hxx | |
parent | b5083221dad8084deb4a7949cb9fc487aa09e080 (diff) |
WIP: completedyndep
Diffstat (limited to 'libbuild2/build/script/types-parsers.hxx')
-rw-r--r-- | libbuild2/build/script/types-parsers.hxx | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/libbuild2/build/script/types-parsers.hxx b/libbuild2/build/script/types-parsers.hxx new file mode 100644 index 0000000..a42dab7 --- /dev/null +++ b/libbuild2/build/script/types-parsers.hxx @@ -0,0 +1,49 @@ +// file : libbuild2/build/script/types-parsers.hxx -*- C++ -*- +// license : MIT; see accompanying LICENSE file + +// CLI parsers, included into the generated source files. +// + +#ifndef LIBBUILD2_BUILD_SCRIPT_TYPES_PARSERS_HXX +#define LIBBUILD2_BUILD_SCRIPT_TYPES_PARSERS_HXX + +#include <libbuild2/types.hxx> + +namespace build2 +{ + namespace build + { + namespace script + { + namespace cli + { + class scanner; + + template <typename T> + struct parser; + + template <> + struct parser<path> + { + static void + parse (path&, bool&, scanner&); + + static void + merge (path& b, const path& a) {b = a;} + }; + + template <> + struct parser<dir_path> + { + static void + parse (dir_path&, bool&, scanner&); + + static void + merge (dir_path& b, const dir_path& a) {b = a;} + }; + } + } + } +} + +#endif // LIBBUILD2_BUILD_SCRIPT_TYPES_PARSERS_HXX |