libUTL++
|
Parse command-line arguments. More...
#include <CmdLineArgs.h>
Public Member Functions | |
CmdLineArgs (int argc, char **argv) | |
Constructor. More... | |
CmdLineArgs (const Array &args) | |
Constructor. More... | |
void | clear () |
See Object::clear. More... | |
const TArray< String > & | getArray () const |
Get the argument array. More... | |
size_t | idx () const |
Return the index of the first non-switch argument. More... | |
bool | isSet (const String &sw, String *val=nullptr, size_t *swIdx=nullptr) |
Determine whether a switch was given. More... | |
bool | isOwner () const |
Get the ownership flag. More... | |
void | setOwner (bool owner) |
Set the ownership flag. More... | |
size_t | items () const |
Return the number of arguments. More... | |
bool | ok () const |
Determine whether any unknown switches were given. More... | |
void | parse (int argc, char **argv) |
Parse the given arguments. More... | |
void | parse (const Array &args) |
Parse the given arguments. More... | |
bool | printErrors (Stream &os, const String *prefix=nullptr) |
Print unknown switches to the given stream. More... | |
const String * | operator[] (size_t idx) const |
Return the argument at the given index. More... | |
const String * | operator[] (int idx) const |
Same as above, but takes a signed argument. More... | |
const String & | operator() (size_t idx) const |
Return the argument at the given index. More... | |
const String & | operator() (int idx) const |
Same as above, but takes a signed argument. More... | |
Public Member Functions inherited from utl::Object | |
void | clear () |
Revert to initial state. More... | |
virtual int | compare (const Object &rhs) const |
Compare with another object. More... | |
virtual void | copy (const Object &rhs) |
Copy another instance. More... | |
virtual void | vclone (const Object &rhs) |
Make an exact copy of another instance. More... | |
virtual void | steal (Object &rhs) |
"Steal" the internal representation from another instance. More... | |
virtual void | dump (Stream &os, uint_t level=uint_t_max) const |
Dump a human-readable representation of self to the given output stream. More... | |
void | dumpWithClassName (Stream &os, uint_t indent=4, uint_t level=uint_t_max) const |
Front-end for dump() that prints the object's class name. More... | |
virtual const Object & | getKey () const |
Get the key for this object. More... | |
bool | hasKey () const |
Determine whether or not the object has a key. More... | |
virtual const Object & | getProxiedObject () const |
Get the proxied object (= self if none). More... | |
virtual Object & | getProxiedObject () |
Get the proxied object (= self if none). More... | |
virtual size_t | hash (size_t size) const |
Get the hash code for the object. More... | |
bool | _isA (const RunTimeClass *runTimeClass) const |
Determine whether self's class is a descendent of the given class. More... | |
virtual String | toString () const |
Return a string representation of self. More... | |
operator String () const | |
Conversion to String. More... | |
size_t | allocatedSize () const |
Get the total allocated size of this object. More... | |
virtual size_t | innerAllocatedSize () const |
Get the "inner" allocated size. More... | |
virtual void | addOwnedIt (const class FwdIt *it) const |
Notify self that it owns the given iterator. More... | |
virtual void | removeOwnedIt (const class FwdIt *it) const |
Notify self that the given owned iterator has been destroyed. More... | |
bool | operator< (const Object &rhs) const |
Less-than operator. More... | |
bool | operator<= (const Object &rhs) const |
Less-than-or-equal-to operator. More... | |
bool | operator> (const Object &rhs) const |
Greater-than operator. More... | |
bool | operator>= (const Object &rhs) const |
Greater-than-or-equal-to operator. More... | |
bool | operator== (const Object &rhs) const |
Equal-to operator. More... | |
bool | operator!= (const Object &rhs) const |
Unequal-to operator. More... | |
void | serializeIn (Stream &is, uint_t mode=ser_default) |
Serialize from an input stream. More... | |
void | serializeOut (Stream &os, uint_t mode=ser_default) const |
Serialize to an output stream. More... | |
virtual void | serialize (Stream &stream, uint_t io, uint_t mode=ser_default) |
Serialize to or from a stream. More... | |
void | serializeOutBoxed (Stream &os, uint_t mode=ser_default) const |
Serialize a boxed object to an output stream. More... | |
Additional Inherited Members | |
Static Public Member Functions inherited from utl::Object | |
static Object * | serializeInNullable (Stream &is, uint_t mode=ser_default) |
Serialize a nullptr-able object from an input stream. More... | |
static void | serializeOutNullable (const Object *object, Stream &os, uint_t mode=ser_default) |
Serialize a nullptr-able object to an output stream. More... | |
static void | serializeNullable (Object *&object, Stream &stream, uint_t io, uint_t mode=ser_default) |
Serialize a nullptr-able object to or from a stream. More... | |
static Object * | serializeInBoxed (Stream &is, uint_t mode=ser_default) |
Serialize a boxed object from an input stream. More... | |
static void | serializeBoxed (Object *&object, Stream &stream, uint_t io, uint_t mode=ser_default) |
Serialize a boxed object to or from a stream. More... | |
Protected Member Functions inherited from utl::FlagsMI | |
FlagsMI () | |
Constructor. More... | |
virtual | ~FlagsMI () |
Destructor. More... | |
void | copyFlags (const FlagsMI &rhs) |
Copy the given flags. More... | |
void | copyFlags (const FlagsMI &rhs, uint_t lsb, uint_t msb) |
Copy (some of) the given flags. More... | |
void | copyFlags (uint64_t flags, uint_t lsb, uint_t msb) |
Copy (some of) the given flags. More... | |
bool | getFlag (uint_t flagNum) const |
Get a user-defined flag. More... | |
void | setFlag (uint_t flagNum, bool val) |
Set a user-defined flag. More... | |
uint64_t | getFlagsNumber (uint64_t mask, uint64_t shift=0) |
Get a multi-bit value in the flags data (which is stored as one 64-bit integer). More... | |
void | setFlagsNumber (uint64_t mask, uint64_t shift, uint64_t num) |
Set a multi-bit value in the flags data (which is stored as one 64-bit integer). More... | |
uint64_t | getFlags () const |
Get the flags. More... | |
void | setFlags (uint64_t flags) |
Set the flags. More... | |
Parse command-line arguments.
CmdLineArgs simplifies the task of parsing command-line arguments. It can accept one-character switches (e.g. -q) as well as long switches (e.g. –quiet). It can also recognize and report any unknown switches that were given.
Definition at line 32 of file CmdLineArgs.h.
|
inline |
Constructor.
Invokes parse() for the given arguments.
argc | number of arguments (as in main()) |
argv | array of arguments (as in main()) |
Definition at line 42 of file CmdLineArgs.h.
References utl::init().
|
inline |
Constructor.
Invokes parse() for the given arguments.
Definition at line 51 of file CmdLineArgs.h.
References utl::init().
void utl::CmdLineArgs::clear | ( | ) |
See Object::clear.
Get the argument array.
Definition at line 61 of file CmdLineArgs.h.
|
inline |
Return the index of the first non-switch argument.
Definition at line 68 of file CmdLineArgs.h.
bool utl::CmdLineArgs::isSet | ( | const String & | sw, |
String * | val = nullptr , |
||
size_t * | swIdx = nullptr |
||
) |
Determine whether a switch was given.
sw | switch to test for |
val | (optional) value which was given for the switch |
swIdx | (optional) index of argument where switch was found |
|
inline |
Get the ownership flag.
Definition at line 84 of file CmdLineArgs.h.
|
inline |
Set the ownership flag.
Definition at line 91 of file CmdLineArgs.h.
|
inline |
Return the number of arguments.
Definition at line 98 of file CmdLineArgs.h.
|
inline |
Determine whether any unknown switches were given.
This method must be called after isSet() has been called for each known switch.
Definition at line 108 of file CmdLineArgs.h.
void utl::CmdLineArgs::parse | ( | int | argc, |
char ** | argv | ||
) |
Parse the given arguments.
argc | number of arguments (as in main()) |
argv | array of arguments (as in main()) |
void utl::CmdLineArgs::parse | ( | const Array & | args | ) |
Print unknown switches to the given stream.
os | stream to print errors to |
prefix | prefix for each error report |
|
inline |
Return the argument at the given index.
Definition at line 138 of file CmdLineArgs.h.
|
inline |
Same as above, but takes a signed argument.
Definition at line 144 of file CmdLineArgs.h.
|
inline |
Return the argument at the given index.
Definition at line 153 of file CmdLineArgs.h.
|
inline |
Same as above, but takes a signed argument.
Definition at line 159 of file CmdLineArgs.h.
References utl::deInit(), and utl::init().