pattern_t
pattern_t *get_compiled_pattern(void);
long get_matching_node_addr(pattern_t *, int);
int search_and_replace(pattern_t *, int, int);
int substitute_matching_text(pattern_t *, line_t *, int, int);
pattern_t *pat;
static pattern_t *pat = NULL;
pattern_t *tpat;
get_matching_node_addr(pattern_t *pat, int dir)
pattern_t *
static pattern_t *expr = NULL;
else if ((expr = (pattern_t *) malloc(sizeof(pattern_t))) == NULL) {
search_and_replace(pattern_t *pat, int gflag, int kth)
substitute_matching_text(pattern_t *pat, line_t *lp, int gflag, int kth)
const pattern_t* pat;
void get_chunk_range(const pattern_t* pat, int chunk, uint32_t* begin, uint32_t* end){
const pattern_t trivial_pattern = {
const pattern_t pat0 = {
const pattern_t pat1 = {
const pattern_t pat2 = {
const pattern_t pat3 = {
const pattern_t pat4 = {
const pattern_t pat5 = {
const pattern_t pat6 = {
const pattern_t pat7 = {
const pattern_t pat8 = {
const pattern_t pat9 = {
const pattern_t pat10 = {
const pattern_t pat11 = {
const pattern_t pat12 = {
const pattern_t pat13 = {
const pattern_t pat14 = {
const pattern_t pat15 = {
const pattern_t pat16 = {
const pattern_t pat17 = {
const pattern_t pat18 = {
const pattern_t pat19 = {
const pattern_t pat20 = {
const pattern_t pat21 = {
const pattern_t pat22 = {
const pattern_t pat23 = {
const pattern_t pat24 = {
const pattern_t pat25 = {
const pattern_t pat26 = {
const pattern_t pat27 = {
const pattern_t pat28 = {
const pattern_t pat29 = {
const pattern_t pat30 = {
const pattern_t pat31 = {
const pattern_t* patterns[] = {&trivial_pattern,
verify_file(int fd, const pattern_t* p_pat){
write_chunk(const pattern_t* p_pat, int chunk_idx, int thread_num)
const pattern_t *pat_p = patterns[pat];
void get_chunk_range(const pattern_t* pat, int chunk, uint32_t* begin, uint32_t* end){
const pattern_t trivial_pattern = {
const pattern_t pat0 = {
const pattern_t pat1 = {
const pattern_t pat2 = {
const pattern_t pat3 = {
const pattern_t pat4 = {
const pattern_t pat5 = {
const pattern_t pat6 = {
const pattern_t pat7 = {
const pattern_t pat8 = {
const pattern_t pat9 = {
const pattern_t pat10 = {
const pattern_t pat11 = {
const pattern_t pat12 = {
const pattern_t pat13 = {
const pattern_t pat14 = {
const pattern_t pat15 = {
const pattern_t pat16 = {
const pattern_t pat17 = {
const pattern_t pat18 = {
const pattern_t pat19 = {
const pattern_t pat20 = {
const pattern_t pat21 = {
const pattern_t pat22 = {
const pattern_t pat23 = {
const pattern_t pat24 = {
const pattern_t pat25 = {
const pattern_t pat26 = {
const pattern_t pat27 = {
const pattern_t pat28 = {
const pattern_t pat29 = {
const pattern_t pat30 = {
const pattern_t pat31 = {
const pattern_t* patterns[] = {&trivial_pattern,
verify_file(int fd, const pattern_t* p_pat){
write_chunk(pattern_t* p_pat, int chunk_idx, int is_follower)
pattern_t* p_pat = (pattern_t*)data;
pattern_t* p_pat = (pattern_t*)data;
assert(NUM_CHUNKS <= 8 * sizeof(((pattern_t*) 0)->follower_chunks));