einfo.h

Go to the documentation of this file.
00001 
00009 #ifndef __EINFO_H__
00010 #define __EINFO_H__
00011 
00012 #define EINFO_PRINTF
00013 #define EINFO_XPRINTF
00014 #define EEND_PRINTF
00015 
00016 #ifdef __GNUC__
00017 #  undef EINFO_PRINTF
00018 #  undef EINFO_XPRINTF
00019 #  undef EEND_PRINTF
00020 #  define EINFO_PRINTF  __attribute__ ((__format__ (__printf__, 1, 2)))
00021 #  define EINFO_XPRINTF  __attribute__ ((__noreturn__, __format__ (__printf__, 1, 2)))
00022 #  define EEND_PRINTF  __attribute__ ((__format__ (__printf__, 2, 3)))
00023 #endif
00024 
00025 #include <sys/types.h>
00026 #include <stdbool.h>
00027 
00029 typedef enum
00030 {
00031         ecolor_good,
00032         ecolor_warn,
00033         ecolor_bad,
00034         ecolor_hilite,
00035         ecolor_bracket,
00036         ecolor_normal
00037 } einfo_color_t;
00038 
00040 const char *ecolor (einfo_color_t);
00041 
00043 void elog (int level, const char *fmt, ...) EEND_PRINTF;
00044 
00061 int einfon (const char *fmt, ...) EINFO_PRINTF;
00062 int ewarnn (const char *fmt, ...) EINFO_PRINTF;
00063 int eerrorn (const char *fmt, ...) EINFO_PRINTF;
00064 int einfo (const char *fmt, ...) EINFO_PRINTF;
00065 int ewarn (const char *fmt, ...) EINFO_PRINTF;
00066 void ewarnx (const char *fmt, ...) EINFO_XPRINTF;
00067 int eerror (const char *fmt, ...) EINFO_PRINTF;
00068 void eerrorx (const char *fmt, ...) EINFO_XPRINTF;
00069 
00070 int einfovn (const char *fmt, ...) EINFO_PRINTF;
00071 int ewarnvn (const char *fmt, ...) EINFO_PRINTF;
00072 int ebeginvn (const char *fmt, ...) EINFO_PRINTF;
00073 int eendvn (int retval, const char *fmt, ...) EEND_PRINTF;
00074 int ewendvn (int retval, const char *fmt, ...) EEND_PRINTF;
00075 int einfov (const char *fmt, ...) EINFO_PRINTF;
00076 int ewarnv (const char *fmt, ...) EINFO_PRINTF;
00084 int ebeginv (const char *fmt, ...) EINFO_PRINTF;
00085 int ebegin (const char *fmt, ...) EINFO_PRINTF;
00097 int eend (int retval, const char *fmt, ...) EEND_PRINTF;
00098 int ewend (int retval, const char *fmt, ...) EEND_PRINTF;
00099 void ebracket (int col, einfo_color_t color, const char *msg);
00100 
00101 int eendv (int retval, const char *fmt, ...) EEND_PRINTF;
00102 int ewendv (int retval, const char *fmt, ...) EEND_PRINTF;
00110 void eindent (void);
00111 void eoutdent (void);
00112 void eindentv (void);
00113 void eoutdentv (void);
00114 
00116 void eprefix (const char *prefix);
00117 
00118 #endif

Generated on Tue Sep 25 16:24:20 2007 for rc by  doxygen 1.5.3