X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=grep.h;h=fb205f354231c0e50026c6e7fbfae5e288620611;hb=471dcfdbb23ad423168d928335bc36217f9e311d;hp=cd055cdfa8cac903382d592f1ec7e2a22bf7f897;hpb=43176d1e4cddc4ab2f2f7dc6f3ba10513ffc2f2b;p=git.git diff --git a/grep.h b/grep.h index cd055cdfa..fb205f354 100644 --- a/grep.h +++ b/grep.h @@ -7,6 +7,8 @@ typedef int pcre; typedef int pcre_extra; #endif +#include "kwset.h" +#include "thread-utils.h" enum grep_pat_token { GREP_PATTERN, @@ -41,6 +43,7 @@ struct grep_pat { regex_t regexp; pcre *pcre_regexp; pcre_extra *pcre_extra_info; + kwset_t kws; unsigned fixed:1; unsigned ignore_case:1; unsigned word_regexp:1; @@ -98,6 +101,7 @@ struct grep_opt { int color; int max_depth; int funcname; + int funcbody; char color_context[COLOR_MAXLEN]; char color_filename[COLOR_MAXLEN]; char color_function[COLOR_MAXLEN]; @@ -110,6 +114,9 @@ struct grep_opt { unsigned post_context; unsigned last_shown; int show_hunk_mark; + int file_break; + int heading; + int use_threads; void *priv; void (*output)(struct grep_opt *opt, const void *data, size_t size); @@ -126,4 +133,12 @@ extern int grep_buffer(struct grep_opt *opt, const char *name, char *buf, unsign extern struct grep_opt *grep_opt_dup(const struct grep_opt *opt); extern int grep_threads_ok(const struct grep_opt *opt); +#ifndef NO_PTHREADS +/* + * Mutex used around access to the attributes machinery if + * opt->use_threads. Must be initialized/destroyed by callers! + */ +extern pthread_mutex_t grep_attr_mutex; +#endif + #endif