Boost C++ Libraries of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards


Class value_semantic_codecvt_helper<char>



// In header: <boost/program_options/value_semantic.hpp>

class value_semantic_codecvt_helper<char> :
  public boost::program_options::value_semantic

  // private member functions
  virtual void 
  parse(boost::any &, const std::vector< std::string > &, bool) const;

  // protected member functions
  virtual void 
  xparse(boost::any &, const std::vector< std::string > &) const = 0;


Helper conversion class for values that accept ascii strings as input. Overrides the 'parse' method and defines new 'xparse' method taking std::string. Depending on whether input to parse is ascii or UTF8, will pass it to xparse unmodified, or with UTF8->ascii conversion.

value_semantic_codecvt_helper private member functions

  1. virtual void 
    parse(boost::any & value_store, const std::vector< std::string > & new_tokens, 
          bool utf8) const;

    Parses a group of tokens that specify a value of option. Stores the result in 'value_store', using whatever representation is desired. May be be called several times if value of the same option is specified more than once.

value_semantic_codecvt_helper protected member functions

  1. virtual void 
    xparse(boost::any & value_store, 
           const std::vector< std::string > & new_tokens) const = 0;