diff options
author | Stef Walter <stef@thewalter.net> | 2003-09-20 07:12:49 +0000 |
---|---|---|
committer | Stef Walter <stef@thewalter.net> | 2003-09-20 07:12:49 +0000 |
commit | b49d8ebefe9b10c53a6a09ad564e22111b7b25c6 (patch) | |
tree | 1d5dd4abc38170a7bc106dabbc59b915017222f0 /lib/rep.h | |
parent | 1cda9ebbd62916c7c2136722597a86c583e1ecf6 (diff) |
Initial Import
Diffstat (limited to 'lib/rep.h')
-rw-r--r-- | lib/rep.h | 107 |
1 files changed, 107 insertions, 0 deletions
diff --git a/lib/rep.h b/lib/rep.h new file mode 100644 index 0000000..673b85d --- /dev/null +++ b/lib/rep.h @@ -0,0 +1,107 @@ +/* + * AUTHOR + * N. Nielsen + * + * LICENSE + * This software is in the public domain. + * + * The software is provided "as is", without warranty of any kind, + * express or implied, including but not limited to the warranties + * of merchantability, fitness for a particular purpose, and + * noninfringement. In no event shall the author(s) be liable for any + * claim, damages, or other liability, whether in an action of + * contract, tort, or otherwise, arising from, out of, or in connection + * with the software or the use or other dealings in the software. + * + * SUPPORT + * Send bug reports to: <nielsen@memberwebs.com> + */ + +#ifndef __REP_H__ +#define __REP_H__ + +#ifdef __cplusplus +extern "C" { +#endif + +#include "rlib.h" + +/* + * This file defines a higher level interface into the rlib library. + * See "rlib.h" for the low level interface + */ + + +/* + * r_context + * A context with all necessary information for replaces etc... + */ +typedef struct _r_context +{ + r_stream stream; /* The rlib stream */ + r_script script; /* The rlib script */ + + r_uint block; /* The buffer size used for replaces */ + r_uint options; /* Options to be passed to rlibInit */ +} +r_context; + + +/* + * repLoad + * Loads a rep script from a file. Call this before repInit. + * This will load various options from the file in addition + * to the raw script (see r_context). + * + * ctx: The rep context (which should be zero'd) + * script: A rep script file open for reading. + */ +int repLoad(r_context* ctx, FILE* script); + + +/* + * repInit + * Called to initialize the rlib with your initialization options + * etc... + * + * ctx: The rep context to initialize + */ +int repInit(r_context* ctx); + + +/* + * repFiles + * Runs a rep script on a file, writing output to an output + * file. + * + * ctx: The rep context. + * fileIn: The input file opened for reading. + * fileOut: The output file opened for writing. + */ +int repFiles(r_context* ctx, FILE* fileIn, FILE* fileOut); + + +/* + * repFile + * Runs a rep script on a file, sending output to the specifed + * callback function. + * + * ctx: The rep context. + * fileIn: The input file opened for reading. + */ +int repFile(r_context* ctx, FILE* fileIn); + + +/* + * repFree + * Free a rep context. + * + * ctx: The rep context. + */ +void repFree(r_context* ctx); + +#ifdef __cplusplus +} +#endif + +#endif /* __REP_H__ */ |