summaryrefslogtreecommitdiff
path: root/xsd/xsd/options-parser.hxx
diff options
context:
space:
mode:
Diffstat (limited to 'xsd/xsd/options-parser.hxx')
-rw-r--r--xsd/xsd/options-parser.hxx30
1 files changed, 30 insertions, 0 deletions
diff --git a/xsd/xsd/options-parser.hxx b/xsd/xsd/options-parser.hxx
new file mode 100644
index 0000000..0f370cd
--- /dev/null
+++ b/xsd/xsd/options-parser.hxx
@@ -0,0 +1,30 @@
+// file : xsd/options-parser.hxx
+// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC
+// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
+
+#ifndef OPTIONS_PARSER_HXX
+#define OPTIONS_PARSER_HXX
+
+#include <types.hxx>
+#include <options.hxx>
+
+namespace cli
+{
+ template <>
+ struct parser<NarrowString>
+ {
+ static void
+ parse (NarrowString& x, bool& xs, scanner& s)
+ {
+ xs = true;
+ const char* o (s.next ());
+
+ if (s.more ())
+ x = s.next ();
+ else
+ throw missing_value (o);
+ }
+ };
+}
+
+#endif // OPTIONS_PARSER_HXX