/* * Include a symbol table from another key-file, creating it in a table named * according to the parameter. */ static void ExecSource(const char *param) { int save_meta = meta_ch; int save_eqls = eqls_ch; flt_make_symtab(param); flt_read_keywords(MY_NAME); /* provide default values for this table */ flt_read_keywords(param); set_symbol_table(flt_name()); meta_ch = save_meta; eqls_ch = save_eqls; }
static void ExecTable(char *param) { char *t; VERBOSE(1, ("ExecTable(%s)\n", param)); if (FltOptions('c')) { t = skip_ident(param); if (*skip_blanks(t) == '\0') { int save = *t; *t = 0; if (*param) { flt_make_symtab(param); flt_read_keywords(MY_NAME); } else { set_symbol_table(default_table); } *t = (char) save; } } t = skip_ident(param); flt_puts(param, (int) (t - param), Literal_attr); if (*skip_blanks(t) == '\0') { flt_puts(t, (int) strlen(t), ""); } else { flt_error("unexpected tokens"); flt_puts(t, (int) strlen(t), Error_attr); } }
/* * Include a symbol table from another key-file. */ static void ExecSource(char *param) { int save_meta = meta_ch; int save_eqls = eqls_ch; flt_make_symtab(param); flt_read_keywords(MY_NAME); flt_read_keywords(param); set_symbol_table(flt_name()); meta_ch = save_meta; eqls_ch = save_eqls; flt_puts(param, (int) strlen(param), Literal_attr); }
/* * Useful for diverting to another symbol table in the same key-file, for * performance. */ static void ExecTable(const char *param) { if (*param) { flt_make_symtab(param); flt_read_keywords(MY_NAME); /* provide default values for this table */ } else { set_symbol_table(default_table); } }
/* * Include a symbol table from another key-file, merging it into the current * table. */ static void ExecMerge(const char *param) { int save_meta = meta_ch; int save_eqls = eqls_ch; flt_read_keywords(param); meta_ch = save_meta; eqls_ch = save_eqls; }
static void ExecInclude(char *param) { flt_read_keywords(param); flt_puts(param, (int) strlen(param), Literal_attr); }