SymTable
static bool parse_archive(Buffer, const char **, Lst, SymTable *);
Arch_ParseArchive(const char **line, Lst nodes, SymTable *ctxt)
parse_archive(Buffer expand, const char **linePtr, Lst nodeLst, SymTable *ctxt)
extern bool Arch_ParseArchive(const char **, Lst, SymTable *);
SymTable localvars;
SymTable *ctxt, /* the context wherein to find variables */
Var_Substi(const char *str, const char *estr, SymTable *ctxt, bool undefErr)
SymTable *, bool, bool *);
static bool parse_base_variable_name(const char **, struct Name *, SymTable *);
SymTable_Init(SymTable *ctxt)
static SymTable sym_template;
parse_base_variable_name(const char **pstr, struct Name *name, SymTable *ctxt)
Var_ParseSkip(const char **pstr, SymTable *ctxt)
Var_ParseBuffer(Buffer buf, const char *str, SymTable *ctxt, bool err,
char ext, SymTable *ctxt, bool err, bool *freePtr)
SymTable *ctxt, /* The context for the variable */
extern bool Var_ParseBuffer(Buffer, const char *, SymTable *,
extern char *Var_Subst(const char *, SymTable *, bool);
extern char *Var_Substi(const char *, const char *, SymTable *, bool);
extern void SymTable_Init(SymTable *);
extern char *Var_Parse(const char *, SymTable *, bool, size_t *,
extern bool Var_ParseSkip(const char **, SymTable *);
VarModifiers_Apply(char *str, const struct Name *name, SymTable *ctxt,
static char *VarGetPattern(SymTable *, int, const char **, int, int,
static void *check_empty(const char **, SymTable *, bool, int);
static void *check_quote(const char **, SymTable *, bool, int);
static void *check_shcmd(const char **, SymTable *, bool, int);
static void *get_stringarg(const char **, SymTable *, bool, int);
static void *get_patternarg(const char **, SymTable *, bool, int);
static void *get_spatternarg(const char **, SymTable *, bool, int);
static void *common_get_patternarg(const char **, SymTable *, bool, int, bool);
static void *get_sysvpattern(const char **, SymTable *, bool, int);
void * (*getarg)(const char **, SymTable *, bool, int);
get_sysvpattern(const char **p, SymTable *ctxt UNUSED, bool err, int endc)
VarGetPattern(SymTable *ctxt, int err, const char **tstr, int delim1,
check_empty(const char **p, SymTable *ctxt UNUSED, bool b UNUSED, int endc)
check_quote(const char **p, SymTable *ctxt UNUSED, bool b UNUSED, int endc)
check_shcmd(const char **p, SymTable *ctxt UNUSED, bool b UNUSED, int endc)
get_stringarg(const char **p, SymTable *ctxt UNUSED, bool b UNUSED, int endc)
get_patternarg(const char **p, SymTable *ctxt, bool err, int endc)
get_spatternarg(const char **p, SymTable *ctxt, bool err, int endc)
common_get_patternarg(const char **p, SymTable *ctxt, bool err, int endc,
extern char *VarModifiers_Apply(char *, const struct Name *, SymTable *,
VarName_Get(const char *start, struct Name *name, SymTable *ctxt, bool err,
extern const char *VarName_Get(const char *, struct Name *, SymTable *,