Lines Matching full:spec
28 struct spec {
42 char from_mmap; /* this spec is from an mmap of the data */
68 struct spec *spec_arr;
81 static inline pcre_extra *get_pcre_extra(struct spec *spec)
83 if (spec->from_mmap)
84 return &spec->lsd;
86 return spec->sd;
122 struct spec *specs;
146 static inline void spec_hasMetaChars(struct spec *spec)
152 c = spec->regex_str;
153 len = strlen(spec->regex_str);
156 spec->hasMetaChars = 0;
157 spec->prefix_len = len;
173 spec->hasMetaChars = 1;
174 spec->prefix_len = c - spec->regex_str;
190 struct spec *spec_copy;
191 struct spec spec;
218 memcpy(&spec, &spec_copy[front], len);
222 memcpy(&spec_copy[back], &spec, len);
290 /* find the stem of a file spec, returns the index into stem_arr for a new
330 static inline int compile_regex(struct saved_data *data, struct spec *spec,
339 if (spec->regcomp)
343 reg_buf = spec->regex_str;
344 if (spec->stem_id >= 0)
345 reg_buf += stem_arr[spec->stem_id].len;
361 spec->regex = pcre_compile(anchored_regex, PCRE_DOTALL, &tmperrbuf,
364 if (!spec->regex) {
370 spec->sd = pcre_study(spec->regex, 0, &tmperrbuf);
371 if (!spec->sd && tmperrbuf) {
378 spec->regcomp = 1;
392 struct spec *spec_arr;
438 /* process and store the specification in spec. */