X-Git-Url: http://git.marmaro.de/?a=blobdiff_plain;f=h%2Ffmt_scan.h;h=8de6f23d3760e6a5725d7383b04bc0b5f9225970;hb=80bf776d0a4587c477bb8a248b9dbe1a31e74575;hp=fcc87f7d72a655370aa02c2205c3c80eae001ec9;hpb=f23521bc9435b472122f99752dadc8a28863ae2f;p=mmh diff --git a/h/fmt_scan.h b/h/fmt_scan.h index fcc87f7..8de6f23 100644 --- a/h/fmt_scan.h +++ b/h/fmt_scan.h @@ -111,7 +111,8 @@ char *new_fs (char *form, char *format, char *default_fs); * strings that you want to compile and operate on the * same message, this should be set to false. * - * Returns the number of components referenced by the format instructions. + * Returns the total number of components referenced by all format instructions + * since the last reset of the hash table. */ int fmt_compile (char *fstring, struct format **fmt, int reset); @@ -172,6 +173,25 @@ void fmt_free (struct format *fmt, int reset); struct comp *fmt_findcomp(char *component); /* + * Search for a component structure in the component hash table. + * + * Identical to fmd_findcomp(), but is case-INSENSITIVE. + */ + +struct comp *fmt_findcasecomp(char *component); + +/* + * Add a component entry to the component hash table + * + * component - The name of the component to add to the hash table. + * + * If the component is already in the hash table, this function will do + * nothing. Returns 1 if a component was added, 0 if it already existed. + */ + +int fmt_addcompentry(char *component); + +/* * Add a string to a component hash table entry. Arguments are: * * component - The name of the component to add text to. The component @@ -193,16 +213,18 @@ struct comp *fmt_findcomp(char *component); * * This function is designed to be called when you start processing a new * component. The function returns the integer value of the hash table - * bucket corresponding to this component. + * bucket corresponding to this component. If there was no entry found + * in the component hash table, this function will return -1. */ -int fmt_addcomp(char *component, char *text); +int fmt_addcomptext(char *component, char *text); /* * Append to an existing component. Arguments are: * * bucket - The hash table bucket corresponding to this component, - * as returned by fmt_addcomp(). + * as returned by fmt_addcomp(). If -1, this function will + * return with no actions performed. * component - The component to append text to. Like fmt_addcomp, the * component is searched case-INSENSITIVELY. * text - The text to append to the component. No special processing