| 1765 |
|
|
| 1766 |
typedef struct recursion_info { |
typedef struct recursion_info { |
| 1767 |
struct recursion_info *prevrec; /* Previous recursion record (or NULL) */ |
struct recursion_info *prevrec; /* Previous recursion record (or NULL) */ |
| 1768 |
int group_num; /* Number of group that was called */ |
int group_num; /* Number of group that was called */ |
| 1769 |
const uschar *after_call; /* "Return value": points after the call in the expr */ |
int *offset_save; /* Pointer to start of saved offsets */ |
| 1770 |
int *offset_save; /* Pointer to start of saved offsets */ |
int saved_max; /* Number of saved offsets */ |
|
int saved_max; /* Number of saved offsets */ |
|
|
int save_offset_top; /* Current value of offset_top */ |
|
| 1771 |
} recursion_info; |
} recursion_info; |
| 1772 |
|
|
| 1773 |
/* Structure for building a chain of data for holding the values of the subject |
/* Structure for building a chain of data for holding the values of the subject |
| 1825 |
recursion_info *recursive; /* Linked list of recursion data */ |
recursion_info *recursive; /* Linked list of recursion data */ |
| 1826 |
void *callout_data; /* To pass back to callouts */ |
void *callout_data; /* To pass back to callouts */ |
| 1827 |
const uschar *mark; /* Mark pointer to pass back */ |
const uschar *mark; /* Mark pointer to pass back */ |
| 1828 |
|
const uschar *once_target; /* Where to back up to for atomic groups */ |
| 1829 |
} match_data; |
} match_data; |
| 1830 |
|
|
| 1831 |
/* A similar structure is used for the same purpose by the DFA matching |
/* A similar structure is used for the same purpose by the DFA matching |