args  6.2.0
A simple single-header C++11 STL-only argument parser library
Public Types | Public Member Functions | Protected Member Functions | List of all members
args::MapPositionalList< K, T, List, Reader, Map > Class Template Reference

A positional argument mapping list class. More...

#include <args.hxx>

Inheritance diagram for args::MapPositionalList< K, T, List, Reader, Map >:
args::PositionalBase args::NamedBase args::Base

Public Types

typedef T value_type
 
typedef Container::allocator_type allocator_type
 
typedef Container::pointer pointer
 
typedef Container::const_pointer const_pointer
 
typedef T & reference
 
typedef const T & const_reference
 
typedef Container::size_type size_type
 
typedef Container::difference_type difference_type
 
typedef Container::iterator iterator
 
typedef Container::const_iterator const_iterator
 
typedef std::reverse_iterator< iterator > reverse_iterator
 
typedef std::reverse_iterator< const_iterator > const_reverse_iterator
 

Public Member Functions

 MapPositionalList (Group &group_, const std::string &name_, const std::string &help_, const Map< K, T > &map_, const Container &defaultValues_=Container(), Options options_={})
 
virtual void ParseValue (const std::string &value_) override
 
Container & Get () noexcept
 Get the value.
 
virtual std::string Name () const override
 
virtual void Reset () noexcept override
 
virtual PositionalBaseGetNextPositional () override
 
iterator begin () noexcept
 
const_iterator begin () const noexcept
 
const_iterator cbegin () const noexcept
 
iterator end () noexcept
 
const_iterator end () const noexcept
 
const_iterator cend () const noexcept
 
- Public Member Functions inherited from args::PositionalBase
 PositionalBase (const std::string &name_, const std::string &help_, Options options_={})
 
bool Ready ()
 
virtual bool HasPositional () const override
 
virtual std::vector< std::string > GetProgramLine (const HelpParams &params) const override
 
virtual void Validate (const std::string &, const std::string &) const override
 
- Public Member Functions inherited from args::NamedBase
 NamedBase (const std::string &name_, const std::string &help_, Options options_={})
 
void HelpDefault (const std::string &str)
 Sets default value string that will be added to argument description. More...
 
std::string HelpDefault (const HelpParams &params) const
 Gets default value string that will be added to argument description.
 
void HelpChoices (const std::vector< std::string > &array)
 Sets choices strings that will be added to argument description. More...
 
std::vector< std::string > HelpChoices (const HelpParams &params) const
 Gets choices strings that will be added to argument description.
 
virtual std::vector< std::tuple< std::string, std::string, unsigned > > GetDescription (const HelpParams &params, const unsigned indentLevel) const override
 
- Public Member Functions inherited from args::Base
 Base (const std::string &help_, Options options_={})
 
Options GetOptions () const noexcept
 
bool IsRequired () const noexcept
 
virtual bool Matched () const noexcept
 
 operator bool () const noexcept
 
virtual std::vector< Command * > GetCommands ()
 
virtual bool IsGroup () const
 
virtual FlagBaseMatch (const EitherFlag &)
 
virtual std::vector< FlagBase * > GetAllFlags ()
 
virtual bool HasFlag () const
 
virtual bool HasCommand () const
 
void KickOut (bool kickout_) noexcept
 Sets a kick-out value for building subparsers.
 
bool KickOut () const noexcept
 Gets the kick-out value for building subparsers.
 

Protected Member Functions

virtual std::vector< std::string > GetChoicesStrings (const HelpParams &) const override
 
- Protected Member Functions inherited from args::NamedBase
virtual std::string GetDefaultString (const HelpParams &) const
 
virtual std::string GetNameString (const HelpParams &) const
 
void AddDescriptionPostfix (std::string &dest, const bool isManual, const std::string &manual, bool isGenerated, const std::string &generated, const std::string &str) const
 

Additional Inherited Members

- Protected Attributes inherited from args::PositionalBase
bool ready
 
- Protected Attributes inherited from args::NamedBase
const std::string name
 
bool kickout = false
 
std::string defaultString
 
bool defaultStringManual = false
 
std::vector< std::string > choicesStrings
 
bool choicesStringManual = false
 
- Protected Attributes inherited from args::Base
bool matched = false
 
const std::string help
 

Detailed Description

template<typename K, typename T, template< typename... > class List = detail::vector, typename Reader = ValueReader, template< typename... > class Map = detail::unordered_map>
class args::MapPositionalList< K, T, List, Reader, Map >

A positional argument mapping list class.

Template Parameters
Kthe type to extract the argument as
Tthe type to store the result as
Listthe list type that houses the values
ReaderThe functor type used to read the argument, taking the name, value, and destination reference with operator(), and returning a bool (if ARGS_NOEXCEPT is defined)
MapThe Map type. Should operate like std::map or std::unordered_map

The documentation for this class was generated from the following file: