UCommon
ucommon::shell::flagopt Class Reference

Flag option for shell parsing. More...

#include <shell.h>

Inheritance diagram for ucommon::shell::flagopt:
[legend]
Collaboration diagram for ucommon::shell::flagopt:
[legend]

Public Member Functions

 flagopt (char short_option, const char *long_option=NULL, const char *help=NULL, bool single_use=true)
 operator bool () const
 operator unsigned () const
bool operator! () const
unsigned operator* () const
flagoptoperator= (unsigned value)
void set (unsigned value=1)
Public Member Functions inherited from ucommon::shell::Option
void disable (void)
 Disable a option.
 Option (char short_option=0, const char *long_option=NULL, const char *value_type=NULL, const char *help=NULL)
 Construct a shell parser option.
Public Member Functions inherited from ucommon::LinkedObject
void delist (LinkedObject **root)
 Locate and remove ourselves from a list of objects.
void enlist (LinkedObject **root)
 Add our object to an existing linked list through a pointer.
LinkedObjectgetNext (void) const
 Get next effective object when iterating.
bool is_member (LinkedObject *list) const
 Search to see if we are a member of a specific list.
virtual void release (void)
 Release list, mark as no longer linked.
virtual void retain (void)
 Retain by marking as self referenced list.
Public Member Functions inherited from ucommon::ObjectProtocol
ObjectProtocolcopy (void)
 Retain (increase retention of) object when copying.
void operator++ (void)
 Increase retention operator.
void operator-- (void)
 Decrease retention operator.
virtual ~ObjectProtocol ()
 Required virtual destructor.

Additional Inherited Members

Static Public Member Functions inherited from ucommon::shell::Option
static LinkedObjectfirst (void)
static void reset (void)
Static Public Member Functions inherited from ucommon::LinkedObject
static unsigned count (const LinkedObject *root)
 Count the number of linked objects in a list.
static LinkedObjectgetIndexed (LinkedObject *root, unsigned index)
 Get member by index.
static void purge (LinkedObject *root)
 Release all objects from a list.
Data Fields inherited from ucommon::shell::Option
const char * help_string
const char * long_option
char short_option
bool trigger_option
const char * uses_option
Protected Member Functions inherited from ucommon::LinkedObject
 LinkedObject ()
 Construct base class unattached to anyone.
 LinkedObject (const LinkedObject &from)
 LinkedObject (LinkedObject **root)
 Construct base class attached to a chain of objects.
Protected Attributes inherited from ucommon::LinkedObject
LinkedObjectNext

Detailed Description

Flag option for shell parsing.

This offers a quick-use class to parse a shell flag, along with a counter for how many times the flag was selected. The counter might be used for -vvvv style verbose options, for example.

Author
David Sugar dyfet.nosp@m.@gnu.nosp@m.telep.nosp@m.hony.nosp@m..org
Examples
shell.cpp.

Definition at line 234 of file shell.h.

Member Function Documentation

◆ operator bool()

ucommon::shell::flagopt::operator bool ( ) const
inline

Definition at line 247 of file shell.h.

◆ operator unsigned()

ucommon::shell::flagopt::operator unsigned ( ) const
inline

Definition at line 255 of file shell.h.

◆ operator!()

bool ucommon::shell::flagopt::operator! ( ) const
inline

Definition at line 251 of file shell.h.

◆ operator*()

unsigned ucommon::shell::flagopt::operator* ( ) const
inline

Definition at line 259 of file shell.h.

◆ operator=()

flagopt & ucommon::shell::flagopt::operator= ( unsigned value)
inline

Definition at line 267 of file shell.h.

◆ set()

void ucommon::shell::flagopt::set ( unsigned value = 1)
inline

Definition at line 263 of file shell.h.


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