Files

26 lines
1.0 KiB
C

/* Takes as input a string of C code [str] of length
* [len] and returns the same C code but annotated
* with HTML tags. The returned string's length is
* returned through the [output_len] optional output
* parameter. The returned pointer must be freed
* using [free]. The class names of each tag are
* prefixed with the value provided through [prefix].
* If [prefix] is NULL, then no prefix is used.
*
* If the function fails, NULL is returned and a
* human-readable description of the error is
* returned through the output parameter [error].
* The returned error string doesn't need to be
* deallocated. If you're not interested in the
* error description, you can just provide NULL.
*
* The [str] string isn't assumed to be zero-terminated
* and if it's NULL, an empty string is assumed.
*
* If [len] is negative, then [str] is assumed
* to be zero-terminated and it's length is calculated
* using [strlen].
*/
char *c2html(const char *str, long len, const char *prefix,
long *output_len, const char **error);