]> git.ipfire.org Git - thirdparty/git.git/commit - grep.h
grep: refactor next_match() and match_one_pattern() for external use
authorHamza Mahfooz <someguy@effective-light.com>
Wed, 29 Sep 2021 11:57:15 +0000 (07:57 -0400)
committerJunio C Hamano <gitster@pobox.com>
Wed, 29 Sep 2021 20:23:11 +0000 (13:23 -0700)
commit3f566c4e695a6df8237c34b7c1f34f0832b7e575
tree2e662ce33e4b9cf249d086568cd460cb98071350
parent28ecef4c84af0b3300b84e73d2a7749e9a4ac83f
grep: refactor next_match() and match_one_pattern() for external use

These changes are made in preparation of, the colorization support for the
"git log" subcommands that, rely on regex functionality (i.e. "--author",
"--committer" and "--grep"). These changes are necessary primarily because
match_one_pattern() expects header lines to be prefixed, however, in
pretty, the prefixes are stripped from the lines because the name-email
pairs need to go through additional parsing, before they can be printed and
because next_match() doesn't handle the case of
"ctx == GREP_CONTEXT_HEAD" at all. So, teach next_match() how to handle the
new case and move match_one_pattern()'s core logic to
headerless_match_one_pattern() while preserving match_one_pattern()'s uses
that depend on the additional processing.

Signed-off-by: Hamza Mahfooz <someguy@effective-light.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
grep.c
grep.h