token read in diff state
[build-config.git] / src / config / lxrgmr-code / token / string.var
bloba252b104be5dafe482b2673cab4925c90cf510da
2 /*
3  * quoted-str:
4  * it's a general string mixed with varous kinds of quote or pair-chars.
5  * eg: "", ``, $(), those pair-chars are normally used in shell-script.
6  */
9 int on_dollar_proc (int evt, int token, register const char *str, register unsigned int len, SRC_FILE_DESC *psrcfile);
10 int on_dquote (int evt, int token, register const char *str, register unsigned int len, SRC_FILE_DESC *psrcfile);
11 int on_quote (int evt, int token, register const char *str, register unsigned int len, SRC_FILE_DESC *psrcfile);
12 int on_bquote (int evt, int token, register const char *str, register unsigned int len, SRC_FILE_DESC *psrcfile);
13 int on_bracket1 (int evt, int token, register const char *str, register unsigned int len, SRC_FILE_DESC *psrcfile);
14 int on_bracket2 (int evt, int token, register const char *str, register unsigned int len, SRC_FILE_DESC *psrcfile);
15 int on_bracket3 (int evt, int token, register const char *str, register unsigned int len, SRC_FILE_DESC *psrcfile);
17 /**
18  ** prefix char.
19  **/
20 const struct token_id str_pfx_char_array[] = {
21         { .chars={"$"},                         "T_DOLLAR",                     STATE_CODE,                     T_DOLLAR,               TF_PFX,                 &on_dollar_proc },
22         
23         { {NULL},                                       NULL,                           0,                                      0,                              0,                              NULL },
25 //      { .chars={"@"},                         "T_AT",                         STATE_CODE,                     T_AT,                   TF_PFX,                 &on_at_proc },
26 //      { .chars={"!"},                         "T_EXCLAM",                     STATE_CODE,                     T_EXCLAM,               TF_PFX,                 &on_exclamation_proc },
29  * eg: (), it is used in sh-script in those kinds.
30  * @ $(), sub-script. it seperate $ and (). $ is a pfx char, it set 'dollar' flags,
31  * @ (), sub-script. if '(' is detected, it check 'dollar' flags to entering $() sub-script state.
32  *   if no 'dollar' flags, it checks if it is first token in curr statement.
33  * @ func(), function parameter.
34  *    
35  */
36 const struct token_id str_paired_char_array[] = {
37         { {"``"},                               "T_BACK_QUOTE",                 STATE_CODE,                     T_BACK_QUOTE,   TF_OPCHAR,              on_bquote },
39         { {NULL},                               NULL,                                   0,                                      0,                              0,                              NULL },