Tizen Native API
5.0
|
This group contains powerful getopt replacement.
This replacement handles both short (-X) or long options (--ABC) options, with various actions supported, like storing one value and already converting to required type, counting number of occurrences, setting true or false values, show help, license, copyright and even support user-defined callbacks.
It is provided a set of C Pre Processor macros so definition is straightforward.
Values will be stored elsewhere indicated by an array of pointers to values, it is given in separate to parser description so you can use multiple values with the same parser.
Functions | |
void | ecore_getopt_help (FILE *fp, const Ecore_Getopt *info) |
Eina_Bool | ecore_getopt_help_category (FILE *fp, const Ecore_Getopt *info, const char *category) |
Eina_Bool | ecore_getopt_parser_has_duplicates (const Ecore_Getopt *parser) |
int | ecore_getopt_parse (const Ecore_Getopt *parser, Ecore_Getopt_Value *values, int argc, char **argv) |
int | ecore_getopt_parse_positional (const Ecore_Getopt *parser, Ecore_Getopt_Value *values, int argc, char **argv, int start) |
Eina_List * | ecore_getopt_list_free (Eina_List *list) |
Eina_Bool | ecore_getopt_callback_geometry_parse (const Ecore_Getopt *parser, const Ecore_Getopt_Desc *desc, const char *str, void *data, Ecore_Getopt_Value *storage) |
Eina_Bool | ecore_getopt_callback_size_parse (const Ecore_Getopt *parser, const Ecore_Getopt_Desc *desc, const char *str, void *data, Ecore_Getopt_Value *storage) |
Defines | |
#define | ECORE_GETOPT_STORE_FULL(shortname, longname, help, metavar, type, arg_requirement, default_value) |
Definition for macro that helps to fill the Ecore_Getopt_Desc table. | |
#define | ECORE_GETOPT_STORE(shortname, longname, help, type) |
Definition for macro that fills an option in Ecore_Getopt_Desc table. | |
#define | ECORE_GETOPT_STORE_STR(shortname, longname, help) ECORE_GETOPT_STORE(shortname, longname, help, ECORE_GETOPT_TYPE_STR) |
Definition for macro that fill Ecore_Getopt_Desc table with an option of type string. | |
#define | ECORE_GETOPT_STORE_BOOL(shortname, longname, help) ECORE_GETOPT_STORE(shortname, longname, help, ECORE_GETOPT_TYPE_BOOL) |
Definition for macro that fill Ecore_Getopt_Desc table with an option of type boolean. | |
#define | ECORE_GETOPT_STORE_SHORT(shortname, longname, help) ECORE_GETOPT_STORE(shortname, longname, help, ECORE_GETOPT_TYPE_SHORT) |
Definition for macro that fill Ecore_Getopt_Desc table with an option of type short. | |
#define | ECORE_GETOPT_STORE_INT(shortname, longname, help) ECORE_GETOPT_STORE(shortname, longname, help, ECORE_GETOPT_TYPE_INT) |
Definition for macro that fill Ecore_Getopt_Desc table with an option of type int. | |
#define | ECORE_GETOPT_STORE_LONG(shortname, longname, help) ECORE_GETOPT_STORE(shortname, longname, help, ECORE_GETOPT_TYPE_LONG) |
Definition for macro that fill Ecore_Getopt_Desc table with an option of type long. | |
#define | ECORE_GETOPT_STORE_USHORT(shortname, longname, help) ECORE_GETOPT_STORE(shortname, longname, help, ECORE_GETOPT_TYPE_USHORT) |
Definition for macro that fill Ecore_Getopt_Desc table with an option of type ushort. | |
#define | ECORE_GETOPT_STORE_UINT(shortname, longname, help) ECORE_GETOPT_STORE(shortname, longname, help, ECORE_GETOPT_TYPE_UINT) |
Definition for macro that fill Ecore_Getopt_Desc table with an option of type uint. | |
#define | ECORE_GETOPT_STORE_ULONG(shortname, longname, help) ECORE_GETOPT_STORE(shortname, longname, help, ECORE_GETOPT_TYPE_ULONG) |
Definition for macro that fill Ecore_Getopt_Desc table with an option of type ulong. | |
#define | ECORE_GETOPT_STORE_DOUBLE(shortname, longname, help) ECORE_GETOPT_STORE(shortname, longname, help, ECORE_GETOPT_TYPE_DOUBLE) |
Definition for macro that fill Ecore_Getopt_Desc table with an option of type double. | |
#define | ECORE_GETOPT_STORE_METAVAR(shortname, longname, help, metavar, type) |
#define | ECORE_GETOPT_STORE_METAVAR_STR(shortname, longname, help, metavar) ECORE_GETOPT_STORE_METAVAR(shortname, longname, help, metavar, ECORE_GETOPT_TYPE_STR) |
Definition for filling Ecore_Getopt_Desc table with an option of type string and metavar. | |
#define | ECORE_GETOPT_STORE_METAVAR_BOOL(shortname, longname, help, metavar) ECORE_GETOPT_STORE_METAVAR(shortname, longname, help, metavar, ECORE_GETOPT_TYPE_BOOL) |
Definition for filling Ecore_Getopt_Desc table with an option of type boolean and metavar. | |
#define | ECORE_GETOPT_STORE_METAVAR_SHORT(shortname, longname, help, metavar) ECORE_GETOPT_STORE_METAVAR(shortname, longname, help, metavar, ECORE_GETOPT_TYPE_SHORT) |
Definition for filling Ecore_Getopt_Desc table with an option of type short and metavar. | |
#define | ECORE_GETOPT_STORE_METAVAR_INT(shortname, longname, help, metavar) ECORE_GETOPT_STORE_METAVAR(shortname, longname, help, metavar, ECORE_GETOPT_TYPE_INT) |
Definition for filling Ecore_Getopt_Desc table with an option of type int and metavar. | |
#define | ECORE_GETOPT_STORE_METAVAR_LONG(shortname, longname, help, metavar) ECORE_GETOPT_STORE_METAVAR(shortname, longname, help, metavar, ECORE_GETOPT_TYPE_LONG) |
Definition for filling Ecore_Getopt_Desc table with an option of type long and metavar. | |
#define | ECORE_GETOPT_STORE_METAVAR_USHORT(shortname, longname, help, metavar) ECORE_GETOPT_STORE_METAVAR(shortname, longname, help, metavar, ECORE_GETOPT_TYPE_USHORT) |
Definition for filling Ecore_Getopt_Desc table with an option of type unsigned short and metavar. | |
#define | ECORE_GETOPT_STORE_METAVAR_UINT(shortname, longname, help, metavar) ECORE_GETOPT_STORE_METAVAR(shortname, longname, help, metavar, ECORE_GETOPT_TYPE_UINT) |
Definition for filling Ecore_Getopt_Desc table with an option of type unsigned int and metavar. | |
#define | ECORE_GETOPT_STORE_METAVAR_ULONG(shortname, longname, help, metavar) ECORE_GETOPT_STORE_METAVAR(shortname, longname, help, metavar, ECORE_GETOPT_TYPE_ULONG) |
Definition for filling Ecore_Getopt_Desc table with an option of type unsigned long and metavar. | |
#define | ECORE_GETOPT_STORE_METAVAR_DOUBLE(shortname, longname, help, metavar) ECORE_GETOPT_STORE_METAVAR(shortname, longname, help, metavar, ECORE_GETOPT_TYPE_DOUBLE) |
Definition for filling Ecore_Getopt_Desc table with an option of type double and metavar. | |
#define | ECORE_GETOPT_STORE_DEF(shortname, longname, help, type, default_value) |
#define | ECORE_GETOPT_STORE_DEF_STR(shortname, longname, help, default_value) |
Definition for filling Ecore_Getopt_Desc table with an option of type string and default value. | |
#define | ECORE_GETOPT_STORE_DEF_BOOL(shortname, longname, help, default_value) |
Definition for filling Ecore_Getopt_Desc table with an option of type boolean and default value. | |
#define | ECORE_GETOPT_STORE_DEF_SHORT(shortname, longname, help, default_value) |
Definition for filling Ecore_Getopt_Desc table with an option of type short and default value. | |
#define | ECORE_GETOPT_STORE_DEF_INT(shortname, longname, help, default_value) |
Definition for filling Ecore_Getopt_Desc table with an option of type int and default value. | |
#define | ECORE_GETOPT_STORE_DEF_LONG(shortname, longname, help, default_value) |
Definition for filling Ecore_Getopt_Desc table with an option of type long and default value. | |
#define | ECORE_GETOPT_STORE_DEF_USHORT(shortname, longname, help, default_value) |
Definition for filling Ecore_Getopt_Desc table with an option of type unsigned short and default value. | |
#define | ECORE_GETOPT_STORE_DEF_UINT(shortname, longname, help, default_value) |
Definition for filling Ecore_Getopt_Desc table with an option of type unsigned int and default value. | |
#define | ECORE_GETOPT_STORE_DEF_ULONG(shortname, longname, help, default_value) |
Definition for filling Ecore_Getopt_Desc table with an option of type unsigned long and default value. | |
#define | ECORE_GETOPT_STORE_DEF_DOUBLE(shortname, longname, help, default_value) |
Definition for filling Ecore_Getopt_Desc table with an option of type double and default value. | |
#define | ECORE_GETOPT_STORE_FULL_STR(shortname, longname, help, metavar, arg_requirement, default_value) |
Definition for filling full string type option description in Ecore_Getopt_Desc table. | |
#define | ECORE_GETOPT_STORE_FULL_BOOL(shortname, longname, help, metavar, arg_requirement, default_value) |
Definition for filling full boolean type option description in Ecore_Getopt_Desc table. | |
#define | ECORE_GETOPT_STORE_FULL_SHORT(shortname, longname, help, metavar, arg_requirement, default_value) |
Definition for filling full short type option description in Ecore_Getopt_Desc table. | |
#define | ECORE_GETOPT_STORE_FULL_INT(shortname, longname, help, metavar, arg_requirement, default_value) |
Definition for filling full int type option description in Ecore_Getopt_Desc table. | |
#define | ECORE_GETOPT_STORE_FULL_LONG(shortname, longname, help, metavar, arg_requirement, default_value) |
Definition for filling full long type option description in Ecore_Getopt_Desc table. | |
#define | ECORE_GETOPT_STORE_FULL_USHORT(shortname, longname, help, metavar, arg_requirement, default_value) |
Definition for filling full unsigned short type option description in Ecore_Getopt_Desc table. | |
#define | ECORE_GETOPT_STORE_FULL_UINT(shortname, longname, help, metavar, arg_requirement, default_value) |
Definition for filling full unsigned int type option description in Ecore_Getopt_Desc table. | |
#define | ECORE_GETOPT_STORE_FULL_ULONG(shortname, longname, help, metavar, arg_requirement, default_value) |
Definition for filling full unsigned long type option description in Ecore_Getopt_Desc table. | |
#define | ECORE_GETOPT_STORE_FULL_DOUBLE(shortname, longname, help, metavar, arg_requirement, default_value) |
Definition for filling full double type option description in Ecore_Getopt_Desc table. | |
#define | ECORE_GETOPT_STORE_CONST(shortname, longname, help, value) |
Definition for filling Ecore_Getopt_Desc table with a constant value. | |
#define | ECORE_GETOPT_STORE_TRUE(shortname, longname, help) |
Definition for filling Ecore_Getopt_Desc table with a true boolean value. | |
#define | ECORE_GETOPT_STORE_FALSE(shortname, longname, help) |
Definition for filling Ecore_Getopt_Desc table with a false boolean value. | |
#define | ECORE_GETOPT_CHOICE(shortname, longname, help, choices_array) |
Definition for filling Ecore_Getopt_Desc table with a true boolean value. | |
#define | ECORE_GETOPT_CHOICE_METAVAR(shortname, longname, help, metavar, choices_array) |
Definition for filling Ecore_Getopt_Desc table with a choice. | |
#define | ECORE_GETOPT_APPEND(shortname, longname, help, sub_type) |
Definition for filling Ecore_Getopt_Desc table with an append action. | |
#define | ECORE_GETOPT_APPEND_METAVAR(shortname, longname, help, metavar, type) |
Definition for filling Ecore_Getopt_Desc table with an append action and a metavar. | |
#define | ECORE_GETOPT_COUNT(shortname, longname, help) |
Definition for filling Ecore_Getopt_Desc table with an count action. | |
#define | ECORE_GETOPT_CALLBACK_FULL(shortname, longname, help, metavar, callback_func, callback_data, argument_requirement, default_value) |
Definition for filling Ecore_Getopt_Desc table with an callback action and argument requirements. | |
#define | ECORE_GETOPT_CALLBACK_NOARGS(shortname, longname, help, callback_func, callback_data) |
Definition for filling Ecore_Getopt_Desc table with an callback action and no arguments. | |
#define | ECORE_GETOPT_CALLBACK_ARGS(shortname, longname, help, metavar, callback_func, callback_data) |
Definition for filling Ecore_Getopt_Desc table with an callback action. | |
#define | ECORE_GETOPT_HELP(shortname, longname) |
Definition for filling Ecore_Getopt_Desc table with a help action. | |
#define | ECORE_GETOPT_VERSION(shortname, longname) |
Definition for filling Ecore_Getopt_Desc table with a version action. | |
#define | ECORE_GETOPT_COPYRIGHT(shortname, longname) |
Definition for filling Ecore_Getopt_Desc table with a copyright action. | |
#define | ECORE_GETOPT_LICENSE(shortname, longname) |
Definition for filling Ecore_Getopt_Desc table with a license action. | |
#define | ECORE_GETOPT_BREAK(shortname, longname) |
Definition for filling Ecore_Getopt_Desc table with a break action. | |
#define | ECORE_GETOPT_BREAK_STR(shortname, longname, help) |
Definition for filling Ecore_Getopt_Desc table with a break action with help message. | |
#define | ECORE_GETOPT_SENTINEL {0, NULL, NULL, NULL, 0, {.dummy = NULL}} |
Definition for filling Ecore_Getopt_Desc table with a sentinel to indicate the end of descriptions. | |
#define | ECORE_GETOPT_VALUE_STR(val) {.strp = &(val)} |
Definition for options that store a single value in a variable of type string. | |
#define | ECORE_GETOPT_VALUE_BOOL(val) {.boolp = &(val)} |
Definition for options that store a single value in a variable of type boolean. | |
#define | ECORE_GETOPT_VALUE_SHORT(val) {.shortp = &(val)} |
Definition for options that store a single value in a variable of type short. | |
#define | ECORE_GETOPT_VALUE_INT(val) {.intp = &(val)} |
Definition for options that store a single value in a variable of type int. | |
#define | ECORE_GETOPT_VALUE_LONG(val) {.longp = &(val)} |
Definition for options that store a single value in a variable of type long. | |
#define | ECORE_GETOPT_VALUE_USHORT(val) {.ushortp = &(val)} |
Definition for options that store a single value in a variable of type unsigned short. | |
#define | ECORE_GETOPT_VALUE_UINT(val) {.uintp = &(val)} |
Definition for options that store a single value in a variable of type unsigned int. | |
#define | ECORE_GETOPT_VALUE_ULONG(val) {.ulongp = &(val)} |
Definition for options that store a single value in a variable of type unsigned long. | |
#define | ECORE_GETOPT_VALUE_DOUBLE(val) {.doublep = &(val)} |
Definition for options that store a single value in a variable of type double. | |
#define | ECORE_GETOPT_VALUE_PTR(val) {.ptrp = &(val)} |
Definition for options that store a single value in a variable of type pointer. | |
#define | ECORE_GETOPT_VALUE_PTR_CAST(val) {.ptrp = (void **)&(val)} |
Definition for options that store a single value in a variable of type pointer casted. | |
#define | ECORE_GETOPT_VALUE_LIST(val) {.listp = &(val)} |
Definition for options that store a single value in a variable of type list. | |
#define | ECORE_GETOPT_VALUE_NONE {.ptrp = NULL} |
Definition for options that store a NULL value. |
#define ECORE_GETOPT_APPEND | ( | shortname, | |
longname, | |||
help, | |||
sub_type | |||
) |
{shortname, longname, help, NULL, ECORE_GETOPT_ACTION_APPEND, \ {.append_type = sub_type}}
Definition for filling Ecore_Getopt_Desc table with an append action.
shortname | The option short name. |
longname | The option long name. |
help | The help message concerning this option. |
sub_type | The type of the new value to store. |
#define ECORE_GETOPT_APPEND_METAVAR | ( | shortname, | |
longname, | |||
help, | |||
metavar, | |||
type | |||
) |
{shortname, longname, help, metavar, ECORE_GETOPT_ACTION_APPEND, \ {.append_type = type}}
Definition for filling Ecore_Getopt_Desc table with an append action and a metavar.
shortname | The option short name. |
longname | The option long name. |
help | The help message concerning this option. |
metavar | The metavar message concerning the parameter of the option. |
type | The type of the new value to store. |
#define ECORE_GETOPT_BREAK | ( | shortname, | |
longname | |||
) |
{shortname, longname, "stop parsing options.", NULL, \
ECORE_GETOPT_ACTION_BREAK, \
{.dummy = NULL}}
Definition for filling Ecore_Getopt_Desc table with a break action.
shortname | The option short name. |
longname | The option long name. |
#define ECORE_GETOPT_BREAK_STR | ( | shortname, | |
longname, | |||
help | |||
) |
{shortname, longname, help, NULL, \ ECORE_GETOPT_ACTION_BREAK, \ {.dummy = NULL}}
Definition for filling Ecore_Getopt_Desc table with a break action with help message.
shortname | The option short name. |
longname | The option long name. |
help | The help message concerning this option. |
#define ECORE_GETOPT_CALLBACK_ARGS | ( | shortname, | |
longname, | |||
help, | |||
metavar, | |||
callback_func, | |||
callback_data | |||
) |
ECORE_GETOPT_CALLBACK_FULL(shortname, longname, help, metavar, \ callback_func, callback_data, \ ECORE_GETOPT_DESC_ARG_REQUIREMENT_YES, \ NULL)
Definition for filling Ecore_Getopt_Desc table with an callback action.
shortname | The option short name. |
longname | The option long name. |
help | The help message concerning this option. |
metavar | The metavar message concerning the parameter of the option. |
callback_func | The callback function to call. |
callback_data | The data to pass to the callback. |
#define ECORE_GETOPT_CALLBACK_FULL | ( | shortname, | |
longname, | |||
help, | |||
metavar, | |||
callback_func, | |||
callback_data, | |||
argument_requirement, | |||
default_value | |||
) |
{shortname, longname, help, metavar, ECORE_GETOPT_ACTION_CALLBACK, \ {.callback = {callback_func, callback_data, \ argument_requirement, default_value}}}
Definition for filling Ecore_Getopt_Desc table with an callback action and argument requirements.
shortname | The option short name. |
longname | The option long name. |
help | The help message concerning this option. |
metavar | The metavar message concerning the parameter of the option. |
callback_func | The callback function to call. |
callback_data | The data to pass to the callback. |
argument_requirement | The required arguments to this option. |
default_value | The default values for these arguments. |
#define ECORE_GETOPT_CALLBACK_NOARGS | ( | shortname, | |
longname, | |||
help, | |||
callback_func, | |||
callback_data | |||
) |
ECORE_GETOPT_CALLBACK_FULL(shortname, longname, help, NULL, \ callback_func, callback_data, \ ECORE_GETOPT_DESC_ARG_REQUIREMENT_NO, \ NULL)
Definition for filling Ecore_Getopt_Desc table with an callback action and no arguments.
shortname | The option short name. |
longname | The option long name. |
help | The help message concerning this option. |
callback_func | The callback function to call. |
callback_data | The data to pass to the callback. |
#define ECORE_GETOPT_CHOICE | ( | shortname, | |
longname, | |||
help, | |||
choices_array | |||
) |
{shortname, longname, help, NULL, ECORE_GETOPT_ACTION_CHOICE, \ {.choices = choices_array}}
Definition for filling Ecore_Getopt_Desc table with a true boolean value.
shortname | The option short name. |
longname | The option long name. |
help | The help message concerning this option. |
choices_array | An string array of different choices. |
#define ECORE_GETOPT_CHOICE_METAVAR | ( | shortname, | |
longname, | |||
help, | |||
metavar, | |||
choices_array | |||
) |
{shortname, longname, help, metavar, ECORE_GETOPT_ACTION_CHOICE, \ {.choices = choices_array}}
Definition for filling Ecore_Getopt_Desc table with a choice.
shortname | The option short name. |
longname | The option long name. |
help | The help message concerning this option. |
metavar | The metavar message concerning the parameter of the option. |
choices_array | An string array of different choices. |
#define ECORE_GETOPT_COPYRIGHT | ( | shortname, | |
longname | |||
) |
{shortname, longname, "show copyright.", NULL, \
ECORE_GETOPT_ACTION_COPYRIGHT, \
{.dummy = NULL}}
Definition for filling Ecore_Getopt_Desc table with a copyright action.
shortname | The copyright option short name. |
longname | The copyright option long name. |
#define ECORE_GETOPT_COUNT | ( | shortname, | |
longname, | |||
help | |||
) |
{shortname, longname, help, NULL, ECORE_GETOPT_ACTION_COUNT, \ {.dummy = NULL}}
Definition for filling Ecore_Getopt_Desc table with an count action.
This will store the number of time the option has been passed to the command line.
shortname | The option short name. |
longname | The option long name. |
help | The help message concerning this option. |
#define ECORE_GETOPT_HELP | ( | shortname, | |
longname | |||
) |
{shortname, longname, "show this message.", "CATEGORY", \ ECORE_GETOPT_ACTION_HELP, \ {.dummy = NULL}}
Definition for filling Ecore_Getopt_Desc table with a help action.
shortname | The help option short name. |
longname | The help option long name. |
#define ECORE_GETOPT_LICENSE | ( | shortname, | |
longname | |||
) |
{shortname, longname, "show license.", NULL, \
ECORE_GETOPT_ACTION_LICENSE, \
{.dummy = NULL}}
Definition for filling Ecore_Getopt_Desc table with a license action.
shortname | The license option short name. |
longname | The license option long name. |
#define ECORE_GETOPT_STORE | ( | shortname, | |
longname, | |||
help, | |||
type | |||
) |
ECORE_GETOPT_STORE_FULL(shortname, longname, help, NULL, type, \ ECORE_GETOPT_DESC_ARG_REQUIREMENT_YES, {})
Definition for macro that fills an option in Ecore_Getopt_Desc table.
shortname | The option short name. |
longname | The option long name. |
help | The help message concerning this option. |
type | The option value type. |
#define ECORE_GETOPT_STORE_BOOL | ( | shortname, | |
longname, | |||
help | |||
) | ECORE_GETOPT_STORE(shortname, longname, help, ECORE_GETOPT_TYPE_BOOL) |
Definition for macro that fill Ecore_Getopt_Desc table with an option of type boolean.
shortname | The option short name. |
longname | The option long name. |
help | The help message concerning this option. |
#define ECORE_GETOPT_STORE_CONST | ( | shortname, | |
longname, | |||
help, | |||
value | |||
) |
{shortname, longname, help, NULL, ECORE_GETOPT_ACTION_STORE_CONST, \ {.store_const = value}}
Definition for filling Ecore_Getopt_Desc table with a constant value.
shortname | The option short name. |
longname | The option long name. |
help | The help message concerning this option. |
value | The constant value to store. |
#define ECORE_GETOPT_STORE_DEF | ( | shortname, | |
longname, | |||
help, | |||
type, | |||
default_value | |||
) |
ECORE_GETOPT_STORE_FULL(shortname, longname, help, NULL, type, \ ECORE_GETOPT_DESC_ARG_REQUIREMENT_OPTIONAL, \ default_value)
Definition for macro that helps to fill the Ecore_Getopt_Desc table with a default value.
#define ECORE_GETOPT_STORE_DEF_BOOL | ( | shortname, | |
longname, | |||
help, | |||
default_value | |||
) |
ECORE_GETOPT_STORE_DEF(shortname, longname, help, \ ECORE_GETOPT_TYPE_BOOL, \ {.boolv = default_value})
Definition for filling Ecore_Getopt_Desc table with an option of type boolean and default value.
shortname | The option short name. |
longname | The option long name. |
help | The help message concerning this option. |
default_value | The default value for the parameter of the option. |
#define ECORE_GETOPT_STORE_DEF_DOUBLE | ( | shortname, | |
longname, | |||
help, | |||
default_value | |||
) |
ECORE_GETOPT_STORE_DEF(shortname, longname, help, \ ECORE_GETOPT_TYPE_DOUBLE, \ {.doublev = default_value})
Definition for filling Ecore_Getopt_Desc table with an option of type double and default value.
shortname | The option short name. |
longname | The option long name. |
help | The help message concerning this option. |
default_value | The default value for the parameter of the option. |
#define ECORE_GETOPT_STORE_DEF_INT | ( | shortname, | |
longname, | |||
help, | |||
default_value | |||
) |
ECORE_GETOPT_STORE_DEF(shortname, longname, help, \ ECORE_GETOPT_TYPE_INT, \ {.intv = default_value})
Definition for filling Ecore_Getopt_Desc table with an option of type int and default value.
shortname | The option short name. |
longname | The option long name. |
help | The help message concerning this option. |
default_value | The default value for the parameter of the option. |
#define ECORE_GETOPT_STORE_DEF_LONG | ( | shortname, | |
longname, | |||
help, | |||
default_value | |||
) |
ECORE_GETOPT_STORE_DEF(shortname, longname, help, \ ECORE_GETOPT_TYPE_LONG, \ {.longv = default_value})
Definition for filling Ecore_Getopt_Desc table with an option of type long and default value.
shortname | The option short name. |
longname | The option long name. |
help | The help message concerning this option. |
default_value | The default value for the parameter of the option. |
#define ECORE_GETOPT_STORE_DEF_SHORT | ( | shortname, | |
longname, | |||
help, | |||
default_value | |||
) |
ECORE_GETOPT_STORE_DEF(shortname, longname, help, \ ECORE_GETOPT_TYPE_SHORT, \ {.shortv = default_value})
Definition for filling Ecore_Getopt_Desc table with an option of type short and default value.
shortname | The option short name. |
longname | The option long name. |
help | The help message concerning this option. |
default_value | The default value for the parameter of the option. |
#define ECORE_GETOPT_STORE_DEF_STR | ( | shortname, | |
longname, | |||
help, | |||
default_value | |||
) |
ECORE_GETOPT_STORE_DEF(shortname, longname, help, \ ECORE_GETOPT_TYPE_STR, \ {.strv = default_value})
Definition for filling Ecore_Getopt_Desc table with an option of type string and default value.
shortname | The option short name. |
longname | The option long name. |
help | The help message concerning this option. |
default_value | The default value for the parameter of the option. |
#define ECORE_GETOPT_STORE_DEF_UINT | ( | shortname, | |
longname, | |||
help, | |||
default_value | |||
) |
ECORE_GETOPT_STORE_DEF(shortname, longname, help, \ ECORE_GETOPT_TYPE_UINT, \ {.uintv = default_value})
Definition for filling Ecore_Getopt_Desc table with an option of type unsigned int and default value.
shortname | The option short name. |
longname | The option long name. |
help | The help message concerning this option. |
default_value | The default value for the parameter of the option. |
#define ECORE_GETOPT_STORE_DEF_ULONG | ( | shortname, | |
longname, | |||
help, | |||
default_value | |||
) |
ECORE_GETOPT_STORE_DEF(shortname, longname, help, \ ECORE_GETOPT_TYPE_ULONG, \ {.ulongv = default_value})
Definition for filling Ecore_Getopt_Desc table with an option of type unsigned long and default value.
shortname | The option short name. |
longname | The option long name. |
help | The help message concerning this option. |
default_value | The default value for the parameter of the option. |
#define ECORE_GETOPT_STORE_DEF_USHORT | ( | shortname, | |
longname, | |||
help, | |||
default_value | |||
) |
ECORE_GETOPT_STORE_DEF(shortname, longname, help, \ ECORE_GETOPT_TYPE_USHORT, \ {.ushortv = default_value})
Definition for filling Ecore_Getopt_Desc table with an option of type unsigned short and default value.
shortname | The option short name. |
longname | The option long name. |
help | The help message concerning this option. |
default_value | The default value for the parameter of the option. |
#define ECORE_GETOPT_STORE_DOUBLE | ( | shortname, | |
longname, | |||
help | |||
) | ECORE_GETOPT_STORE(shortname, longname, help, ECORE_GETOPT_TYPE_DOUBLE) |
Definition for macro that fill Ecore_Getopt_Desc table with an option of type double.
shortname | The option short name. |
longname | The option long name. |
help | The help message concerning this option. |
#define ECORE_GETOPT_STORE_FALSE | ( | shortname, | |
longname, | |||
help | |||
) |
{shortname, longname, help, NULL, ECORE_GETOPT_ACTION_STORE_FALSE, \ {.dummy = NULL}}
Definition for filling Ecore_Getopt_Desc table with a false boolean value.
shortname | The option short name. |
longname | The option long name. |
help | The help message concerning this option. |
#define ECORE_GETOPT_STORE_FULL_BOOL | ( | shortname, | |
longname, | |||
help, | |||
metavar, | |||
arg_requirement, | |||
default_value | |||
) |
ECORE_GETOPT_STORE_FULL(shortname, longname, help, metavar, \ ECORE_GETOPT_TYPE_BOOL, \ arg_requirement, \ {.boolv = default_value})
Definition for filling full boolean type option description in Ecore_Getopt_Desc table.
shortname | The option short name. |
longname | The option long name. |
help | The help message concerning this option. |
metavar | The metavar message concerning the parameter of the option. |
arg_requirement | The option argument requirements. |
default_value | The default value for the parameter of the option. |
#define ECORE_GETOPT_STORE_FULL_DOUBLE | ( | shortname, | |
longname, | |||
help, | |||
metavar, | |||
arg_requirement, | |||
default_value | |||
) |
ECORE_GETOPT_STORE_FULL(shortname, longname, help, metavar, \ ECORE_GETOPT_TYPE_DOUBLE, \ arg_requirement, \ {.doublev = default_value})
Definition for filling full double type option description in Ecore_Getopt_Desc table.
shortname | The option short name. |
longname | The option long name. |
help | The help message concerning this option. |
metavar | The metavar message concerning the parameter of the option. |
arg_requirement | The option argument requirements. |
default_value | The default value for the parameter of the option. |
#define ECORE_GETOPT_STORE_FULL_INT | ( | shortname, | |
longname, | |||
help, | |||
metavar, | |||
arg_requirement, | |||
default_value | |||
) |
ECORE_GETOPT_STORE_FULL(shortname, longname, help, metavar, \ ECORE_GETOPT_TYPE_INT, \ arg_requirement, \ {.intv = default_value})
Definition for filling full int type option description in Ecore_Getopt_Desc table.
shortname | The option short name. |
longname | The option long name. |
help | The help message concerning this option. |
metavar | The metavar message concerning the parameter of the option. |
arg_requirement | The option argument requirements. |
default_value | The default value for the parameter of the option. |
#define ECORE_GETOPT_STORE_FULL_LONG | ( | shortname, | |
longname, | |||
help, | |||
metavar, | |||
arg_requirement, | |||
default_value | |||
) |
ECORE_GETOPT_STORE_FULL(shortname, longname, help, metavar, \ ECORE_GETOPT_TYPE_LONG, \ arg_requirement, \ {.longv = default_value})
Definition for filling full long type option description in Ecore_Getopt_Desc table.
shortname | The option short name. |
longname | The option long name. |
help | The help message concerning this option. |
metavar | The metavar message concerning the parameter of the option. |
arg_requirement | The option argument requirements. |
default_value | The default value for the parameter of the option. |
#define ECORE_GETOPT_STORE_FULL_SHORT | ( | shortname, | |
longname, | |||
help, | |||
metavar, | |||
arg_requirement, | |||
default_value | |||
) |
ECORE_GETOPT_STORE_FULL(shortname, longname, help, metavar, \ ECORE_GETOPT_TYPE_SHORT, \ arg_requirement, \ {.shortv = default_value})
Definition for filling full short type option description in Ecore_Getopt_Desc table.
shortname | The option short name. |
longname | The option long name. |
help | The help message concerning this option. |
metavar | The metavar message concerning the parameter of the option. |
arg_requirement | The option argument requirements. |
default_value | The default value for the parameter of the option. |
#define ECORE_GETOPT_STORE_FULL_STR | ( | shortname, | |
longname, | |||
help, | |||
metavar, | |||
arg_requirement, | |||
default_value | |||
) |
ECORE_GETOPT_STORE_FULL(shortname, longname, help, metavar, \ ECORE_GETOPT_TYPE_STR, \ arg_requirement, \ {.strv = default_value})
Definition for filling full string type option description in Ecore_Getopt_Desc table.
shortname | The option short name. |
longname | The option long name. |
help | The help message concerning this option. |
metavar | The metavar message concerning the parameter of the option. |
arg_requirement | The option argument requirements. |
default_value | The default value for the parameter of the option. |
#define ECORE_GETOPT_STORE_FULL_UINT | ( | shortname, | |
longname, | |||
help, | |||
metavar, | |||
arg_requirement, | |||
default_value | |||
) |
ECORE_GETOPT_STORE_FULL(shortname, longname, help, metavar, \ ECORE_GETOPT_TYPE_UINT, \ arg_requirement, \ {.uintv = default_value})
Definition for filling full unsigned int type option description in Ecore_Getopt_Desc table.
shortname | The option short name. |
longname | The option long name. |
help | The help message concerning this option. |
metavar | The metavar message concerning the parameter of the option. |
arg_requirement | The option argument requirements. |
default_value | The default value for the parameter of the option. |
#define ECORE_GETOPT_STORE_FULL_ULONG | ( | shortname, | |
longname, | |||
help, | |||
metavar, | |||
arg_requirement, | |||
default_value | |||
) |
ECORE_GETOPT_STORE_FULL(shortname, longname, help, metavar, \ ECORE_GETOPT_TYPE_ULONG, \ arg_requirement, \ {.ulongv = default_value})
Definition for filling full unsigned long type option description in Ecore_Getopt_Desc table.
shortname | The option short name. |
longname | The option long name. |
help | The help message concerning this option. |
metavar | The metavar message concerning the parameter of the option. |
arg_requirement | The option argument requirements. |
default_value | The default value for the parameter of the option. |
#define ECORE_GETOPT_STORE_FULL_USHORT | ( | shortname, | |
longname, | |||
help, | |||
metavar, | |||
arg_requirement, | |||
default_value | |||
) |
ECORE_GETOPT_STORE_FULL(shortname, longname, help, metavar, \ ECORE_GETOPT_TYPE_USHORT, \ arg_requirement, \ {.ushortv = default_value})
Definition for filling full unsigned short type option description in Ecore_Getopt_Desc table.
shortname | The option short name. |
longname | The option long name. |
help | The help message concerning this option. |
metavar | The metavar message concerning the parameter of the option. |
arg_requirement | The option argument requirements. |
default_value | The default value for the parameter of the option. |
#define ECORE_GETOPT_STORE_INT | ( | shortname, | |
longname, | |||
help | |||
) | ECORE_GETOPT_STORE(shortname, longname, help, ECORE_GETOPT_TYPE_INT) |
Definition for macro that fill Ecore_Getopt_Desc table with an option of type int.
shortname | The option short name. |
longname | The option long name. |
help | The help message concerning this option. |
#define ECORE_GETOPT_STORE_LONG | ( | shortname, | |
longname, | |||
help | |||
) | ECORE_GETOPT_STORE(shortname, longname, help, ECORE_GETOPT_TYPE_LONG) |
Definition for macro that fill Ecore_Getopt_Desc table with an option of type long.
shortname | The option short name. |
longname | The option long name. |
help | The help message concerning this option. |
#define ECORE_GETOPT_STORE_METAVAR | ( | shortname, | |
longname, | |||
help, | |||
metavar, | |||
type | |||
) |
ECORE_GETOPT_STORE_FULL(shortname, longname, help, metavar, type, \ ECORE_GETOPT_DESC_ARG_REQUIREMENT_YES, {})
Definition for macro that helps to fill the Ecore_Getopt_Desc table with a metavar after the description of the option.
#define ECORE_GETOPT_STORE_METAVAR_BOOL | ( | shortname, | |
longname, | |||
help, | |||
metavar | |||
) | ECORE_GETOPT_STORE_METAVAR(shortname, longname, help, metavar, ECORE_GETOPT_TYPE_BOOL) |
Definition for filling Ecore_Getopt_Desc table with an option of type boolean and metavar.
shortname | The option short name. |
longname | The option long name. |
help | The help message concerning this option. |
metavar | The metavar message concerning the parameter of the option. |
#define ECORE_GETOPT_STORE_METAVAR_DOUBLE | ( | shortname, | |
longname, | |||
help, | |||
metavar | |||
) | ECORE_GETOPT_STORE_METAVAR(shortname, longname, help, metavar, ECORE_GETOPT_TYPE_DOUBLE) |
Definition for filling Ecore_Getopt_Desc table with an option of type double and metavar.
shortname | The option short name. |
longname | The option long name. |
help | The help message concerning this option. |
metavar | The metavar message concerning the parameter of the option. |
#define ECORE_GETOPT_STORE_METAVAR_INT | ( | shortname, | |
longname, | |||
help, | |||
metavar | |||
) | ECORE_GETOPT_STORE_METAVAR(shortname, longname, help, metavar, ECORE_GETOPT_TYPE_INT) |
Definition for filling Ecore_Getopt_Desc table with an option of type int and metavar.
shortname | The option short name. |
longname | The option long name. |
help | The help message concerning this option. |
metavar | The metavar message concerning the parameter of the option. |
#define ECORE_GETOPT_STORE_METAVAR_LONG | ( | shortname, | |
longname, | |||
help, | |||
metavar | |||
) | ECORE_GETOPT_STORE_METAVAR(shortname, longname, help, metavar, ECORE_GETOPT_TYPE_LONG) |
Definition for filling Ecore_Getopt_Desc table with an option of type long and metavar.
shortname | The option short name. |
longname | The option long name. |
help | The help message concerning this option. |
metavar | The metavar message concerning the parameter of the option. |
#define ECORE_GETOPT_STORE_METAVAR_SHORT | ( | shortname, | |
longname, | |||
help, | |||
metavar | |||
) | ECORE_GETOPT_STORE_METAVAR(shortname, longname, help, metavar, ECORE_GETOPT_TYPE_SHORT) |
Definition for filling Ecore_Getopt_Desc table with an option of type short and metavar.
shortname | The option short name. |
longname | The option long name. |
help | The help message concerning this option. |
metavar | The metavar message concerning the parameter of the option. |
#define ECORE_GETOPT_STORE_METAVAR_STR | ( | shortname, | |
longname, | |||
help, | |||
metavar | |||
) | ECORE_GETOPT_STORE_METAVAR(shortname, longname, help, metavar, ECORE_GETOPT_TYPE_STR) |
Definition for filling Ecore_Getopt_Desc table with an option of type string and metavar.
shortname | The option short name. |
longname | The option long name. |
help | The help message concerning this option. |
metavar | The metavar message concerning the parameter of the option. |
#define ECORE_GETOPT_STORE_METAVAR_UINT | ( | shortname, | |
longname, | |||
help, | |||
metavar | |||
) | ECORE_GETOPT_STORE_METAVAR(shortname, longname, help, metavar, ECORE_GETOPT_TYPE_UINT) |
Definition for filling Ecore_Getopt_Desc table with an option of type unsigned int and metavar.
shortname | The option short name. |
longname | The option long name. |
help | The help message concerning this option. |
metavar | The metavar message concerning the parameter of the option. |
#define ECORE_GETOPT_STORE_METAVAR_ULONG | ( | shortname, | |
longname, | |||
help, | |||
metavar | |||
) | ECORE_GETOPT_STORE_METAVAR(shortname, longname, help, metavar, ECORE_GETOPT_TYPE_ULONG) |
Definition for filling Ecore_Getopt_Desc table with an option of type unsigned long and metavar.
shortname | The option short name. |
longname | The option long name. |
help | The help message concerning this option. |
metavar | The metavar message concerning the parameter of the option. |
#define ECORE_GETOPT_STORE_METAVAR_USHORT | ( | shortname, | |
longname, | |||
help, | |||
metavar | |||
) | ECORE_GETOPT_STORE_METAVAR(shortname, longname, help, metavar, ECORE_GETOPT_TYPE_USHORT) |
Definition for filling Ecore_Getopt_Desc table with an option of type unsigned short and metavar.
shortname | The option short name. |
longname | The option long name. |
help | The help message concerning this option. |
metavar | The metavar message concerning the parameter of the option. |
#define ECORE_GETOPT_STORE_SHORT | ( | shortname, | |
longname, | |||
help | |||
) | ECORE_GETOPT_STORE(shortname, longname, help, ECORE_GETOPT_TYPE_SHORT) |
Definition for macro that fill Ecore_Getopt_Desc table with an option of type short.
shortname | The option short name. |
longname | The option long name. |
help | The help message concerning this option. |
#define ECORE_GETOPT_STORE_STR | ( | shortname, | |
longname, | |||
help | |||
) | ECORE_GETOPT_STORE(shortname, longname, help, ECORE_GETOPT_TYPE_STR) |
Definition for macro that fill Ecore_Getopt_Desc table with an option of type string.
shortname | The option short name. |
longname | The option long name. |
help | The help message concerning this option. |
#define ECORE_GETOPT_STORE_TRUE | ( | shortname, | |
longname, | |||
help | |||
) |
{shortname, longname, help, NULL, ECORE_GETOPT_ACTION_STORE_TRUE, \ {.dummy = NULL}}
Definition for filling Ecore_Getopt_Desc table with a true boolean value.
shortname | The option short name. |
longname | The option long name. |
help | The help message concerning this option. |
#define ECORE_GETOPT_STORE_UINT | ( | shortname, | |
longname, | |||
help | |||
) | ECORE_GETOPT_STORE(shortname, longname, help, ECORE_GETOPT_TYPE_UINT) |
Definition for macro that fill Ecore_Getopt_Desc table with an option of type uint.
shortname | The option short name. |
longname | The option long name. |
help | The help message concerning this option. |
#define ECORE_GETOPT_STORE_ULONG | ( | shortname, | |
longname, | |||
help | |||
) | ECORE_GETOPT_STORE(shortname, longname, help, ECORE_GETOPT_TYPE_ULONG) |
Definition for macro that fill Ecore_Getopt_Desc table with an option of type ulong.
shortname | The option short name. |
longname | The option long name. |
help | The help message concerning this option. |
#define ECORE_GETOPT_STORE_USHORT | ( | shortname, | |
longname, | |||
help | |||
) | ECORE_GETOPT_STORE(shortname, longname, help, ECORE_GETOPT_TYPE_USHORT) |
Definition for macro that fill Ecore_Getopt_Desc table with an option of type ushort.
shortname | The option short name. |
longname | The option long name. |
help | The help message concerning this option. |
#define ECORE_GETOPT_VALUE_BOOL | ( | val | ) | {.boolp = &(val)} |
Definition for options that store a single value in a variable of type boolean.
val | The value to store. |
#define ECORE_GETOPT_VALUE_DOUBLE | ( | val | ) | {.doublep = &(val)} |
Definition for options that store a single value in a variable of type double.
val | The value to store. |
#define ECORE_GETOPT_VALUE_INT | ( | val | ) | {.intp = &(val)} |
Definition for options that store a single value in a variable of type int.
val | The value to store. |
#define ECORE_GETOPT_VALUE_LIST | ( | val | ) | {.listp = &(val)} |
Definition for options that store a single value in a variable of type list.
val | The value to store. |
#define ECORE_GETOPT_VALUE_LONG | ( | val | ) | {.longp = &(val)} |
Definition for options that store a single value in a variable of type long.
val | The value to store. |
#define ECORE_GETOPT_VALUE_NONE {.ptrp = NULL} |
Definition for options that store a NULL value.
val | The value to store. |
#define ECORE_GETOPT_VALUE_PTR | ( | val | ) | {.ptrp = &(val)} |
Definition for options that store a single value in a variable of type pointer.
val | The value to store. |
#define ECORE_GETOPT_VALUE_PTR_CAST | ( | val | ) | {.ptrp = (void **)&(val)} |
Definition for options that store a single value in a variable of type pointer casted.
val | The value to store. |
#define ECORE_GETOPT_VALUE_SHORT | ( | val | ) | {.shortp = &(val)} |
Definition for options that store a single value in a variable of type short.
val | The value to store. |
#define ECORE_GETOPT_VALUE_STR | ( | val | ) | {.strp = &(val)} |
Definition for options that store a single value in a variable of type string.
val | The value to store. |
#define ECORE_GETOPT_VALUE_UINT | ( | val | ) | {.uintp = &(val)} |
Definition for options that store a single value in a variable of type unsigned int.
val | The value to store. |
#define ECORE_GETOPT_VALUE_ULONG | ( | val | ) | {.ulongp = &(val)} |
Definition for options that store a single value in a variable of type unsigned long.
val | The value to store. |
#define ECORE_GETOPT_VALUE_USHORT | ( | val | ) | {.ushortp = &(val)} |
Definition for options that store a single value in a variable of type unsigned short.
val | The value to store. |
#define ECORE_GETOPT_VERSION | ( | shortname, | |
longname | |||
) |
{shortname, longname, "show program version.", NULL, \
ECORE_GETOPT_ACTION_VERSION, \
{.dummy = NULL}}
Definition for filling Ecore_Getopt_Desc table with a version action.
shortname | The version option short name. |
longname | The version option long name. |
enum Ecore_Getopt_Action |
Enumeration for defining the actions to do when parsing command line parameters.
enum Ecore_Getopt_Type |
Enumeration for defining the type of the values to store when using append action.
Eina_Bool ecore_getopt_callback_geometry_parse | ( | const Ecore_Getopt * | parser, |
const Ecore_Getopt_Desc * | desc, | ||
const char * | str, | ||
void * | data, | ||
Ecore_Getopt_Value * | storage | ||
) |
Helper ecore_getopt callback to parse geometry (x:y:w:h).
parser | This parameter isn't in use. |
desc | This parameter isn't in use. |
str | Geometry value |
data | This parameter isn't in use. |
storage | Must be a pointer to Eina_Rectangle and will be used to store the four values passed in the given string. |
EINA_TRUE
on success, EINA_FALSE
on incorrect geometry value.This is a helper function to be used with ECORE_GETOPT_CALLBACK_*().
callback_data
value is ignored, you can safely use NULL
.
Eina_Bool ecore_getopt_callback_size_parse | ( | const Ecore_Getopt * | parser, |
const Ecore_Getopt_Desc * | desc, | ||
const char * | str, | ||
void * | data, | ||
Ecore_Getopt_Value * | storage | ||
) |
Helper ecore_getopt callback to parse geometry size (WxH).
parser | This parameter isn't in use. |
desc | This parameter isn't in use. |
str | size value |
data | This parameter isn't in use. |
storage | Must be a pointer to Eina_Rectangle and will be used to store the two values passed in the given string and 0 in the x and y fields. |
EINA_TRUE
on success, EINA_FALSE
on incorrect size value.callback_data
value is ignored, you can safely use NULL
.
void ecore_getopt_help | ( | FILE * | fp, |
const Ecore_Getopt * | info | ||
) |
Shows nicely formatted help message for the given parser.
fp | The file the message will be printed on. |
info | The structure containing information about command line options. |
Eina_Bool ecore_getopt_help_category | ( | FILE * | fp, |
const Ecore_Getopt * | info, | ||
const char * | category | ||
) |
Shows help for a single category (along with program usage and description).
fp | The file the message will be printed on. |
info | The structure containing information about command line options. |
category | The category to print. |
EINA_TRUE
when the category exists, EINA_FALSE
otherwise.Eina_List* ecore_getopt_list_free | ( | Eina_List * | list | ) |
Utilities to free list and nodes allocated by ECORE_GETOPT_ACTION_APPEND.
list | Pointer to list to be freed. |
NULL
, so you can easily make your list head NULL
.int ecore_getopt_parse | ( | const Ecore_Getopt * | parser, |
Ecore_Getopt_Value * | values, | ||
int | argc, | ||
char ** | argv | ||
) |
Parses command line parameters.
Walks the command line parameters and parse them based on parser description, doing actions based on parser->descs->action
, like showing help text, license, copyright, storing values in values and so on.
It is expected that values is of the same size than parser->descs
, options that do not need a value it will be left untouched.
All values are expected to be initialized before use. Options with action ECORE_GETOPT_ACTION_STORE
and non required arguments (others than ECORE_GETOPT_DESC_ARG_REQUIREMENT_YES
), are expected to provide a value in def
to be used.
The following actions will store 1
on value as a boolean (value->boolp
) if it's not NULL
to indicate these actions were executed:
ECORE_GETOPT_ACTION_HELP
ECORE_GETOPT_ACTION_VERSION
ECORE_GETOPT_ACTION_COPYRIGHT
ECORE_GETOPT_ACTION_LICENSE
Just ECORE_GETOPT_ACTION_APPEND
will allocate memory and thus need to be freed. For consistency between all of appended subtypes, eina_list->data
will contain an allocated memory with the value, that is, for ECORE_GETOPT_TYPE_STR
it will contain a copy of the argument, ECORE_GETOPT_TYPE_INT
a pointer to an allocated integer and so on.
If parser is in strict mode (see Ecore_Getopt->strict
), then any error will abort parsing and -1
is returned. Otherwise it will try to continue as far as possible.
This function may reorder argv elements.
Translation of help strings (description), metavar, usage, license and copyright may be translated, standard/global gettext() call will be applied on them if ecore was compiled with such support.
This function will not parse positional arguments! If these are declared (metavar is defined with both shortname and longname being empty), then you must call ecore_getopt_parse_positional() with the last argument (start
) being the result of this function. This is done so you can have "quit options", those that once called you want to exit without doing further parsing, as is the case with help, license, copyright, version and eventually others you may define.
parser | Description of how to work. |
values | Where to store values, it is assumed that this is a vector of the same size as parser->descs . Values should be previously initialized. |
argc | How many elements in argv. If not provided it will be retrieved with ecore_app_args_get(). |
argv | Command line parameters. |
-1
on error.int ecore_getopt_parse_positional | ( | const Ecore_Getopt * | parser, |
Ecore_Getopt_Value * | values, | ||
int | argc, | ||
char ** | argv, | ||
int | start | ||
) |
Parses command line positional parameters.
Walks the command line positional parameters (those that do not start with "-" or "--") and parse them based on parser description, doing actions based on parser->descs->action
, like storing values of some type.
It is expected that values is of the same size than parser->descs
, same as with ecore_getopt_parse().
All values are expected to be initialized before use.
Unlike the ecore_getopt_parse(), only the following options are supported:
ECORE_GETOPT_ACTION_STORE
ECORE_GETOPT_ACTION_CHOICE
ECORE_GETOPT_ACTION_APPEND
ECORE_GETOPT_ACTION_CALLBACK
There is a special case for ECORE_GETOPT_ACTION_APPEND
as it will consume all remaining elements. It is also special in the sense that it will allocate memory and thus need to be freed. For consistency between all of appended subtypes, eina_list->data
will contain an allocated memory with the value, that is, for ECORE_GETOPT_TYPE_STR
it will contain a copy of the argument, ECORE_GETOPT_TYPE_INT
a pointer to an allocated integer and so on.
If parser is in strict mode (see Ecore_Getopt->strict
), then any error will abort parsing and -1
is returned. Otherwise it will try to continue as far as possible.
Translation of help strings (description) and metavar may be done, standard/global gettext() call will be applied on them if ecore was compiled with such support.
parser | Description of how to work. |
values | Where to store values, it is assumed that this is a vector of the same size as parser->descs . Values should be previously initialized. |
argc | How many elements in argv. If not provided it will be retrieved with ecore_app_args_get(). |
argv | Command line parameters. |
start | The initial position argument to look at, usually the return of ecore_getopt_parse(). If less than 1, will try to find it automatically. |
-1
on error. If the last positional argument is of action ECORE_GETOPT_ACTION_APPEND
then it will be the same as argc.Eina_Bool ecore_getopt_parser_has_duplicates | ( | const Ecore_Getopt * | parser | ) |
Checks parser for duplicate entries, print them out.
EINA_TRUE
if there are duplicates, EINA_FALSE
otherwise. parser | The parser to be checked. |