• J
    grep: teach --debug option to dump the parse tree · 17bf35a3
    Junio C Hamano 提交于
    Our "grep" allows complex boolean expressions to be formed to match
    each individual line with operators like --and, '(', ')' and --not.
    Introduce the "--debug" option to show the parse tree to help people
    who want to debug and enhance it.
    
    Also "log" learns "--grep-debug" option to do the same.  The command
    line parser to the log family is a lot more limited than the general
    "git grep" parser, but it has special handling for header matching
    (e.g. "--author"), and a parse tree is valuable when working on it.
    
    Note that "--all-match" is *not* any individual node in the parse
    tree.  It is an instruction to the evaluator to check all the nodes
    in the top-level backbone have matched and reject a document as
    non-matching otherwise.
    Signed-off-by: NJunio C Hamano <gitster@pobox.com>
    17bf35a3
grep.c 33.1 KB