GRU - Generic Reusable Utilities
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros
gru_status.h
Go to the documentation of this file.
1 
16 #ifndef GRU_STATUS_H
17 #define GRU_STATUS_H
18 
19 #include <assert.h>
20 #include <errno.h>
21 #include <stdarg.h>
22 #include <stdbool.h>
23 #include <stdint.h>
24 #include <stdio.h>
25 #include <stdlib.h>
26 #include <string.h>
27 
28 #include "common/gru_portable.h"
29 
30 #ifdef __cplusplus
31 extern "C" {
32 #endif
33 
34 #define GRU_MAX_ERROR_MESSAGE 1024
35 
36 /*
37  * Valid status codes
38  */
39 typedef enum gru_status_code_t_ {
43 
47 typedef struct gru_status_t_ {
48  char *message;
50 } gru_status_t;
51 
57 
66  gru_status_t *status, gru_status_code_t code, const char *message, ...);
67 
75  gru_status_t *status, gru_status_code_t code, int errnum);
76 
82 
88 
94 gru_export bool gru_status_error(const gru_status_t *status);
95 
101 gru_export bool gru_status_success(const gru_status_t *status);
102 
103 #ifdef __cplusplus
104 }
105 #endif
106 
107 #endif /* GRU_STATUS_H */
void gru_status_set_success(gru_status_t *status)
Sets the status to success.
Definition: gru_status.c:53
bool gru_status_success(const gru_status_t *status)
Checks for success status.
Definition: gru_status.c:87
char * message
Definition: gru_status.h:48
void gru_status_set(gru_status_t *status, gru_status_code_t code, const char *message,...)
Sets the status.
Definition: gru_status.c:26
#define gru_export
Definition: gru_portable.h:19
gru_export gru_status_t gru_status_new()
Copyright 2016 Otavio Rodolfo Piske.
Definition: gru_status.c:18
gru_status_code_t_
Definition: gru_status.h:39
void gru_status_reset(gru_status_t *status)
Resets the status.
Definition: gru_status.c:47
gru_status_code_t code
Definition: gru_status.h:49
Status type.
Definition: gru_status.h:47
Definition: gru_status.h:40
enum gru_status_code_t_ gru_status_code_t
bool gru_status_error(const gru_status_t *status)
Checks for error status.
Definition: gru_status.c:83
struct gru_status_t_ gru_status_t
Status type.
void gru_status_strerror(gru_status_t *status, gru_status_code_t code, int errnum)
Sets the status from the errno.
Definition: gru_status.c:57
Definition: gru_status.h:41