Skip to content

Commit

Permalink
list_objects_filter_options: introduce 'list_object_filter_config_name'
Browse files Browse the repository at this point in the history
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>
  • Loading branch information
ttaylorr authored and gitster committed Aug 4, 2020
1 parent a08a83d commit b9ea214
Show file tree
Hide file tree
Showing 2 changed files with 29 additions and 0 deletions.
23 changes: 23 additions & 0 deletions list-objects-filter-options.c
Expand Up @@ -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:
Expand Down
6 changes: 6 additions & 0 deletions list-objects-filter-options.h
Expand Up @@ -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
Expand Down

0 comments on commit b9ea214

Please sign in to comment.