src/lib/str.h
branchnew-lib-errors
changeset 218 5229a5d098b2
parent 216 a10ba529ae39
equal deleted inserted replaced
217:7728d6ec3abf 218:5229a5d098b2
    18     ERR_STR_FMT_TAG,                ///< invalid parameter tag syntax
    18     ERR_STR_FMT_TAG,                ///< invalid parameter tag syntax
    19     ERR_STR_FMT_NAME_LEN,           ///< invalid parameter name length
    19     ERR_STR_FMT_NAME_LEN,           ///< invalid parameter name length
    20     ERR_STR_FMT_NAME,               ///< invalid/unknown parameter name
    20     ERR_STR_FMT_NAME,               ///< invalid/unknown parameter name
    21     ERR_STR_FMT_FLAGS_LEN,          ///< invalid paramter flags length
    21     ERR_STR_FMT_FLAGS_LEN,          ///< invalid paramter flags length
    22     ERR_STR_FMT_FLAG,               ///< invalid paramter flag
    22     ERR_STR_FMT_FLAG,               ///< invalid paramter flag
       
    23     ERR_STR_FMT_VALUE,              ///< parameter value
    23     ERR_STR_FMT_BUF_LEN,            ///< output buffer ran out
    24     ERR_STR_FMT_BUF_LEN,            ///< output buffer ran out
    24 };
    25 };
    25 
    26 
    26 /**
    27 /**
    27  * Error list
    28  * Error list
   102  *
   103  *
   103  * @param name the name of the paramter in the format string
   104  * @param name the name of the paramter in the format string
   104  * @param value returned pointer to param value
   105  * @param value returned pointer to param value
   105  * @param value_len returned param value length, or -1 for strlen
   106  * @param value_len returned param value length, or -1 for strlen
   106  * @param arg the context arg given to str_format
   107  * @param arg the context arg given to str_format
   107  * @return the parameter value, or NULL to error out
   108  * @param err returned error info
   108  */
   109  */
   109 typedef err_t (*str_format_cb) (const char *name, const char **value, ssize_t *value_len, void *arg);
   110 typedef err_t (*str_format_cb) (const char *name, const char **value, ssize_t *value_len, void *arg, error_t *err);
   110 
   111 
   111 /**
   112 /**
   112  * Maximum length of a parameter name
   113  * Maximum length of a parameter name
   113  */
   114  */
   114 #define STR_FORMAT_PARAM_MAX 32
   115 #define STR_FORMAT_PARAM_MAX 32