diff options
author | Junio C Hamano <gitster@pobox.com> | 2018-10-30 09:43:39 +0300 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2018-10-30 09:43:39 +0300 |
commit | 77d503757d6328703f9571a4432dd83800bc26bb (patch) | |
tree | 55b106aab90b9b44a8d8e7cc38af63f2a3e743b9 /list-objects-filter.h | |
parent | c670b1f876521c9f7cd40184bf7ed05aad843433 (diff) | |
parent | 8b10a206f090e01ce1ac4d9a10ec769e2409e2b0 (diff) |
Merge branch 'md/filter-trees'
The "rev-list --filter" feature learned to exclude all trees via
"tree:0" filter.
* md/filter-trees:
list-objects: support for skipping tree traversal
filter-trees: code clean-up of tests
list-objects-filter: implement filter tree:0
list-objects-filter-options: do not over-strbuf_init
list-objects-filter: use BUG rather than die
revision: mark non-user-given objects instead
rev-list: handle missing tree objects properly
list-objects: always parse trees gently
list-objects: refactor to process_tree_contents
list-objects: store common func args in struct
Diffstat (limited to 'list-objects-filter.h')
-rw-r--r-- | list-objects-filter.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/list-objects-filter.h b/list-objects-filter.h index a6f6b4990b..52b4a84da9 100644 --- a/list-objects-filter.h +++ b/list-objects-filter.h @@ -24,6 +24,11 @@ struct oidset; * In general, objects should only be shown once, but * this result DOES NOT imply that we mark it SEEN. * + * _SKIP_TREE : Used in LOFS_BEGIN_TREE situation - indicates that + * the tree's children should not be iterated over. This + * is used as an optimization when all children will + * definitely be ignored. + * * Most of the time, you want the combination (_MARK_SEEN | _DO_SHOW) * but they can be used independently, such as when sparse-checkout * pattern matching is being applied. @@ -45,6 +50,7 @@ enum list_objects_filter_result { LOFR_ZERO = 0, LOFR_MARK_SEEN = 1<<0, LOFR_DO_SHOW = 1<<1, + LOFR_SKIP_TREE = 1<<2, }; enum list_objects_filter_situation { |