summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to '3rdParty/Boost/src/boost/program_options/option.hpp')
-rw-r--r--3rdParty/Boost/src/boost/program_options/option.hpp70
1 files changed, 70 insertions, 0 deletions
diff --git a/3rdParty/Boost/src/boost/program_options/option.hpp b/3rdParty/Boost/src/boost/program_options/option.hpp
new file mode 100644
index 0000000..557c692
--- /dev/null
+++ b/3rdParty/Boost/src/boost/program_options/option.hpp
@@ -0,0 +1,70 @@
+// Copyright Vladimir Prus 2004.
+// Distributed under the Boost Software License, Version 1.0.
+// (See accompanying file LICENSE_1_0.txt
+// or copy at http://www.boost.org/LICENSE_1_0.txt)
+
+#ifndef BOOST_OPTION_HPP_VP_2004_02_25
+#define BOOST_OPTION_HPP_VP_2004_02_25
+
+#include <boost/program_options/config.hpp>
+
+#include <string>
+#include <vector>
+
+namespace boost { namespace program_options {
+
+ /** Option found in input source.
+ Contains a key and a value. The key, in turn, can be a string (name of
+ an option), or an integer (position in input source) -- in case no name
+ is specified. The latter is only possible for command line.
+ The template parameter specifies the type of char used for storing the
+ option's value.
+ */
+ template<class charT>
+ class basic_option {
+ public:
+ basic_option()
+ : position_key(-1)
+ , unregistered(false)
+ , case_insensitive(false)
+ {}
+ basic_option(const std::string& string_key,
+ const std::vector< std::string> &value)
+ : string_key(string_key)
+ , value(value)
+ , unregistered(false)
+ , case_insensitive(false)
+ {}
+
+ /** String key of this option. Intentionally independent of the template
+ parameter. */
+ std::string string_key;
+ /** Position key of this option. All options without an explicit name are
+ sequentially numbered starting from 0. If an option has explicit name,
+ 'position_key' is equal to -1. It is possible that both
+ position_key and string_key is specified, in case name is implicitly
+ added.
+ */
+ int position_key;
+ /** Option's value */
+ std::vector< std::basic_string<charT> > value;
+ /** The original unchanged tokens this option was
+ created from. */
+ std::vector< std::basic_string<charT> > original_tokens;
+ /** True if option was not recognized. In that case,
+ 'string_key' and 'value' are results of purely
+ syntactic parsing of source. The original tokens can be
+ recovered from the "original_tokens" member.
+ */
+ bool unregistered;
+ /** True if string_key has to be handled
+ case insensitive.
+ */
+ bool case_insensitive;
+ };
+ typedef basic_option<char> option;
+ typedef basic_option<wchar_t> woption;
+
+}}
+
+#endif