Holds a list of command-line arguments, and provides useful methods for searching and operating on them. More...
#include <juce_ConsoleApplication.h>
Classes | |
struct | Argument |
One of the arguments in an ArgumentList. More... | |
Public Member Functions | |
ArgumentList (const ArgumentList &)=default | |
ArgumentList (const String &executable, const String &arguments) | |
Tokenises a string containing all the arguments to create an argument list. More... | |
ArgumentList (int argc, char *argv[]) | |
Parses a standard argv/argc pair to create an argument list. More... | |
ArgumentList (String executable, StringArray arguments) | |
Creates an argument list for a given executable. More... | |
void | checkMinNumArguments (int expectedMinNumberOfArgs) const |
Throws an error unless there are at least the given number of arguments. More... | |
bool | containsOption (StringRef option) const |
Returns true if the given string matches one of the arguments. More... | |
void | failIfOptionIsMissing (StringRef option) const |
Throws an error unless the given option is found in the argument list. More... | |
File | getExistingFileForOption (StringRef option) const |
Looks for a file argument using getFileForOption() and fails with a suitable error if the file doesn't exist. More... | |
File | getExistingFileForOptionAndRemove (StringRef option) |
Looks for a file argument using getFileForOption() and fails with a suitable error if the file doesn't exist. More... | |
File | getExistingFolderForOption (StringRef option) const |
Looks for a filename argument using getFileForOption() and fails with a suitable error if the file isn't a folder that exists. More... | |
File | getExistingFolderForOptionAndRemove (StringRef option) |
Looks for a filename argument using getFileForOption() and fails with a suitable error if the file isn't a folder that exists. More... | |
File | getFileForOption (StringRef option) const |
Looks for the value of argument using getValueForOption() and tries to parse that value as a file. More... | |
File | getFileForOptionAndRemove (StringRef option) |
Looks for the value of argument using getValueForOption() and tries to parse that value as a file. More... | |
String | getValueForOption (StringRef option) const |
Looks for a given argument and returns either its assigned value (for long options) or the string that follows it (for short options). More... | |
int | indexOfOption (StringRef option) const |
Returns the index of the given string if it matches one of the arguments, or -1 if it doesn't. More... | |
ArgumentList & | operator= (const ArgumentList &)=default |
Argument | operator[] (int index) const |
Returns one of the arguments. More... | |
bool | removeOptionIfFound (StringRef option) |
Returns true if the given string matches one of the arguments, and also removes the argument from the list if found. More... | |
String | removeValueForOption (StringRef option) |
Looks for a given argument and returns either its assigned value (for long options) or the string that follows it (for short options). More... | |
int | size () const |
Returns the number of arguments in the list. More... | |
Public Attributes | |
Array< Argument > | arguments |
The list of arguments (not including the name of the executable that was invoked). More... | |
String | executableName |
The name or path of the executable that was invoked, as it was specified on the command-line. More... | |
Holds a list of command-line arguments, and provides useful methods for searching and operating on them.
You can create an ArgumentList manually, or give it some argv/argc values from a main() function to parse.
@tags{Core}
juce::ArgumentList::ArgumentList | ( | String | executable, |
StringArray | arguments | ||
) |
Creates an argument list for a given executable.
juce::ArgumentList::ArgumentList | ( | int | argc, |
char * | argv[] | ||
) |
Parses a standard argv/argc pair to create an argument list.
Tokenises a string containing all the arguments to create an argument list.
|
default |
void juce::ArgumentList::checkMinNumArguments | ( | int | expectedMinNumberOfArgs | ) | const |
Throws an error unless there are at least the given number of arguments.
Returns true if the given string matches one of the arguments.
The option can also be a list of different versions separated by pipes, e.g. "--help|-h"
void juce::ArgumentList::failIfOptionIsMissing | ( | StringRef | option | ) | const |
Throws an error unless the given option is found in the argument list.
Looks for a file argument using getFileForOption() and fails with a suitable error if the file doesn't exist.
Looks for a file argument using getFileForOption() and fails with a suitable error if the file doesn't exist.
This works like getExistingFileForOption() but also removes the option argument (and any value arguments) from the list if they are found.
Looks for a filename argument using getFileForOption() and fails with a suitable error if the file isn't a folder that exists.
Looks for a filename argument using getFileForOption() and fails with a suitable error if the file isn't a folder that exists.
This works like getExistingFolderForOption() but also removes the option argument (and any value arguments) from the list if they are found.
Looks for the value of argument using getValueForOption() and tries to parse that value as a file.
If the option isn't found, or if the value can't be parsed as a filename, it will throw an error.
Looks for the value of argument using getValueForOption() and tries to parse that value as a file.
This works like getFileForOption() but also removes the option argument (and any value arguments) from the list if they are found.
Looks for a given argument and returns either its assigned value (for long options) or the string that follows it (for short options).
The option can also be a list of different versions separated by pipes, e.g. "--help|-h" If it finds a long option, it will look for an assignment with a '=' sign, e.g. "--file=foo.txt", and will return the string following the '='. If there's no '=', it will return an empty string. If it finds a short option, it will attempt to return the argument that follows it, unless it's another option. If the argument isn't found, this returns an empty string.
Returns the index of the given string if it matches one of the arguments, or -1 if it doesn't.
The option can also be a list of different versions separated by pipes, e.g. "--help|-h"
|
default |
Returns true if the given string matches one of the arguments, and also removes the argument from the list if found.
The option can also be a list of different versions separated by pipes, e.g. "--help|-h"
Looks for a given argument and returns either its assigned value (for long options) or the string that follows it (for short options).
This works like getValueForOption() but also removes the option argument (and any value arguments) from the list if they are found.
int juce::ArgumentList::size | ( | ) | const |
Returns the number of arguments in the list.
The list of arguments (not including the name of the executable that was invoked).
String juce::ArgumentList::executableName |
The name or path of the executable that was invoked, as it was specified on the command-line.