summaryrefslogtreecommitdiff
path: root/t/t4255-am-submodule.sh
diff options
context:
space:
mode:
authorLibravatar Derrick Stolee <dstolee@microsoft.com>2019-09-03 11:04:58 -0700
committerLibravatar Junio C Hamano <gitster@pobox.com>2019-09-05 14:05:12 -0700
commit468ce99b77a0efaf1ace4c31a7b0a7d036fd9ca1 (patch)
tree7399ea6e2d1eea755b78587f2c9a9c6f3fe7365f /t/t4255-am-submodule.sh
parenttreewide: rename 'exclude' methods to 'pattern' (diff)
downloadtgif-468ce99b77a0efaf1ace4c31a7b0a7d036fd9ca1.tar.xz
unpack-trees: rename 'is_excluded_from_list()'
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! Now that this library is renamed to use 'struct pattern_list' and 'struct pattern', we can now rename the method used by the sparse-checkout feature to determine which paths should appear in the working directory. The method is_excluded_from_list() is only used by the sparse-checkout logic in unpack-trees and list-objects-filter. The confusing part is that it returned 1 for "excluded" (i.e. it matches the list of exclusions) but that really manes that the path matched the list of patterns for _inclusion_ in the working directory. Rename the method to be path_matches_pattern_list() and have it return an explicit 'enum pattern_match_result'. Here, the values MATCHED = 1, UNMATCHED = 0, and UNDECIDED = -1 agree with the previous integer values. This shift allows future consumers to better understand what the retur values mean, and provides more type checking for handling those values. Signed-off-by: Derrick Stolee <dstolee@microsoft.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't/t4255-am-submodule.sh')
0 files changed, 0 insertions, 0 deletions