aboutsummaryrefslogtreecommitdiff
path: root/libbutl/manifest-parser.ixx
diff options
context:
space:
mode:
Diffstat (limited to 'libbutl/manifest-parser.ixx')
-rw-r--r--libbutl/manifest-parser.ixx31
1 files changed, 31 insertions, 0 deletions
diff --git a/libbutl/manifest-parser.ixx b/libbutl/manifest-parser.ixx
index e616ad9..bc5246c 100644
--- a/libbutl/manifest-parser.ixx
+++ b/libbutl/manifest-parser.ixx
@@ -3,6 +3,37 @@
namespace butl
{
+
+ inline auto manifest_parser::
+ get (const char* what) -> xchar
+ {
+ xchar c (base::get (ebuf_));
+
+ if (invalid (c))
+ throw manifest_parsing (name_,
+ c.line, c.column,
+ std::string ("invalid ") + what + ": " + ebuf_);
+ return c;
+ }
+
+ inline void manifest_parser::
+ get (const xchar& peeked)
+ {
+ base::get (peeked);
+ }
+
+ inline auto manifest_parser::
+ peek (const char* what) -> xchar
+ {
+ xchar c (base::peek (ebuf_));
+
+ if (invalid (c))
+ throw manifest_parsing (name_,
+ c.line, c.column,
+ std::string ("invalid ") + what + ": " + ebuf_);
+ return c;
+ }
+
inline manifest_name_value manifest_parser::
next ()
{