summaryrefslogtreecommitdiff
path: root/interpolate.h
blob: 16a26b998699a8a5a5b3472f4b57a574a292beef (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
/*
 * Copyright 2006 Jon Loeliger
 */

#ifndef INTERPOLATE_H
#define INTERPOLATE_H

/*
 * Convert a NUL-terminated string in buffer orig,
 * performing substitutions on %-named sub-strings from
 * the interpretation table.
 */

struct interp {
	const char *name;
	char *value;
};

extern void interp_set_entry(struct interp *table, int slot, const char *value);
extern void interp_clear_table(struct interp *table, int ninterps);

extern int interpolate(char *result, int reslen,
		       const char *orig,
		       const struct interp *interps, int ninterps);

#endif /* INTERPOLATE_H */