## GOErrorInfo

GOErrorInfo

## Synopsis

                        GOErrorInfo;
    enum                GOSeverity;
    #define             GO_INIT_RET_ERROR_INFO              (ret_error)
    void                go_error_info_add_details           (GOErrorInfo *error,
                                                             GOErrorInfo *details);
    void                go_error_info_add_details_list      (GOErrorInfo *error,
                                                             GSList *details);
    void                go_error_info_free                  (GOErrorInfo *error);
    GOErrorInfo *       go_error_info_new_from_errno        (void);
    GOErrorInfo *       go_error_info_new_from_error_list   (GSList *errors);
    GOErrorInfo *       go_error_info_new_printf            (char const *msg_format,
                                                             ...);
    GOErrorInfo *       go_error_info_new_str               (char const *msg);
    GOErrorInfo *       go_error_info_new_str_with_details  (char const *msg,
                                                             GOErrorInfo *details);
    GOErrorInfo *       go_error_info_new_str_with_details_list
                                                            (char const *msg,
                                                             GSList *details);
    GOErrorInfo *       go_error_info_new_vprintf           (GOSeverity severity,
                                                             char const *msg_format,
                                                             va_list args);
    GSList *            go_error_info_peek_details          (GOErrorInfo *error);
    char const*         go_error_info_peek_message          (GOErrorInfo *error);
    GOSeverity          go_error_info_peek_severity         (GOErrorInfo *error);
    void                go_error_info_print                 (GOErrorInfo *error);

## Object Hierarchy

      GBoxed
       +----GOErrorInfo

## Description

## Details

### GOErrorInfo

    typedef struct _GOErrorInfo GOErrorInfo;

### enum GOSeverity

    typedef enum {
    	GO_WARNING = 1,
    	GO_ERROR
    } GOSeverity;

`GO_WARNING` | warning.
`GO_ERROR` | error.

### GO_INIT_RET_ERROR_INFO()

    #define             GO_INIT_RET_ERROR_INFO(ret_error)

### go_error_info_add_details ()

    void                go_error_info_add_details           (GOErrorInfo *error,
                                                             GOErrorInfo *details);

Adds an existing GOErrorInfo instance to `error`.

`error` : | GOErrorInfo
`details` : | GOErrorInfo to add

### go_error_info_add_details_list ()

    void                go_error_info_add_details_list      (GOErrorInfo *error,
                                                             GSList *details);

Adds a list of existing GOErrorInfo instances to `error`.

`error` : | GOErrorInfo
`details` : | a list of GOErrorInfo to add. [element-type GOErrorInfo]

### go_error_info_free ()

    void                go_error_info_free                  (GOErrorInfo *error);

### go_error_info_new_from_errno ()

    GOErrorInfo *       go_error_info_new_from_errno        (void);

### go_error_info_new_from_error_list ()

    GOErrorInfo *       go_error_info_new_from_error_list   (GSList *errors);

Creates a new GOErrorInfo from a list of existing GOErrorInfo instances to add to the message.

`errors` : | a list of GOErrorInfo to add. [element-type GOErrorInfo]
Returns : | the newly created GOErrorInfo. [transfer full]

### go_error_info_new_printf ()

    GOErrorInfo *       go_error_info_new_printf            (char const *msg_format,
                                                             ...);

### go_error_info_new_str ()

    GOErrorInfo *       go_error_info_new_str               (char const *msg);

### go_error_info_new_str_with_details ()

    GOErrorInfo *       go_error_info_new_str_with_details  (char const *msg,
                                                             GOErrorInfo *details);

Creates a new GOErrorInfo from `message` and an existing GOErrorInfo instance to add to the message.

`msg` : | error message
`details` : | GOErrorInfo to add
Returns : | the newly created GOErrorInfo. [transfer full]

### go_error_info_new_str_with_details_list ()

    GOErrorInfo *       go_error_info_new_str_with_details_list
                                                            (char const *msg,
                                                             GSList *details);

Creates a new GOErrorInfo from `message` and a list of existing GOErrorInfo instances to add to the message.

`msg` : | error message
`details` : | a list of GOErrorInfo to add. [element-type GOErrorInfo]
Returns : | the newly created GOErrorInfo. [transfer full]

### go_error_info_new_vprintf ()

    GOErrorInfo *       go_error_info_new_vprintf           (GOSeverity severity,
                                                             char const *msg_format,
                                                             va_list args);

### go_error_info_peek_details ()

    GSList *            go_error_info_peek_details          (GOErrorInfo *error);

`error` : | error message
Returns : | the newly details in `error`. [element-type GOErrorInfo][transfer full]

### go_error_info_peek_message ()

    char const*         go_error_info_peek_message          (GOErrorInfo *error);

### go_error_info_peek_severity ()

    GOSeverity          go_error_info_peek_severity         (GOErrorInfo *error);

### go_error_info_print ()

    void                go_error_info_print                 (GOErrorInfo *error);