Class XorHandler

Class Documentation

class XorHandler

TClap class indirectly used by CmdLine for handling xor’d arguments.

This class handles lists of Arg’s that are to be XOR’d on the command line. This is used by CmdLine and you shouldn’t ever use it.

Public Functions

inline XorHandler()

Constructor. Does nothing.

inline void add(std::vector<Arg*> &ors)

Add a list of Arg*’s that will be orred together.

Parameters:

ors – - list of Arg* that will be xor’d.

inline int check(const Arg *a)

Checks whether the specified Arg is in one of the xor lists and if it does match one, returns the size of the xor list that the Arg matched. If the Arg matches, then it also sets the rest of the Arg’s in the list. You shouldn’t use this.

Parameters:

a – - The Arg to be checked.

std::string shortUsage()

Returns the XOR specific short usage.

void printLongUsage(std::ostream &os)

Prints the XOR specific long usage.

Parameters:

os – - Stream to print to.

inline bool contains(const Arg *a)

Simply checks whether the Arg is contained in one of the arg lists.

Parameters:

a – - The Arg to be checked.

inline std::vector<std::vector<Arg*>> &getXorList()

Protected Attributes

std::vector<std::vector<Arg*>> _orList

The list of of lists of Arg’s to be or’d together.