API Reference

Last updated: May 25, 2017

Functions

fmt_register_formatter

Register a new formatter.

extern int fmt_register_formatter(fmt_formatter formatter, const char * id);

fmt_stream_buffer

Initialize stream channeled to a string buffer.

extern void fmt_stream_buffer(struct fmt_stream * stream, char * buffer, size_t bytes);

fmt_stream_file

Initialize stream channeled to a file.

extern void fmt_stream_file(struct fmt_stream * stream, FILE * file);

fmt_print

Print formatted.

extern int fmt_print(struct fmt_stream * out, const char * format, ...);

fmt_print_builtin

Print formatted (builtin parameters only).

extern int fmt_print_builtin(struct fmt_stream * out, const char * format, ...);

fmt_vprint

Print formatted variable list of arguments.

extern int fmt_vprint(struct fmt_stream * out, const char * format, va_list * arg);

Types

fmt_stream

Output stream.

struct fmt_stream{

	FILE *  file;
	char *  buffer;
	size_t  bytes;
	int     written;
};

fmt_formatter

Custom formatter.

typedef int (*fmt_formatter)(struct fmt_stream * out, const char * id, const char * options, va_list * arg);

Macros

FMT_ERROR

# define FMT_ERROR                                      ( (int)-1 )