diff options
Diffstat (limited to 'src/third_party/boost-1.56.0/boost/program_options/detail/parsers.hpp')
-rw-r--r-- | src/third_party/boost-1.56.0/boost/program_options/detail/parsers.hpp | 150 |
1 files changed, 0 insertions, 150 deletions
diff --git a/src/third_party/boost-1.56.0/boost/program_options/detail/parsers.hpp b/src/third_party/boost-1.56.0/boost/program_options/detail/parsers.hpp deleted file mode 100644 index af240c6861c..00000000000 --- a/src/third_party/boost-1.56.0/boost/program_options/detail/parsers.hpp +++ /dev/null @@ -1,150 +0,0 @@ -// 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_PARSERS_HPP_VP_2004_05_06 -#define BOOST_PARSERS_HPP_VP_2004_05_06 - -#include <boost/program_options/detail/convert.hpp> - -#include <iterator> - -namespace boost { namespace program_options { - - namespace detail { - template<class charT, class Iterator> - std::vector<std::basic_string<charT> > - make_vector(Iterator i, Iterator e) - { - std::vector<std::basic_string<charT> > result; - // Some compilers don't have templated constructor for - // vector, so we can't create vector from (argv+1, argv+argc) range - for(; i != e; ++i) - result.push_back(*i); - return result; - } - } - - template<class charT> - basic_command_line_parser<charT>:: - basic_command_line_parser(const std::vector< - std::basic_string<charT> >& xargs) - : detail::cmdline(to_internal(xargs)) - {} - - - template<class charT> - basic_command_line_parser<charT>:: - basic_command_line_parser(int argc, const charT* const argv[]) - : detail::cmdline( - // Explicit template arguments are required by gcc 3.3.1 - // (at least mingw version), and do no harm on other compilers. - to_internal(detail::make_vector<charT, const charT* const*>(argv+1, argv+argc+!argc))) - {} - - - template<class charT> - basic_command_line_parser<charT>& - basic_command_line_parser<charT>::options(const options_description& desc) - { - detail::cmdline::set_options_description(desc); - m_desc = &desc; - return *this; - } - - template<class charT> - basic_command_line_parser<charT>& - basic_command_line_parser<charT>::positional( - const positional_options_description& desc) - { - detail::cmdline::set_positional_options(desc); - return *this; - } - - template<class charT> - basic_command_line_parser<charT>& - basic_command_line_parser<charT>::style(int xstyle) - { - detail::cmdline::style(xstyle); - return *this; - } - - template<class charT> - basic_command_line_parser<charT>& - basic_command_line_parser<charT>::extra_parser(ext_parser ext) - { - detail::cmdline::set_additional_parser(ext); - return *this; - } - - template<class charT> - basic_command_line_parser<charT>& - basic_command_line_parser<charT>::allow_unregistered() - { - detail::cmdline::allow_unregistered(); - return *this; - } - - template<class charT> - basic_command_line_parser<charT>& - basic_command_line_parser<charT>::extra_style_parser(style_parser s) - { - detail::cmdline::extra_style_parser(s); - return *this; - } - - - - template<class charT> - basic_parsed_options<charT> - basic_command_line_parser<charT>::run() - { - // save the canonical prefixes which were used by this cmdline parser - // eventually inside the parsed results - // This will be handy to format recognisable options - // for diagnostic messages if everything blows up much later on - parsed_options result(m_desc, detail::cmdline::get_canonical_option_prefix()); - result.options = detail::cmdline::run(); - - // Presense of parsed_options -> wparsed_options conversion - // does the trick. - return basic_parsed_options<charT>(result); - } - - - template<class charT> - basic_parsed_options<charT> - parse_command_line(int argc, const charT* const argv[], - const options_description& desc, - int style, - function1<std::pair<std::string, std::string>, - const std::string&> ext) - { - return basic_command_line_parser<charT>(argc, argv).options(desc). - style(style).extra_parser(ext).run(); - } - - template<class charT> - std::vector< std::basic_string<charT> > - collect_unrecognized(const std::vector< basic_option<charT> >& options, - enum collect_unrecognized_mode mode) - { - std::vector< std::basic_string<charT> > result; - for(unsigned i = 0; i < options.size(); ++i) - { - if (options[i].unregistered || - (mode == include_positional && options[i].position_key != -1)) - { - copy(options[i].original_tokens.begin(), - options[i].original_tokens.end(), - back_inserter(result)); - } - } - return result; - } - - -}} - -#endif |