added qse_xli_definepair() and qse_xli_undefinepair().

renamed some xli functions.
updated cmd/httpd to utilize qse_xli_definepair()
This commit is contained in:
2013-07-12 15:37:29 +00:00
parent 67c47e906d
commit 2b58fc6fe3
8 changed files with 515 additions and 296 deletions

View File

@ -57,18 +57,6 @@ enum qse_bool_t
};
typedef enum qse_bool_t qse_bool_t;
/**
* The qse_tri_t type defines a tri-state type that can represent #QSE_ALIVE,
* #QSE_ZOMBIE, and #QSE_DEAD.
*/
enum qse_tri_t
{
QSE_ALIVE = 1,
QSE_ZOMBIE = 0,
QSE_DEAD = -1
};
typedef enum qse_tri_t qse_tri_t;
/** @typedef qse_int_t
* The qse_int_t type defines a signed integer type as large as a pointer.
*/

View File

@ -50,8 +50,10 @@ enum qse_xli_errnum_t
QSE_XLI_ELXCHR, /**< invalid character '${0} */
QSE_XLI_EXKWNR, /**< @word '${0}' not recognized */
QSE_XLI_EXKWEM, /**< @ not followed by a valid word */
QSE_XLI_EILKEY, /**< illegal key '${0}' */
QSE_XLI_EUDKEY, /**< undefined key '${0}' */
QSE_XLI_ENOALI, /**< no alias for '${0}' */
QSE_XLI_EILVAL, /**< illegal value for '${0}' */
QSE_XLI_ENOVAL, /**< no value for '${0}' */
QSE_XLI_ESTRSEG /**< too many string segments for '${0}' */
};
typedef enum qse_xli_errnum_t qse_xli_errnum_t;
@ -295,12 +297,12 @@ typedef qse_ssize_t (*qse_xli_io_impl_t) (
enum qse_xli_scm_flag_t
{
QSE_XLI_SCM_REQUIRED = (1 << 0),
QSE_XLI_SCM_VAL_NIL = (1 << 1),
QSE_XLI_SCM_VAL_STR = (1 << 2),
QSE_XLI_SCM_VAL_LIST = (1 << 3),
QSE_XLI_SCM_KEY_NODUP = (1 << 4),
QSE_XLI_SCM_KEY_ALIAS = (1 << 5)
/*QSE_XLI_SCM_REQUIRED = (1 << 0), TODO: support this. */
QSE_XLI_SCM_VALNIL = (1 << 1),
QSE_XLI_SCM_VALSTR = (1 << 2),
QSE_XLI_SCM_VALLIST = (1 << 3),
QSE_XLI_SCM_KEYNODUP = (1 << 4),
QSE_XLI_SCM_KEYALIAS = (1 << 5)
};
struct qse_xli_scm_t
@ -542,13 +544,13 @@ QSE_EXPORT qse_xli_eof_t* qse_xli_inserteof (
qse_xli_atom_t* peer
);
QSE_EXPORT qse_xli_pair_t* qse_xli_findpairbyname (
QSE_EXPORT qse_xli_pair_t* qse_xli_findpair (
qse_xli_t* xli,
const qse_xli_list_t* list,
const qse_char_t* dotted_name
);
QSE_EXPORT qse_size_t qse_xli_getnumpairsbyname (
QSE_EXPORT qse_size_t qse_xli_getnumpairs (
qse_xli_t* xli,
const qse_xli_list_t* list,
const qse_char_t* dotted_name
@ -586,19 +588,25 @@ QSE_EXPORT void qse_xli_clearroot (
qse_xli_t* xli
);
QSE_EXPORT void qse_xli_clearschema (
qse_xli_t* xli
);
QSE_EXPORT void qse_xli_clear (
qse_xli_t* xli
);
QSE_EXPORT int qse_xli_setschema (
QSE_EXPORT int qse_xli_definepair (
qse_xli_t* xli,
const qse_char_t* dotted_name,
const qse_char_t* pair_name,
const qse_xli_scm_t* scm
);
QSE_EXPORT int qse_xli_undefinepair (
qse_xli_t* xli,
const qse_char_t* pair_name
);
QSE_EXPORT void qse_xli_undefinepairs (
qse_xli_t* xli
);
QSE_EXPORT int qse_xli_read (
qse_xli_t* xli,