diff options
Diffstat (limited to 'build/parser')
-rw-r--r-- | build/parser | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/build/parser b/build/parser index 4375b27..25866bc 100644 --- a/build/parser +++ b/build/parser @@ -12,6 +12,7 @@ #include <build/path> #include <build/token> #include <build/name> +#include <build/spec> #include <build/diagnostics> namespace build @@ -25,10 +26,13 @@ namespace build public: parser (): fail (&path_) {} - // Issues diagnostics and throws failed in case of an error. + // Issue diagnostics and throw failed in case of an error. // void - parse (std::istream&, const path&, scope&); + parse_buildfile (std::istream&, const path&, scope&); + + buildspec + parse_buildspec (std::istream&, const std::string& name); // Recursive descent parser. // @@ -60,6 +64,11 @@ namespace build names_type&, std::size_t pair, const path* dir, const std::string* type); + // Buildspec. + // + buildspec + buildspec_clause (token&, token_type&, token_type end); + // Utilities. // private: |