error.h 906 B

1234567891011121314151617181920212223242526272829303132
  1. /** @file error.h
  2. * @brief Public interface to work with advanced error class.
  3. */
  4. #ifndef _faux_error_h
  5. #define _faux_error_h
  6. #include <stdio.h>
  7. #include <faux/faux.h>
  8. typedef struct faux_error_s faux_error_t;
  9. typedef faux_list_node_t faux_error_node_t;
  10. C_DECL_BEGIN
  11. faux_error_t *faux_error_new(void);
  12. void faux_error_free(faux_error_t *error);
  13. void faux_error_reset(faux_error_t *error);
  14. bool_t faux_error(const faux_error_t *error);
  15. bool_t faux_error_add(faux_error_t *error, const char *str);
  16. faux_error_node_t *faux_error_iter(const faux_error_t *error);
  17. faux_error_node_t *faux_error_iterr(const faux_error_t *error);
  18. const char *faux_error_each(faux_error_node_t **iter);
  19. const char *faux_error_eachr(faux_error_node_t **iter);
  20. bool_t faux_error_fprint(const faux_error_t *error, FILE *handle);
  21. bool_t faux_error_print(const faux_error_t *error);
  22. C_DECL_END
  23. #endif /* _faux_error_h */