paludis  Version 2.6.0
Classes | Public Member Functions | List of all members
paludis::args::EnumArg Class Reference

#include <args_option.hh>

+ Inheritance diagram for paludis::args::EnumArg:

Classes

class  EnumArgOptions
 

Public Member Functions

 EnumArg (ArgsGroup *const group, const std::string &long_name, const char short_name, const std::string &description, const EnumArgOptions &opts, const std::string &default_arg)
 
const std::string & argument () const
 
void set_argument (const std::string &arg)
 
void set_default_arg (const std::string &arg)
 
const std::string & default_arg () const
 
virtual bool can_be_negated () const
 
virtual const std::string forwardable_string () const PALUDIS_ATTRIBUTE((warn_unused_result))
 
virtual const std::shared_ptr< Sequence< std::string > > forwardable_args () const PALUDIS_ATTRIBUTE((warn_unused_result))
 
- Public Member Functions inherited from paludis::args::ArgsOption
void remove ()
 
const std::string & long_name () const
 
char short_name () const
 
const std::string & description () const
 
virtual bool specified () const
 
virtual bool explicitly_specified () const
 
virtual void set_specified (const ArgsOptionSpecifiedness value)
 
ArgsGroupgroup ()
 
- Public Member Functions inherited from paludis::DeclareAbstractAcceptMethods< ArgsOption, MakeTypeList< StringArg, AliasArg, SwitchArg, IntegerArg, EnumArg, StringSetArg, StringSequenceArg >::Type >
void accept (UnwrappedVisitor_ &v)
 
void accept (UnwrappedVisitor_ &v) const
 
void accept (const UnwrappedVisitor_ &v)
 
void accept (const UnwrappedVisitor_ &v) const
 
Result_ accept_returning (UnwrappedVisitor_ &v, const Result_ &r=Result_())
 
Result_ accept_returning (const UnwrappedVisitor_ &v, const Result_ &r=Result_())
 
Result_ accept_returning (UnwrappedVisitor_ &v, const Result_ &r=Result_()) const
 
Result_ accept_returning (const UnwrappedVisitor_ &v, const Result_ &r=Result_()) const
 
auto make_accept_returning (const Case_ &firstcase, const Cases_ &...cases) const -> CallResultType< Case_ >
 
void make_accept (const Cases_ &...cases) const
 
- Public Member Functions inherited from paludis::DeclareAbstractAcceptMethods< ArgsOption, ArgsOption::VisitableTypeList >
void accept (UnwrappedVisitor_ &v)
 
void accept (UnwrappedVisitor_ &v) const
 
void accept (const UnwrappedVisitor_ &v)
 
void accept (const UnwrappedVisitor_ &v) const
 
Result_ accept_returning (UnwrappedVisitor_ &v, const Result_ &r=Result_())
 
Result_ accept_returning (const UnwrappedVisitor_ &v, const Result_ &r=Result_())
 
Result_ accept_returning (UnwrappedVisitor_ &v, const Result_ &r=Result_()) const
 
Result_ accept_returning (const UnwrappedVisitor_ &v, const Result_ &r=Result_()) const
 
auto make_accept_returning (const Case_ &firstcase, const Cases_ &...cases) const -> CallResultType< Case_ >
 
void make_accept (const Cases_ &...cases) const
 

Iterate over our allowed arguments and associated descriptions

typedef WrappedForwardIterator< AllowedArgConstIteratorTag, const AllowedEnumArgAllowedArgConstIterator
 
AllowedArgConstIterator begin_allowed_args () const
 
AllowedArgConstIterator end_allowed_args () const
 

Additional Inherited Members

- Public Types inherited from paludis::DeclareAbstractAcceptMethods< ArgsOption, MakeTypeList< StringArg, AliasArg, SwitchArg, IntegerArg, EnumArg, StringSetArg, StringSequenceArg >::Type >
typedef MakeTypeList< StringArg, AliasArg, SwitchArg, IntegerArg, EnumArg, StringSetArg, StringSequenceArg >::Type VisitableTypeList
 
typedef ArgsOption VisitableBaseClass
 
- Public Types inherited from paludis::DeclareAbstractAcceptMethods< ArgsOption, ArgsOption::VisitableTypeList >
typedef ArgsOption::VisitableTypeList VisitableTypeList
 
typedef ArgsOption VisitableBaseClass
 
- Protected Member Functions inherited from paludis::args::ArgsOption
 ArgsOption (ArgsGroup *const, const std::string &long_name, const char short_name, const std::string &description)
 
virtual ~ArgsOption ()
 

Detailed Description

An option that takes one of a predefined set of string arguments.

Constructor & Destructor Documentation

paludis::args::EnumArg::EnumArg ( ArgsGroup *const  group,
const std::string &  long_name,
const char  short_name,
const std::string &  description,
const EnumArgOptions opts,
const std::string &  default_arg 
)

Constructor.

Member Function Documentation

const std::string& paludis::args::EnumArg::argument ( ) const
inline

Fetch the argument that was given to this option.

virtual bool paludis::args::EnumArg::can_be_negated ( ) const
virtual

Can we be negated?

Needs to match up with ArgsVisitor logic.

Implements paludis::args::ArgsOption.

const std::string& paludis::args::EnumArg::default_arg ( ) const
inline

Fetch the default option, as specified to the constructor or set_default_arg().

References PALUDIS_ATTRIBUTE, and PALUDIS_VISIBLE.

virtual const std::shared_ptr<Sequence<std::string> > paludis::args::EnumArg::forwardable_args ( ) const
virtual

Ourself as a sequence of strings.

For example, { '–foo', 'bar' } or { '–foo', 'bar', '–foo', 'baz' } if not specified, an empty sequence.

Since
0.46

Implements paludis::args::ArgsOption.

virtual const std::string paludis::args::EnumArg::forwardable_string ( ) const
virtual

Ourself as a forwardable string.

For example, '–foo bar' or '–foo bar –foo baz' or '–foo', or if not specified, the empty string.

Since
0.40

Implements paludis::args::ArgsOption.

void paludis::args::EnumArg::set_argument ( const std::string &  arg)

Set the argument returned by argument(), having verified that it is one of the arguments allowed for this option.

void paludis::args::EnumArg::set_default_arg ( const std::string &  arg)

Change the default option (should be called before set_argument()).


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