Tomato 1.24
[tomato.git] / release / src / router / busybox / shell / match.h
blob3fc4de340c7f53996bad658d6d10b97f6a0ff222
1 /* match.h - interface to shell ##/%% matching code */
3 PUSH_AND_SET_FUNCTION_VISIBILITY_TO_HIDDEN
5 typedef char *(*scan_t)(char *string, char *match, bool zero);
7 char *scanleft(char *string, char *match, bool zero);
8 char *scanright(char *string, char *match, bool zero);
10 static inline scan_t pick_scan(char op1, char op2, bool *zero)
12 /* # - scanleft
13 * ## - scanright
14 * % - scanright
15 * %% - scanleft
17 if (op1 == '#') {
18 *zero = true;
19 return op1 == op2 ? scanright : scanleft;
20 } else {
21 *zero = false;
22 return op1 == op2 ? scanleft : scanright;
26 POP_SAVED_FUNCTION_VISIBILITY