logger.h 455 B

1234567891011121314151617181920212223242526272829303132
  1. #ifndef LOGGER_H
  2. #define LOGGER_H
  3. /* #include <stddef.h> */
  4. #ifdef TOOLBOX_TYPEDEF
  5. typedef struct str str_st;
  6. #endif
  7. enum logger_level {
  8. LL_TRACE,
  9. LL_DEBUG,
  10. LL_INFO,
  11. LL_WARN,
  12. LL_ERROR,
  13. LL_FATAL
  14. };
  15. typedef void (*_print_like)(const char *, ...);
  16. struct logger {
  17. _print_like trace;
  18. _print_like debug;
  19. _print_like info;
  20. _print_like warn;
  21. _print_like error;
  22. _print_like fatal;
  23. };
  24. struct logger* logger_create(enum logger_level lvl);
  25. #endif