diff options
author | Derrick Stolee <dstolee@microsoft.com> | 2019-09-03 20:04:57 +0200 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2019-09-05 23:05:12 +0200 |
commit | 65edd96aecdee2cd4d16a7c17ae9f723c3fe61a4 (patch) | |
tree | bd91b97a0abd9a03d446a8b5dbcc016bcef897c5 /dir.h | |
parent | treewide: rename 'EXCL_FLAG_' to 'PATTERN_FLAG_' (diff) | |
download | git-65edd96aecdee2cd4d16a7c17ae9f723c3fe61a4.tar.xz git-65edd96aecdee2cd4d16a7c17ae9f723c3fe61a4.zip |
treewide: rename 'exclude' methods to 'pattern'
The first consumer of pattern-matching filenames was the
.gitignore feature. In that context, storing a list of patterns
as a 'struct exclude_list' makes sense. However, the
sparse-checkout feature then adopted these structures and methods,
but with the opposite meaning: these patterns match the files
that should be included!
It would be clearer to rename this entire library as a "pattern
matching" library, and the callers apply exclusion/inclusion
logic accordingly based on their needs.
This commit renames several methods defined in dir.h to make
more sense with the renamed 'struct exclude_list' to 'struct
pattern_list' and 'struct exclude' to 'struct path_pattern':
* last_exclude_matching() -> last_matching_pattern()
* parse_exclude() -> parse_path_pattern()
In addition, the word 'exclude' was replaced with 'pattern'
in the methods below:
* add_exclude_list()
* add_excludes_from_file_to_list()
* add_excludes_from_file()
* add_excludes_from_blob_to_list()
* add_exclude()
* clear_exclude_list()
A few methods with the word "exclude" remain. These will
be handled seperately. In particular, the method
"is_excluded()" is concretely about the .gitignore file
relative to a specific directory. This is the important
boundary between library and consumer: is_excluded() cares
about .gitignore, but is_excluded() calls
last_matching_pattern() to make that decision.
Signed-off-by: Derrick Stolee <dstolee@microsoft.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'dir.h')
-rw-r--r-- | dir.h | 22 |
1 files changed, 11 insertions, 11 deletions
@@ -18,7 +18,7 @@ struct dir_entry { struct path_pattern { /* - * This allows callers of last_exclude_matching() etc. + * This allows callers of last_matching_pattern() etc. * to determine the origin of the matching pattern. */ struct pattern_list *pl; @@ -248,26 +248,26 @@ int match_pathname(const char *, int, const char *, int, const char *, int, int, unsigned); -struct path_pattern *last_exclude_matching(struct dir_struct *dir, - struct index_state *istate, - const char *name, int *dtype); +struct path_pattern *last_matching_pattern(struct dir_struct *dir, + struct index_state *istate, + const char *name, int *dtype); int is_excluded(struct dir_struct *dir, struct index_state *istate, const char *name, int *dtype); -struct pattern_list *add_exclude_list(struct dir_struct *dir, +struct pattern_list *add_pattern_list(struct dir_struct *dir, int group_type, const char *src); -int add_excludes_from_file_to_list(const char *fname, const char *base, int baselen, +int add_patterns_from_file_to_list(const char *fname, const char *base, int baselen, struct pattern_list *pl, struct index_state *istate); -void add_excludes_from_file(struct dir_struct *, const char *fname); -int add_excludes_from_blob_to_list(struct object_id *oid, +void add_patterns_from_file(struct dir_struct *, const char *fname); +int add_patterns_from_blob_to_list(struct object_id *oid, const char *base, int baselen, struct pattern_list *pl); -void parse_exclude_pattern(const char **string, int *patternlen, unsigned *flags, int *nowildcardlen); -void add_exclude(const char *string, const char *base, +void parse_path_pattern(const char **string, int *patternlen, unsigned *flags, int *nowildcardlen); +void add_pattern(const char *string, const char *base, int baselen, struct pattern_list *pl, int srcpos); -void clear_exclude_list(struct pattern_list *pl); +void clear_pattern_list(struct pattern_list *pl); void clear_directory(struct dir_struct *dir); int repo_file_exists(struct repository *repo, const char *path); |