list_objects_filter_options: introduce 'list_object_filter_config_name'
In a subsequent commit, we will add configuration options that are specific to each kind of object filter, in which case it is handy to have a function that translates between 'enum list_objects_filter_choice' and an appropriate configuration-friendly string. Signed-off-by: Taylor Blau <me@ttaylorr.com> Acked-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
a08a83db2b
commit
b9ea214795
@ -15,6 +15,29 @@ static int parse_combine_filter(
|
||||
const char *arg,
|
||||
struct strbuf *errbuf);
|
||||
|
||||
const char *list_object_filter_config_name(enum list_objects_filter_choice c)
|
||||
{
|
||||
switch (c) {
|
||||
case LOFC_DISABLED:
|
||||
/* we have no name for "no filter at all" */
|
||||
break;
|
||||
case LOFC_BLOB_NONE:
|
||||
return "blob:none";
|
||||
case LOFC_BLOB_LIMIT:
|
||||
return "blob:limit";
|
||||
case LOFC_TREE_DEPTH:
|
||||
return "tree";
|
||||
case LOFC_SPARSE_OID:
|
||||
return "sparse:oid";
|
||||
case LOFC_COMBINE:
|
||||
return "combine";
|
||||
case LOFC__COUNT:
|
||||
/* not a real filter type; just the count of all filters */
|
||||
break;
|
||||
}
|
||||
BUG("list_object_filter_choice_name: invalid argument '%d'", c);
|
||||
}
|
||||
|
||||
/*
|
||||
* Parse value of the argument to the "filter" keyword.
|
||||
* On the command line this looks like:
|
||||
|
@ -17,6 +17,12 @@ enum list_objects_filter_choice {
|
||||
LOFC__COUNT /* must be last */
|
||||
};
|
||||
|
||||
/*
|
||||
* Returns a configuration key suitable for describing the given object filter,
|
||||
* e.g.: "blob:none", "combine", etc.
|
||||
*/
|
||||
const char *list_object_filter_config_name(enum list_objects_filter_choice c);
|
||||
|
||||
struct list_objects_filter_options {
|
||||
/*
|
||||
* 'filter_spec' is the raw argument value given on the command line
|
||||
|
Loading…
Reference in New Issue
Block a user