summaryrefslogtreecommitdiff
path: root/cli/parser.hxx
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2015-10-29 12:40:46 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2015-10-29 12:40:46 +0200
commit381f872a76f6ad8fc5caee172e903f08dd652547 (patch)
treee6eb9e81154eb33421da34af9fe66360d4119cab /cli/parser.hxx
parent4c13393de7c54d3e2075ca89a0e3ade1415c59f8 (diff)
Add parsing support for scope-level documentation
Diffstat (limited to 'cli/parser.hxx')
-rw-r--r--cli/parser.hxx11
1 files changed, 10 insertions, 1 deletions
diff --git a/cli/parser.hxx b/cli/parser.hxx
index 29f4b22..e3b1fee 100644
--- a/cli/parser.hxx
+++ b/cli/parser.hxx
@@ -9,7 +9,8 @@
#include <map>
#include <string>
#include <vector>
-#include <memory> // std::auto_ptr
+#include <memory> // auto_ptr
+#include <cstddef> // size_t
#include <istream>
#include "semantics/elements.hxx"
@@ -43,6 +44,9 @@ private:
decl (token&);
void
+ scope_doc (token&);
+
+ void
namespace_def ();
void
@@ -51,6 +55,9 @@ private:
bool
option_def (token&);
+ std::string
+ doc_string (token&);
+
bool
qualified_name (token&, std::string& name);
@@ -73,6 +80,8 @@ private:
semantics::cli_unit* cur_;
semantics::scope* scope_;
+ std::size_t doc_count_; // Scope doc counter, see scope_doc() for details.
+
typedef std::map<semantics::path, semantics::cli_unit*> include_map;
include_map include_map_;
};