|
remake
4.3+dbg-1.5
|
Go to the source code of this file.
Macros | |
| #define | recursively_expand(v) recursively_expand_for_file (v, NULL) |
Functions | |
| char * | allocated_variable_expand_for_file (const char *psz_line, file_t *p_file) |
| char * | variable_expand_set (char *psz_line, variable_set_list_t *p_file_set) |
| #define recursively_expand | ( | v | ) | recursively_expand_for_file (v, NULL) |
Expand an argument for an expansion function. The text starting at STR and ending at END is variable-expanded into a null-terminated string that is returned as the value. This is done without clobbering `variable_buffer' or the current variable-expansion that is in progress.
Install a new variable_buffer context, returning the current one for safe-keeping.
Restore a previously-saved variable_buffer setting (free the current one).
| char* allocated_variable_expand_for_file | ( | const char * | psz_line, |
| file_t * | p_file | ||
| ) |
Like variable_expand_for_file, but the returned string is malloc'd. This function is called a lot. It wants to be efficient.
| char* variable_expand_set | ( | char * | psz_line, |
| variable_set_list_t * | p_file_set | ||
| ) |
Recursively expand V. The returned string is malloc'd.
Subroutine of variable_expand and friends: The text to add is LENGTH chars starting at STRING to the variable_buffer. The text is added to the buffer at PTR, and the updated pointer into the buffer is returned as the value. Thus, the value returned by each call to variable_buffer_output should be the first argument to the following call. Expand PSZ_LINE. Expansion uses P_FILE_SET if it is not NULL.
1.8.13