Lines Matching refs:spec
46 struct spec {
57 char from_mmap; /* this spec is from an mmap of the data */
83 struct spec *spec_arr;
133 struct spec *specs;
157 static inline void spec_hasMetaChars(struct spec *spec)
163 c = spec->regex_str;
164 len = strlen(spec->regex_str);
167 spec->hasMetaChars = 0;
168 spec->prefix_len = len;
184 spec->hasMetaChars = 1;
185 spec->prefix_len = c - spec->regex_str;
201 struct spec *spec_copy;
202 struct spec spec;
229 memcpy(&spec, &spec_copy[front], len);
233 memcpy(&spec_copy[back], &spec, len);
302 /* find the stem of a file spec, returns the index into stem_arr for a new
347 static inline int compile_regex(struct spec *spec, const char **errbuf)
362 __atomic_load_n(&spec->regex_compiled, __ATOMIC_ACQUIRE);
366 regex_compiled = spec->regex_compiled;
372 __pthread_mutex_lock(&spec->regex_lock);
377 __atomic_load_n(&spec->regex_compiled, __ATOMIC_ACQUIRE);
381 regex_compiled = spec->regex_compiled;
384 __pthread_mutex_unlock(&spec->regex_lock);
388 reg_buf = spec->regex_str;
395 __pthread_mutex_unlock(&spec->regex_lock);
407 rc = regex_prepare_data(&spec->regex, anchored_regex, &error_data);
416 __pthread_mutex_unlock(&spec->regex_lock);
422 __atomic_store_n(&spec->regex_compiled, true, __ATOMIC_RELEASE);
425 spec->regex_compiled = true;
428 __pthread_mutex_unlock(&spec->regex_lock);
441 struct spec *spec_arr;
491 /* process and store the specification in spec. */