Annotation of qemu/error.h, revision 1.1

1.1     ! root        1: /*
        !             2:  * QEMU Error Objects
        !             3:  *
        !             4:  * Copyright IBM, Corp. 2011
        !             5:  *
        !             6:  * Authors:
        !             7:  *  Anthony Liguori   <[email protected]>
        !             8:  *
        !             9:  * This work is licensed under the terms of the GNU LGPL, version 2.  See
        !            10:  * the COPYING.LIB file in the top-level directory.
        !            11:  */
        !            12: #ifndef ERROR_H
        !            13: #define ERROR_H
        !            14: 
        !            15: #include "compiler.h"
        !            16: #include <stdbool.h>
        !            17: 
        !            18: /**
        !            19:  * A class representing internal errors within QEMU.  An error has a string
        !            20:  * typename and optionally a set of named string parameters.
        !            21:  */
        !            22: typedef struct Error Error;
        !            23: 
        !            24: /**
        !            25:  * Set an indirect pointer to an error given a printf-style format parameter.
        !            26:  * Currently, qerror.h defines these error formats.  This function is not
        !            27:  * meant to be used outside of QEMU.
        !            28:  */
        !            29: void error_set(Error **err, const char *fmt, ...) GCC_FMT_ATTR(2, 3);
        !            30: 
        !            31: /**
        !            32:  * Returns true if an indirect pointer to an error is pointing to a valid
        !            33:  * error object.
        !            34:  */
        !            35: bool error_is_set(Error **err);
        !            36: 
        !            37: /**
        !            38:  * Get a human readable representation of an error object.
        !            39:  */
        !            40: const char *error_get_pretty(Error *err);
        !            41: 
        !            42: /**
        !            43:  * Get an individual named error field.
        !            44:  */
        !            45: const char *error_get_field(Error *err, const char *field);
        !            46: 
        !            47: /**
        !            48:  * Get an individual named error field.
        !            49:  */
        !            50: void error_set_field(Error *err, const char *field, const char *value);
        !            51: 
        !            52: /**
        !            53:  * Propagate an error to an indirect pointer to an error.  This function will
        !            54:  * always transfer ownership of the error reference and handles the case where
        !            55:  * dst_err is NULL correctly.
        !            56:  */
        !            57: void error_propagate(Error **dst_err, Error *local_err);
        !            58: 
        !            59: /**
        !            60:  * Free an error object.
        !            61:  */
        !            62: void error_free(Error *err);
        !            63: 
        !            64: /**
        !            65:  * Determine if an error is of a speific type (based on the qerror format).
        !            66:  * Non-QEMU users should get the `class' field to identify the error type.
        !            67:  */
        !            68: bool error_is_type(Error *err, const char *fmt);
        !            69: 
        !            70: #endif

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.